f4a2713ac8
Change-Id: Ia40e9ffdf29b5dab2f122f673ff6802a58bc690f
26 lines
575 B
Objective-C
26 lines
575 B
Objective-C
// RUN: %clang_cc1 -verify -Wno-objc-root-class %s
|
|
|
|
typedef struct objc_class *Class;
|
|
@interface XX
|
|
|
|
- (void)addObserver:(XX*)o; // expected-note 2{{passing argument to parameter 'o' here}}
|
|
|
|
@end
|
|
|
|
@interface YY
|
|
|
|
+ (void)classMethod;
|
|
|
|
@end
|
|
|
|
@implementation YY
|
|
|
|
static XX *obj;
|
|
|
|
+ (void)classMethod {
|
|
[obj addObserver:self]; // expected-warning {{incompatible pointer types sending 'Class' to parameter of type 'XX *'}}
|
|
Class whatever;
|
|
[obj addObserver:whatever]; // expected-warning {{incompatible pointer types sending 'Class' to parameter of type 'XX *'}}
|
|
}
|
|
@end
|
|
|