From: Fariborz Jahanian Date: Wed, 14 Apr 2010 20:52:42 +0000 (+0000) Subject: Fix a -pedantic spurious warning involving @dynamic. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=94b24db37e80a75c4088e592d4150fb12b00bfb3;p=clang Fix a -pedantic spurious warning involving @dynamic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101284 91177308-0d34-0410-b5e6-96231b3b80d8 --- 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