Skip to content
Snippets Groups Projects
  1. Jan 17, 2013
    • David Blaikie's avatar
      Fix -Wreorder warning. · 49446069
      David Blaikie authored
      Rewrapping courtesy of clang-format.
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172668 91177308-0d34-0410-b5e6-96231b3b80d8
      49446069
    • Rafael Espindola's avatar
      Check for internal weak decls after merging. · 2a5bb509
      Rafael Espindola authored
      This fixes pr14946. The problem was that the linkage computation was done too
      early, so things like "extern int a;" would be given external linkage, even if
      a previous declaration was static.
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172667 91177308-0d34-0410-b5e6-96231b3b80d8
      2a5bb509
    • David Blaikie's avatar
      PR14964: intrinsic headers using non-reserved identifiers · 4f918aed
      David Blaikie authored
      Several of the intrinsic headers were using plain non-reserved identifiers.
      C++11 17.6.4.3.2 [global.names] p1 reservers names containing a double
      begining with an underscore followed by an uppercase letter for any use.
      
      I think I got them all, but open to being corrected. For the most part I
      didn't bother updating function-like macro parameter names because I don't
      believe they're subject to any such collission - though some function-like
      macros already follow this convention (I didn't update them in part because
      the churn was more significant as several function-like macros use the double
      underscore prefixed version of the same name as a parameter in their
      implementation)
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172666 91177308-0d34-0410-b5e6-96231b3b80d8
      4f918aed
    • Douglas Gregor's avatar
      Rework the traversal of Objective-C categories and extensions to · d3297247
      Douglas Gregor authored
      consider (sub)module visibility.
      
      The bulk of this change replaces myriad hand-rolled loops over the
      linked list of Objective-C categories/extensions attached to an
      interface declaration with loops using one of the four new category
      iterator kinds:
      
        visible_categories_iterator: Iterates over all visible categories
        and extensions, hiding any that have their "hidden" bit set. This is
        by far the most commonly used iterator.
      
        known_categories_iterator: Iterates over all categories and
        extensions, ignoring the "hidden" bit. This tends to be used for
        redeclaration-like traversals.
      
        visible_extensions_iterator: Iterates over all visible extensions,
        hiding any that have their "hidden" bit set.
      
        known_extensions_iterator: Iterates over all extensions, whether
        they are visible to normal name lookup or not.
      
      The effect of this change is that any uses of the visible_ iterators
      will respect module-import visibility. See the new tests for examples.
      
      Note that the old accessors for categories and extensions are gone;
      there are *Raw() forms for some of them, for those (few) areas of the
      compiler that have to manipulate the linked list of categories
      directly. This is generally discouraged.
      
      Part two of <rdar://problem/10634711>.
       
      
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172665 91177308-0d34-0410-b5e6-96231b3b80d8
      d3297247
  2. Jan 16, 2013
Loading