aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Parse/ParseObjc.cpp3
-rw-r--r--test/Parser/recovery.m5
2 files changed, 6 insertions, 2 deletions
diff --git a/lib/Parse/ParseObjc.cpp b/lib/Parse/ParseObjc.cpp
index 14f2bbedbe..d17e517b1f 100644
--- a/lib/Parse/ParseObjc.cpp
+++ b/lib/Parse/ParseObjc.cpp
@@ -442,8 +442,7 @@ void Parser::ParseObjCInterfaceDeclList(Decl *interfaceDecl,
DeclSpec DS(AttrFactory);
ParseStructDeclaration(DS, Callback);
- ExpectAndConsume(tok::semi, diag::err_expected_semi_decl_list, "",
- tok::at);
+ ExpectAndConsume(tok::semi, diag::err_expected_semi_decl_list);
break;
}
}
diff --git a/test/Parser/recovery.m b/test/Parser/recovery.m
new file mode 100644
index 0000000000..e1265262b1
--- /dev/null
+++ b/test/Parser/recovery.m
@@ -0,0 +1,5 @@
+// RUN: %clang_cc1 -fsyntax-only -verify -pedantic -fblocks %s
+
+@interface Test0
+@property (assign) id x // expected-error {{expected ';' at end of declaration list}}
+@end