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



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to