eugenis added a comment.
In http://reviews.llvm.org/D13925#276626, @majnemer wrote:
> No diagnostic is issued for the following C test case:
>
> int x __attribute__((internal_linkage));
> int x __attribute__((common));
> int *f() { return &x; }
Thanks for noticing! Added missing attribute merging logic in SemaAttr.cpp.
================
Comment at: include/clang/Basic/Attr.td:2112
@@ +2111,3 @@
+
+def InternalLinkage : InheritableAttr {
+ let Spellings = [GCC<"internal_linkage">];
----------------
Because the list of subjects is long and unusual, and Subjects field does not
support arbitrary lists - all combinations must have a specific diagnostic line
elsewhere in the code.
This is checked in handleInternalLinkageAttr instead.
Repository:
rL LLVM
http://reviews.llvm.org/D13925
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits