diff options
author | Douglas Gregor <dgregor@apple.com> | 2012-05-02 15:16:13 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2012-05-02 15:16:13 +0000 |
commit | 39d59dbd655322fd49a9b4e10844cc39f1097256 (patch) | |
tree | 88fc5a52532fb93064ba93732c6b5d3c5cd92e23 | |
parent | c242ef245c61731f9d7d0bcc3039761fbb786223 (diff) | |
download | bcm5719-llvm-39d59dbd655322fd49a9b4e10844cc39f1097256.tar.gz bcm5719-llvm-39d59dbd655322fd49a9b4e10844cc39f1097256.zip |
Implement the alternate spellings of attributes aligned (as "align")
and const (as "__const") using tblgen, rather than explicitly hacking
them in.
llvm-svn: 155991
-rw-r--r-- | clang/include/clang/Basic/Attr.td | 4 | ||||
-rw-r--r-- | clang/lib/Sema/AttributeList.cpp | 2 |
2 files changed, 2 insertions, 4 deletions
diff --git a/clang/include/clang/Basic/Attr.td b/clang/include/clang/Basic/Attr.td index e8e0f35096f..66b50c03a6c 100644 --- a/clang/include/clang/Basic/Attr.td +++ b/clang/include/clang/Basic/Attr.td @@ -118,7 +118,7 @@ def Alias : InheritableAttr { } def Aligned : InheritableAttr { - let Spellings = ["aligned"]; + let Spellings = ["aligned", "align"]; let Subjects = [NonBitField, NormalVar, Tag]; let Args = [AlignedArgument<"Alignment">]; let Namespaces = ["", "std"]; @@ -219,7 +219,7 @@ def Common : InheritableAttr { } def Const : InheritableAttr { - let Spellings = ["const"]; + let Spellings = ["const", "__const"]; } def Constructor : InheritableAttr { diff --git a/clang/lib/Sema/AttributeList.cpp b/clang/lib/Sema/AttributeList.cpp index f142ab4c0a3..f85fb3d467b 100644 --- a/clang/lib/Sema/AttributeList.cpp +++ b/clang/lib/Sema/AttributeList.cpp @@ -108,10 +108,8 @@ AttributeList::Kind AttributeList::getKind(const IdentifierInfo *Name) { return llvm::StringSwitch<AttributeList::Kind>(AttrName) #include "clang/Sema/AttrParsedAttrKinds.inc" .Case("address_space", AT_address_space) - .Case("align", AT_aligned) // FIXME - should it be "aligned"? .Case("base_check", AT_base_check) .Case("bounded", IgnoredAttribute) // OpenBSD - .Case("__const", AT_const) // some GCC headers do contain this spelling .Case("cf_returns_autoreleased", AT_cf_returns_autoreleased) .Case("mode", AT_mode) .Case("vec_type_hint", IgnoredAttribute) |