aaron.ballman added inline comments.
================ Comment at: clang/test/Sema/attr-noinline.cpp:23 + + [[gnu::noinline]] bar(); // expected-warning {{'noinline' attribute is ignored in statements as it only applies to functions}} +} ---------------- xbolva00 wrote: > aaron.ballman wrote: > > It might be nice to clarify the diagnostic; it's not that `noinline` > > attribute is ignored always, it's that `[[gnu::noinline]]` and > > `__attribute__((noinline))` are ignored specifically. > > > > Can you add one more test case for: > > ``` > > __attribute__((noinline)) bar(); > > ``` > > (I would expect this to also diagnose.) > ``` > __attribute__((noinline)) bar(); > ``` > > is not diagnosed, as "// The Clang spelling implies GNU<name>, CXX11<"clang", > name>, and optionally," :[] Not sure if this could be easily fixed. That's what I suspected -- I think we should diagnose this case. I think I had my idea backwards in Attr.td. We should use `GCC<"noinline">` as the spelling, and add `CXX11<"clang", "noinline">` and `C2x<"clang", "noinline">`; then the GNU spelling is associated with GCC. Then you can change the accessor for the attribute and that should fix this issue. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D119061/new/ https://reviews.llvm.org/D119061 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits