Skip to content
  1. Oct 13, 2009
  2. Oct 09, 2009
  3. Oct 06, 2009
  4. Oct 02, 2009
  5. Sep 30, 2009
  6. Sep 25, 2009
  7. Sep 24, 2009
  8. Sep 22, 2009
  9. Sep 19, 2009
  10. Sep 15, 2009
  11. Sep 09, 2009
  12. Sep 05, 2009
    • John McCall's avatar
      Basic support for representing elaborated type specifiers · fcc33b07
      John McCall authored
      directly in the AST.  The current thinking is to create these
      only in C++ mode for efficiency.  But for now, they're not being
      created at all; patch to follow.
      
      This will let us do things like verify that tags match during
      template instantation, as well as signal that an elaborated type
      specifier was used for clients that actually care.
      
      Optimally, the TypeLoc hierarchy should be adjusted to carry tag
      location information as well.
      
      llvm-svn: 81057
      fcc33b07
  13. Sep 01, 2009
  14. Aug 19, 2009
  15. Aug 14, 2009
  16. Jul 27, 2009
  17. Jul 22, 2009
  18. Jul 18, 2009
  19. Jul 14, 2009
  20. Jul 13, 2009
  21. Jul 11, 2009
    • Steve Naroff's avatar
      This patch includes a conceptually simple, but very intrusive/pervasive change. · 7cae42b0
      Steve Naroff authored
      The idea is to segregate Objective-C "object" pointers from general C pointers (utilizing the recently added ObjCObjectPointerType). The fun starts in Sema::GetTypeForDeclarator(), where "SomeInterface *" is now represented by a single AST node (rather than a PointerType whose Pointee is an ObjCInterfaceType). Since a significant amount of code assumed ObjC object pointers where based on C pointers/structs, this patch is very tedious. It should also explain why it is hard to accomplish this in smaller, self-contained patches.
      
      This patch does most of the "heavy lifting" related to moving from PointerType->ObjCObjectPointerType. It doesn't include all potential "cleanups". The good news is additional cleanups can be done later (some are noted in the code). This patch is so large that I didn't want to include any changes that are purely aesthetic.
      
      By making the ObjC types truly built-in, they are much easier to work with (and require fewer "hacks"). For example, there is no need for ASTContext::isObjCIdStructType() or ASTContext::isObjCClassStructType()! We believe this change (and the follow-up cleanups) will pay dividends over time. 
      
      Given the amount of code change, I do expect some fallout from this change (though it does pass all of the clang tests). If you notice any problems, please let us know asap! Thanks.
      
      llvm-svn: 75314
      7cae42b0
  22. Jul 10, 2009
  23. Jul 06, 2009
  24. Jun 30, 2009
    • Argyrios Kyrtzidis's avatar
      De-ASTContext-ify DeclContext. · cfbfe78e
      Argyrios Kyrtzidis authored
      Remove ASTContext parameter from DeclContext's methods. This change cascaded down to other Decl's methods and changes to call sites started "escalating".
      Timings using pre-tokenized "cocoa.h" showed only a ~1% increase in time run between and after this commit.
      
      llvm-svn: 74506
      cfbfe78e
    • Chris Lattner's avatar
      Key decisions about 'bool' vs '_Bool' to be based on a new flag in langoptions. · c61089a6
      Chris Lattner authored
      This is simple enough, but then I thought it would be nice to make PrintingPolicy
      get a LangOptions so that various things can key off "bool" and "C++" independently.
      This spiraled out of control.  There are many fixme's, but I think things are slightly
      better than they were before.
      
      One thing that can be improved: CFG should probably have an ASTContext pointer in it,
      which would simplify its clients.
      
      llvm-svn: 74493
      c61089a6
Loading