diff options
Diffstat (limited to 'clang/Parse/ParseDecl.cpp')
-rw-r--r-- | clang/Parse/ParseDecl.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/clang/Parse/ParseDecl.cpp b/clang/Parse/ParseDecl.cpp index a095b2f938e..74f7602f88b 100644 --- a/clang/Parse/ParseDecl.cpp +++ b/clang/Parse/ParseDecl.cpp @@ -279,15 +279,15 @@ ParseInitDeclaratorListAfterFirstDeclarator(Declarator &D) { if (Tok.getKind() == tok::semi) { ConsumeToken(); - return LastDeclInGroup; - } else { - Diag(Tok, diag::err_parse_error); - // Skip to end of block or statement - SkipUntil(tok::r_brace, true); - if (Tok.getKind() == tok::semi) - ConsumeToken(); - return 0; + return Actions.FinalizeDeclaratorGroup(CurScope, LastDeclInGroup); } + + Diag(Tok, diag::err_parse_error); + // Skip to end of block or statement + SkipUntil(tok::r_brace, true); + if (Tok.getKind() == tok::semi) + ConsumeToken(); + return 0; } /// ParseSpecifierQualifierList |