[PATCH] D40625: Harmonizing attribute GNU/C++ spellings

Richard Smith - zygoloid via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Nov 29 18:24:20 PST 2017


rsmith added inline comments.


================
Comment at: include/clang/Basic/Attr.td:602
 def AnalyzerNoReturn : InheritableAttr {
-  let Spellings = [GNU<"analyzer_noreturn">];
+  let Spellings = [Clang<"analyzer_noreturn">];
   let Documentation = [Undocumented];
----------------
Hmm, should the clang static analyzer reuse the `clang::` namespace, or should it get its own?


================
Comment at: include/clang/Basic/Attr.td:649
 def Availability : InheritableAttr {
-  let Spellings = [GNU<"availability">];
+  let Spellings = [Clang<"availability">];
   let Args = [IdentifierArgument<"platform">, VersionArgument<"introduced">,
----------------
Does the custom parsing for this work for the C++11 attribute syntax?


================
Comment at: include/clang/Basic/Attr.td:1218-1228
 def NeonPolyVectorType : TypeAttr {
-  let Spellings = [GNU<"neon_polyvector_type">];
+  let Spellings = [Clang<"neon_polyvector_type">];
   let Args = [IntArgument<"NumElements">];
   let Documentation = [Undocumented];
 }
 
 def NeonVectorType : TypeAttr {
----------------
I *think* these are a Clang invention rather than part of the ARM NEON intrinsics specification, but perhaps you could ask someone from ARM to confirm that.


https://reviews.llvm.org/D40625





More information about the cfe-commits mailing list