Skip to content
  1. Feb 27, 2009
  2. Feb 17, 2009
  3. 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
  4. 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
  5. Nov 11, 2008
  6. Oct 26, 2008
Loading