diff options
author | Douglas Gregor <dgregor@apple.com> | 2012-05-11 23:01:43 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2012-05-11 23:01:43 +0000 |
commit | b2749b134a190c3b60cf22c11686afd8fcc7c6d0 (patch) | |
tree | cc7c7de5267683696665052d405323cc0b81b146 | |
parent | 2f68ca09ca8b5944fcab14578a161511afde406f (diff) |
Make sure that we recognize __attribute__((align)) as a synonym for
__attribute__((aligned)). Fixes <rdar://problem/11435441>, a
regression I introduced in r156003. This is the narrow fix; a more
comprehensive fix is coming.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156657 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Sema/SemaDeclAttr.cpp | 1 | ||||
-rw-r--r-- | test/Sema/attr-aligned.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/lib/Sema/SemaDeclAttr.cpp b/lib/Sema/SemaDeclAttr.cpp index 93516501aa..284a72e339 100644 --- a/lib/Sema/SemaDeclAttr.cpp +++ b/lib/Sema/SemaDeclAttr.cpp @@ -3792,6 +3792,7 @@ static void ProcessInheritableDeclAttr(Sema &S, Scope *scope, Decl *D, // by ProcessNonInheritableDeclAttr. break; case AttributeList::AT_alias: handleAliasAttr (S, D, Attr); break; + case AttributeList::AT_align: case AttributeList::AT_aligned: handleAlignedAttr (S, D, Attr); break; case AttributeList::AT_always_inline: handleAlwaysInlineAttr (S, D, Attr); break; diff --git a/test/Sema/attr-aligned.c b/test/Sema/attr-aligned.c index c094ff172d..92f2742d2f 100644 --- a/test/Sema/attr-aligned.c +++ b/test/Sema/attr-aligned.c @@ -32,7 +32,7 @@ struct D { int member __attribute__((aligned(2))) __attribute__((packed)); } d; char d1[__alignof__(d) == 2 ?: -1] = {0}; char d2[__alignof__(d.member) == 2 ?: -1] = {0}; -struct E { int member __attribute__((aligned(2))); } __attribute__((packed)); +struct E { int member __attribute__((align(2))); } __attribute__((packed)); struct E e; char e1[__alignof__(e) == 2 ?: -1] = {0}; char e2[__alignof__(e.member) == 2 ?: -1] = {0}; |