diff options
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/Parse/ParseDeclCXX.cpp | 1 | ||||
-rw-r--r-- | clang/test/Parser/declarators.c | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Parse/ParseDeclCXX.cpp b/clang/lib/Parse/ParseDeclCXX.cpp index cb180ab7d32..f95fedc4e3a 100644 --- a/clang/lib/Parse/ParseDeclCXX.cpp +++ b/clang/lib/Parse/ParseDeclCXX.cpp @@ -942,6 +942,7 @@ void Parser::ParseClassSpecifier(tok::TokenKind TagTokKind, case tok::annot_cxxscope: // struct foo {...} a:: b; case tok::annot_typename: // struct foo {...} a ::b; case tok::annot_template_id: // struct foo {...} a<int> ::b; + case tok::l_paren: // struct foo {...} ( x); case tok::comma: // __builtin_offsetof(struct foo{...} , // Storage-class specifiers case tok::kw_static: // struct foo {...} static x; diff --git a/clang/test/Parser/declarators.c b/clang/test/Parser/declarators.c index 7ec2a3c1ebb..6dd32d9676b 100644 --- a/clang/test/Parser/declarators.c +++ b/clang/test/Parser/declarators.c @@ -80,3 +80,6 @@ struct test11 { int a; } const test11x; void test12() { (void)__builtin_offsetof(struct { char c; int i; }, i); } + +// rdar://7608537 +struct test13 { int a; } (test13x); |