Since ObjC 2.0 class "extensions" have a null name, the diagnostic above is actually "correct". Nevertheless, it is confusing. Decided to remove the name entirely (from my perspective, it didn't add any value). Also simplified the text of the diagnostic a bit. llvm-svn: 68967
27 lines
673 B
Objective-C
27 lines
673 B
Objective-C
// RUN: clang-cc -fsyntax-only -verify %s
|
|
|
|
@interface XX
|
|
int x; // expected-error {{cannot declare variable inside @interface or @protocol}}
|
|
int one=1; // expected-error {{cannot declare variable inside @interface or @protocol}}
|
|
@end
|
|
|
|
@protocol PPP
|
|
int ddd; // expected-error {{cannot declare variable inside @interface or @protocol}}
|
|
@end
|
|
|
|
@interface XX(CAT)
|
|
char * III; // expected-error {{cannot declare variable inside @interface or @protocol}}
|
|
extern int OK;
|
|
@end
|
|
|
|
@interface XX()
|
|
char * III2; // expected-error {{cannot declare variable inside @interface or @protocol}}
|
|
extern int OK2;
|
|
@end
|
|
|
|
|
|
int main( int argc, const char *argv[] ) {
|
|
return x+one;
|
|
}
|
|
|