26 lines
875 B
Objective-C
26 lines
875 B
Objective-C
// RUN: %clang_cc1 -fsyntax-only -triple x86_64-apple-darwin10 -verify %s
|
|
// rdar://16628028
|
|
|
|
@interface NSObject
|
|
+ (void)initialize; // expected-note 2 {{method 'initialize' declared here}}
|
|
@end
|
|
|
|
@interface I : NSObject
|
|
+ (void)initialize; // expected-note {{method 'initialize' declared here}}
|
|
+ (void)SomeRandomMethod;
|
|
@end
|
|
|
|
@implementation I
|
|
- (void) Meth {
|
|
[I initialize]; // expected-warning {{explicit call to +initialize results in duplicate call to +initialize}}
|
|
[NSObject initialize]; // expected-warning {{explicit call to +initialize results in duplicate call to +initialize}}
|
|
}
|
|
+ (void)initialize {
|
|
[super initialize];
|
|
}
|
|
+ (void)SomeRandomMethod { // expected-note {{method 'SomeRandomMethod' declared here}}
|
|
[super initialize]; // expected-warning {{explicit call to [super initialize] should only be in implementation of +initialize}}
|
|
}
|
|
@end
|
|
|