diff options
-rw-r--r-- | lib/Parse/ParseDeclCXX.cpp | 4 | ||||
-rw-r--r-- | test/Parser/bracket-crash.cpp | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/lib/Parse/ParseDeclCXX.cpp b/lib/Parse/ParseDeclCXX.cpp index d798281f40..3bf7005769 100644 --- a/lib/Parse/ParseDeclCXX.cpp +++ b/lib/Parse/ParseDeclCXX.cpp @@ -674,9 +674,9 @@ SourceLocation Parser::ParseDecltypeSpecifier(DeclSpec &DS) { 0, /*IsDecltype=*/true); Result = ParseExpression(); if (Result.isInvalid()) { - SkipUntil(tok::r_paren, true, true); + SkipUntil(tok::r_paren); DS.SetTypeSpecError(); - return Tok.is(tok::eof) ? Tok.getLocation() : ConsumeParen(); + return StartLoc; } // Match the ')' diff --git a/test/Parser/bracket-crash.cpp b/test/Parser/bracket-crash.cpp index fd18e0e25f..bcc6eabc6e 100644 --- a/test/Parser/bracket-crash.cpp +++ b/test/Parser/bracket-crash.cpp @@ -1,6 +1,6 @@ -// RUN: not %clang_cc1 -fsyntax-only %s +// RUN: not %clang_cc1 -fsyntax-only -std=c++11 %s // PR7481 +decltype(; struct{ a } - |