1 // RUN: %clang_cc1 -fsyntax-only -verify %s 2 // expected-no-diagnostics 3 typedef signed char BOOL; 4 @class NSInvocation, NSMethodSignature, NSCoder, NSString, NSEnumerator; 5 6 @protocol NSObject 7 - (BOOL) isEqual:(id) object; 8 @end 9 10 @protocol NSCoding 11 - (void) encodeWithCoder:(NSCoder *) aCoder; 12 @end 13 14 @interface NSObject < NSObject > {} @end 15 16 typedef float CGFloat; 17 18 @interface NSResponder:NSObject < NSCoding > {} @end 19 20 @class XCElementView; 21 22 typedef struct _XCElementInset {} XCElementInset; 23 24 @protocol XCElementP < NSObject > 25 -(id) vertical; 26 @end 27 28 @protocol XCElementDisplayDelegateP; 29 @protocol XCElementTabMarkerP; 30 31 typedef NSObject < XCElementTabMarkerP > XCElementTabMarker; 32 33 @protocol XCElementTabberP < XCElementP > 34 -(void) setMarker:(XCElementTabMarker *) marker; 35 @end 36 37 typedef NSObject < XCElementTabberP > XCElementTabber; 38 39 @protocol XCElementTabMarkerP < NSObject > 40 @property(nonatomic) 41 BOOL variableSized; 42 @end 43 44 @protocol XCElementJustifierP < XCElementP > 45 -(void) setHJustification:(CGFloat) hJust; 46 @end 47 48 typedef NSObject < XCElementJustifierP > XCElementJustifier; 49 @interface XCElementImp:NSObject < XCElementP > {} 50 @end 51 52 @class XCElementImp; 53 54 @interface XCElementTabberImp:XCElementImp < XCElementTabberP > { 55 XCElementTabMarker *_marker; 56 } 57 @end 58 59 @implementation XCElementTabberImp 60 - (void) setMarker:(XCElementTabMarker *) marker { 61 if (_marker && _marker.variableSized) { 62 } 63 } 64 - (id)vertical { return self; } 65 - (BOOL)isEqual:x { return 1; } 66 @end 67