Skip to content
  1. Mar 27, 2009
  2. Mar 25, 2009
  3. Mar 17, 2009
    • Douglas Gregor's avatar
      Refactor instantiation of declarations within a template into a much · d7e7a517
      Douglas Gregor authored
      cleaner visitor framework.
      
      Added a visitor for declarations, which is quite similar to the
      visitor for statatements.
      
      llvm-svn: 67104
      d7e7a517
    • Douglas Gregor's avatar
      Build system changes to use TableGen to generate the various · 23d75bb3
      Douglas Gregor authored
      diagnostics. This builds on the patch that Sebastian committed and
      then revert. Major differences are:
      
        - We don't remove or use the current ".def" files. Instead, for now,
          we just make sure that we're building the ".inc" files.
        - Fixed CMake makefiles to run TableGen and build the ".inc" files
          when needed. Tested with both the Xcode and Makefile generators
          provided by CMake, so it should be solid.
        - Fixed normal makefiles to handle out-of-source builds that involve
          the ".inc" files.
      
      I'll send a separate patch to the list with Sebastian's changes that
      eliminate the use of the .def files.
      
      llvm-svn: 67058
      23d75bb3
  4. Feb 27, 2009
  5. Feb 17, 2009
  6. Jan 14, 2009
    • Douglas Gregor's avatar
      Refactor name lookup. · 34074326
      Douglas Gregor authored
      This change refactors and cleans up our handling of name lookup with
      LookupDecl. There are several aspects to this refactoring:
      
        - The criteria for name lookup is now encapsulated into the class
        LookupCriteria, which replaces the hideous set of boolean values
        that LookupDecl currently has.
      
        - The results of name lookup are returned in a new class
        LookupResult, which can lazily build OverloadedFunctionDecls for
        overloaded function sets (and, eventually, eliminate the need to
        allocate member for OverloadedFunctionDecls) and contains a
        placeholder for handling ambiguous name lookup (for C++).
      
        - The primary entry points for name lookup are now LookupName (for
          unqualified name lookup) and LookupQualifiedName (for qualified
          name lookup). There is also a convenience function
          LookupParsedName that handles qualified/unqualified name lookup
          when given a scope specifier. Together, these routines are meant
          to gradually replace the kludgy LookupDecl, but this won't happen
          until after we have base class lookup (which forces us to cope
          with ambiguities).
      
        - Documented the heck out of name lookup. Experimenting a little
          with using Doxygen's member groups to make some sense of the Sema
          class. Feedback welcome!
      
        - Fixes some lingering issues with name lookup for
        nested-name-specifiers, which now goes through
        LookupName/LookupQualifiedName. 
      
      llvm-svn: 62245
      34074326
  7. Dec 05, 2008
    • Douglas Gregor's avatar
      Representation of template type parameters and non-type template · 5101c24f
      Douglas Gregor authored
      parameters, with some semantic analysis:
        - Template parameters are introduced into template parameter scope
        - Complain about template parameter shadowing (except in Microsoft mode)
      
      Note that we leak template parameter declarations like crazy, a
      problem we'll remedy once we actually create proper declarations for
      templates. 
      
      Next up: dependent types and value-dependent/type-dependent
      expressions.
      
      llvm-svn: 60597
      5101c24f
  8. Nov 11, 2008
  9. Oct 26, 2008
Loading