1*67e74705SXin Li// RUN: %clang_cc1 -fsyntax-only -verify %s 2*67e74705SXin Li// expected-no-diagnostics 3*67e74705SXin Litypedef signed char BOOL; 4*67e74705SXin Li 5*67e74705SXin Li@protocol NSObject 6*67e74705SXin Li+ alloc; 7*67e74705SXin Li- init; 8*67e74705SXin Li- (BOOL) isEqual:(id) object; 9*67e74705SXin Li- (Class)class; 10*67e74705SXin Li@end 11*67e74705SXin Li 12*67e74705SXin Li@interface NSObject < NSObject > {} @end 13*67e74705SXin Li 14*67e74705SXin Li@class NSString, NSPort; 15*67e74705SXin Li 16*67e74705SXin Li@interface NSPortNameServer:NSObject 17*67e74705SXin Li+ (NSPortNameServer *) systemDefaultPortNameServer; 18*67e74705SXin Li@end 19*67e74705SXin Li 20*67e74705SXin Li@interface NSMachBootstrapServer:NSPortNameServer + (id) sharedInstance; @end 21*67e74705SXin Li 22*67e74705SXin Lienum { 23*67e74705SXin Li NSWindowsNTOperatingSystem = 1, NSWindows95OperatingSystem, NSSolarisOperatingSystem, NSHPUXOperatingSystem, NSMACHOperatingSystem, NSSunOSOperatingSystem, NSOSF1OperatingSystem 24*67e74705SXin Li}; 25*67e74705SXin Li 26*67e74705SXin Li@interface NSRunLoop:NSObject {} @end 27*67e74705SXin Li 28*67e74705SXin Li@interface NSRunLoop(NSRunLoopConveniences) 29*67e74705SXin Li- (void) run; 30*67e74705SXin Li@end 31*67e74705SXin Li 32*67e74705SXin Liextern NSString *const NSWillBecomeMultiThreadedNotification; 33*67e74705SXin Li 34*67e74705SXin Li@interface SenTestTool:NSObject {} 35*67e74705SXin Li@end 36*67e74705SXin Li 37*67e74705SXin Li@implementation SenTestTool 38*67e74705SXin Li+ (void) initialize {} 39*67e74705SXin Li+(SenTestTool *) sharedInstance { return 0; } 40*67e74705SXin Li-(int) run { return 0; } 41*67e74705SXin Li+(int) run { 42*67e74705SXin Li return[[self sharedInstance] run]; 43*67e74705SXin Li} 44*67e74705SXin Li@end 45*67e74705SXin Li 46*67e74705SXin Li@interface XX : NSObject 47*67e74705SXin Li 48*67e74705SXin Li+ classMethod; 49*67e74705SXin Li 50*67e74705SXin Li@end 51*67e74705SXin Li 52*67e74705SXin Li@interface YY : NSObject 53*67e74705SXin Li- whatever; 54*67e74705SXin Li@end 55*67e74705SXin Li 56*67e74705SXin Li@implementation YY 57*67e74705SXin Li 58*67e74705SXin Li- whatever { 59*67e74705SXin Li id obj = [[XX alloc] init]; 60*67e74705SXin Li [[obj class] classMethod]; 61*67e74705SXin Li return 0; 62*67e74705SXin Li} 63*67e74705SXin Li 64*67e74705SXin Li@end 65