diff options
author | Erich Keane <erich.keane@intel.com> | 2017-02-28 20:44:39 +0000 |
---|---|---|
committer | Erich Keane <erich.keane@intel.com> | 2017-02-28 20:44:39 +0000 |
commit | 52db1f00b0d711de1074f560950578f45458a6b5 (patch) | |
tree | bd7eed5ae519a3d802d8b0d9c0a980575b009bf4 /lib/Parse | |
parent | 445111c2dcede05df8701739a9ce281ff0888517 (diff) |
Allow attributes before union definition
permits typedef union __attribute__((transparent_union)) {...}
Differential Revision: https://reviews.llvm.org/D28266
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@296518 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Parse')
-rw-r--r-- | lib/Parse/ParseDeclCXX.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Parse/ParseDeclCXX.cpp b/lib/Parse/ParseDeclCXX.cpp index c3ede1b7f5..241c959474 100644 --- a/lib/Parse/ParseDeclCXX.cpp +++ b/lib/Parse/ParseDeclCXX.cpp @@ -1887,6 +1887,10 @@ void Parser::ParseClassSpecifier(tok::TokenKind TagTokKind, ParseStructUnionBody(StartLoc, TagType, TagOrTempResult.get()); } + if (!TagOrTempResult.isInvalid()) + // Delayed proccessing of attributes. + Actions.ProcessDeclAttributeDelayed(TagOrTempResult.get(), attrs.getList()); + const char *PrevSpec = nullptr; unsigned DiagID; bool Result; |