brintos

brintos / llvm-project-archived public Read only

0
0
Text · 893 B · bf945c6 Raw
56 lines · plain
1// RUN: %clang_cc1 -fsyntax-only -verify %s2// expected-no-diagnostics3 4@interface NSResponder5@end6 7 8@interface NSView : NSResponder9@end10 11@interface WebView : NSView12@end13 14@protocol WebDocumentView15@end16 17@implementation NSView18 19- (void) FUNC : (id)s {20  WebView *m_webView;21  NSView <WebDocumentView> *documentView;22  NSView *coordinateView = s ?  documentView : m_webView;23}24@end25 26@protocol NSObject27@end28 29__attribute__((objc_root_class))30@interface NSObject <NSObject>31@end32 33@protocol Goable <NSObject>34- (void)go;35@end36 37@protocol Drivable <Goable>38- (void)drive;39@end40 41@interface Car : NSObject42- (NSObject <Goable> *)bestGoable:(NSObject <Goable> *)drivable;43@end44 45@interface Car(Category) <Drivable>46@end47 48@interface Truck : Car49@end50 51@implementation Truck52- (NSObject <Goable> *)bestGoable:(NSObject <Goable> *)drivable value:(int)value{53    return value > 0 ? self : drivable;54}55@end56