1// RUN: %clang_cc1 -fsyntax-only -verify %s 2// expected-no-diagnostics 3 4@interface NSObject {} 5 6@end 7 8@interface MyClass : NSObject {} 9 10@end 11 12@interface MyClass (MyCategorie) 13 14@end 15 16@interface MySubClass : MyClass {} 17 18@end 19 20@interface MySubSubClass : MySubClass {} 21 22@end 23 24@implementation NSObject (NSObjectCategory) 25- (void)rootMethod {} 26@end 27 28@implementation MyClass 29 30+ (void)myClassMethod { } 31- (void)myMethod { } 32 33@end 34 35@implementation MyClass (MyCategorie) 36+ (void)myClassCategoryMethod { } 37- (void)categoryMethod {} 38@end 39 40@implementation MySubClass 41 42- (void)mySubMethod {} 43 44- (void)myTest { 45 [self mySubMethod]; 46 // should lookup method in superclass implementation if available 47 [self myMethod]; 48 [super myMethod]; 49 50 [self categoryMethod]; 51 [super categoryMethod]; 52 53 // instance method of root class 54 [MyClass rootMethod]; 55 56 [MyClass myClassMethod]; 57 [MySubClass myClassMethod]; 58 59 [MyClass myClassCategoryMethod]; 60 [MySubClass myClassCategoryMethod]; 61} 62 63@end 64