Skip to content
  1. May 09, 2012
  2. May 08, 2012
  3. May 07, 2012
  4. May 06, 2012
    • Rafael Espindola's avatar
      Split mergeAvailabilityAttr out of handleAvailabilityAttr. This is important · 2d243bfe
      Rafael Espindola authored
      for having a uniform logic for adding attributes to a decl. This in turn
      is needed to fix the FIXME:
      
        // FIXME: This needs to happen before we merge declarations. Then,
        // let attribute merging cope with attribute conflicts.
        ProcessDeclAttributes(S, NewFD, D,
                              /*NonInheritable=*/false, /*Inheritable=*/true);
      
      The idea is that mergeAvailabilityAttr will become a method. Once attributes
      are processed before merging, it will be called from handleAvailabilityAttr to
      handle multiple attributes in one decl:
      
      void f(int) __attribute__((availability(ios,deprecated=3.0),
                                 availability(ios,introduced=2.0)));
      
      and from SemaDecl.cpp to handle multiple decls:
      
      void f(int) __attribute__((availability(ios,deprecated=3.0)));
      void f(int) __attribute__((availability(ios,introduced=2.0)));
      
      As a bonus, use the new structure to diagnose incompatible availability
      attributes added to different decls (see included testcases).
      
      llvm-svn: 156269
      2d243bfe
  5. May 05, 2012
  6. May 04, 2012
  7. May 03, 2012
  8. May 02, 2012
Loading