[PATCH] D80836: Support GCC [[gnu::attributes]] in C2x mode
Richard Smith - zygoloid via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri May 29 14:46:46 PDT 2020
rsmith added inline comments.
================
Comment at: clang/utils/TableGen/ClangAttrEmitter.cpp:87
Ret.emplace_back("CXX11", std::string(Name), "gnu", true);
+ if (Spelling->getValueAsBit("AllowInC"))
+ Ret.emplace_back("C2x", std::string(Name), "gnu", true);
----------------
erichkeane wrote:
> I guess its a problem for all of these, but why is the last 'true'/'false' (KnownToGCC) not checked from the Spelling? It has: let KnownToGCC = 1;.
>
> I would presume that line either is meaningless, or should be used for the true/false bits in here.
The `KnownToGCC` flag affects whether we produce certain warnings, not which spellings we register. This does seem fishy: we have the same information represented and examined both by considering whether the attribute has a `GNU` vs `GCC` spelling and by considering whether the `KnownToGCC` flag is set. I imagine we could factor this better. (The two concerns are, I suppose, notionally orthogonal, but I can't imagine we would ever want them to differ.)
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D80836/new/
https://reviews.llvm.org/D80836
More information about the cfe-commits
mailing list