Skip to content
  1. Nov 10, 2009
  2. Nov 07, 2009
  3. Nov 06, 2009
  4. Nov 04, 2009
    • John McCall's avatar
      Change our basic strategy for avoiding deprecation warnings when the decl use · 28a6aeab
      John McCall authored
      appears in a deprecated context.  In the new strategy, we emit the warnings
      as usual unless we're currently parsing a declaration, where "declaration" is
      restricted to mean a decl group or a few special cases in Objective C.  If
      we *are* parsing a declaration, we queue up the deprecation warnings until
      the declaration has been completely parsed, and then emit them only if the
      decl is not deprecated.
      We also standardize the bookkeeping for deprecation so as to avoid special cases.
      
      llvm-svn: 85998
      28a6aeab
  5. Nov 03, 2009
  6. Oct 20, 2009
  7. Oct 18, 2009
  8. Oct 08, 2009
  9. Sep 29, 2009
  10. Sep 09, 2009
  11. Jun 24, 2009
  12. Jun 05, 2009
  13. May 21, 2009
  14. May 17, 2009
  15. May 04, 2009
  16. Apr 30, 2009
  17. Apr 12, 2009
  18. Apr 11, 2009
  19. Apr 08, 2009
  20. Mar 29, 2009
    • Chris Lattner's avatar
      Push DeclGroup much farther throughout the compiler. Now the various · 5bbb3c8a
      Chris Lattner authored
      productions (except the already broken ObjC cases like @class X,Y;) in 
      the parser that can produce more than one Decl return a DeclGroup instead
      of a Decl, etc.
      
      This allows elimination of the Decl::NextDeclarator field, and exposes
      various clients that should look at all decls in a group, but which were
      only looking at one (such as the dumper, printer, etc).  These have been
      fixed.
      
      Still TODO:
      
      1) there are some FIXME's in the code about potentially using
      DeclGroup for better location info.
      2) ParseObjCAtDirectives should return a DeclGroup due to @class etc.
      3) I'm not sure what is going on with StmtIterator.cpp, or if it can
         be radically simplified now.
      4) I put a truly horrible hack in ParseTemplate.cpp.
      
      I plan to bring up #3/4 on the mailing list, but don't plan to tackle
      #1/2 in the short term.
      
      llvm-svn: 68002
      5bbb3c8a
  21. Mar 28, 2009
    • Chris Lattner's avatar
      Introduce a new OpaquePtr<N> struct type, which is a simple POD wrapper for a · 83f095cc
      Chris Lattner authored
      pointer.  Its purpose in life is to be a glorified void*, but which does not
      implicitly convert to void* or other OpaquePtr's with a different UID.
      
      Introduce Action::DeclPtrTy which is a typedef for OpaquePtr<0>.  Change the 
      entire parser/sema interface to use DeclPtrTy instead of DeclTy*.  This
      makes the C++ compiler enforce that these aren't convertible to other opaque
      types.
      
      We should also convert ExprTy, StmtTy, TypeTy, AttrTy, BaseTy, etc,
      but I don't plan to do that in the short term.
      
      The one outstanding known problem with this patch is that we lose the 
      bitmangling optimization where ActionResult<DeclPtrTy> doesn't know how to
      bitmangle the success bit into the low bit of DeclPtrTy.  I will rectify
      this with a subsequent patch.
      
      llvm-svn: 67952
      83f095cc
  22. Mar 18, 2009
  23. Mar 12, 2009
  24. Mar 10, 2009
  25. Mar 09, 2009
  26. Mar 05, 2009
  27. Mar 04, 2009
  28. Mar 03, 2009
  29. Mar 02, 2009
  30. Feb 28, 2009
  31. Feb 18, 2009
  32. Feb 15, 2009
Loading