diff options
author | Chris Lattner <sabre@nondot.org> | 2010-02-03 01:45:03 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-02-03 01:45:03 +0000 |
commit | 35af0ab3eb6ed1faa28233b8a0384c06aef87681 (patch) | |
tree | c6d6ddaaa86c25b9ddff3ce506062d41b9b4276c /clang | |
parent | aaa1db66a1225faf2c84dfa1d02b92d9a50e4843 (diff) | |
download | bcm5719-llvm-35af0ab3eb6ed1faa28233b8a0384c06aef87681.tar.gz bcm5719-llvm-35af0ab3eb6ed1faa28233b8a0384c06aef87681.zip |
fix PR6216
llvm-svn: 95185
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/Parse/ParseDeclCXX.cpp | 1 | ||||
-rw-r--r-- | clang/test/Parser/declarators.c | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/Parse/ParseDeclCXX.cpp b/clang/lib/Parse/ParseDeclCXX.cpp index 371aba17199..cb180ab7d32 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::comma: // __builtin_offsetof(struct foo{...} , // Storage-class specifiers case tok::kw_static: // struct foo {...} static x; case tok::kw_extern: // struct foo {...} extern x; diff --git a/clang/test/Parser/declarators.c b/clang/test/Parser/declarators.c index edd68cc28c2..7ec2a3c1ebb 100644 --- a/clang/test/Parser/declarators.c +++ b/clang/test/Parser/declarators.c @@ -75,3 +75,8 @@ struct test9 { // PR6208 struct test10 { int a; } static test10x; struct test11 { int a; } const test11x; + +// PR6216 +void test12() { + (void)__builtin_offsetof(struct { char c; int i; }, i); +} |