diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2010-04-14 20:52:42 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2010-04-14 20:52:42 +0000 |
commit | 94b24db37e80a75c4088e592d4150fb12b00bfb3 (patch) | |
tree | ca3c3e2ce608a9d3822be151d2cde214d85e352b | |
parent | ab866b46f3f626ac2da42d2b16ec3b5c04105e38 (diff) |
Fix a -pedantic spurious warning involving @dynamic.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101284 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Parse/ParseObjc.cpp | 6 | ||||
-rw-r--r-- | test/SemaObjC/pedantic-dynamic-test.m | 16 |
2 files changed, 21 insertions, 1 deletions
diff --git a/lib/Parse/ParseObjc.cpp b/lib/Parse/ParseObjc.cpp index 6a20a089f7..3a0431ffee 100644 --- a/lib/Parse/ParseObjc.cpp +++ b/lib/Parse/ParseObjc.cpp @@ -1426,8 +1426,12 @@ Parser::DeclPtrTy Parser::ParseObjCPropertyDynamic(SourceLocation atLoc) { break; ConsumeToken(); // consume ',' } - if (Tok.isNot(tok::semi)) + if (Tok.isNot(tok::semi)) { Diag(Tok, diag::err_expected_semi_after) << "@dynamic"; + SkipUntil(tok::semi); + } + else + ConsumeToken(); // consume ';' return DeclPtrTy(); } diff --git a/test/SemaObjC/pedantic-dynamic-test.m b/test/SemaObjC/pedantic-dynamic-test.m new file mode 100644 index 0000000000..9b14c1d75f --- /dev/null +++ b/test/SemaObjC/pedantic-dynamic-test.m @@ -0,0 +1,16 @@ +// RUN: %clang_cc1 -fsyntax-only -verify -pedantic %s +// rdar: // 7860960 + +@interface I +{ + int window; +} +@property int window, noWarningNeeded; +@end + +@implementation I + +@synthesize window; + +@dynamic noWarningNeeded; +@end |