summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2012-12-14 21:38:56 +0100
committerAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2012-12-14 21:38:56 +0100
commit860c7d8c7dec1a2a7276adb0b47ae4efce83d206 (patch)
tree8f4917dc1cd113e5df20dd41076b2f8c59308744
parent918a0d4311cc1d1766b579509c16ac9fcfbc7807 (diff)
parent5747fe72186fd2db4dc80d5023e4f782791578d1 (diff)
downloadclang-860c7d8c7dec1a2a7276adb0b47ae4efce83d206.tar.gz
clang-860c7d8c7dec1a2a7276adb0b47ae4efce83d206.tar.bz2
clang-860c7d8c7dec1a2a7276adb0b47ae4efce83d206.tar.xz
Merge branch 'release-3.2' into embtk-support-release-3.2
-rw-r--r--lib/Parse/ParseDeclCXX.cpp3
-rw-r--r--test/Parser/bracket-crash.cpp3
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/Parse/ParseDeclCXX.cpp b/lib/Parse/ParseDeclCXX.cpp
index 4cb14e24f4..f11a9d1995 100644
--- a/lib/Parse/ParseDeclCXX.cpp
+++ b/lib/Parse/ParseDeclCXX.cpp
@@ -706,8 +706,7 @@ SourceLocation Parser::ParseDecltypeSpecifier(DeclSpec &DS) {
if (SkipUntil(tok::r_paren, /*StopAtSemi=*/true, /*DontConsume=*/true)) {
EndLoc = ConsumeParen();
} else {
- assert(Tok.is(tok::semi));
- if (PP.isBacktrackEnabled()) {
+ if (PP.isBacktrackEnabled() && Tok.is(tok::semi)) {
// Backtrack to get the location of the last token before the semi.
PP.RevertCachedTokens(2);
ConsumeToken(); // the semi.
diff --git a/test/Parser/bracket-crash.cpp b/test/Parser/bracket-crash.cpp
index bcc6eabc6e..93b5294077 100644
--- a/test/Parser/bracket-crash.cpp
+++ b/test/Parser/bracket-crash.cpp
@@ -4,3 +4,6 @@ decltype(;
struct{
a
}
+
+// PR14549. Must be at end of file.
+decltype(