rsmith added a comment.
This patch appears to have at least caused us to process attributes too many
times in some cases. For example:
__attribute__((noreturn,noinline,unused)) void f();
before your patch gives this with `clang -Xclang -ast-dump`:
`-FunctionDecl 0xccef1e0 <<stdin>:1:1, col:50> col:48 f 'void ()
__attribute__((noreturn))'
|-UnusedAttr 0xccef280 <col:34> unused
`-NoInlineAttr 0xccef2c8 <col:25>
and after your patch gives this:
`-FunctionDecl 0xb913740 <<stdin>:1:1, col:50> col:48 f 'void ()
__attribute__((noreturn))'
|-NoInlineAttr 0xb9137e0 <col:25>
|-UnusedAttr 0xb913828 <col:34> unused
|-NoInlineAttr 0xb913838 <col:25>
`-UnusedAttr 0xb913848 <col:34> unused
Repository:
rC Clang
https://reviews.llvm.org/D48100
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits