llvm-capstone/clang/test/SemaObjC/props-on-prots.m
Fariborz Jahanian 07b7165b50 Check for method type conflict between declaration in
class/protocol and implementation which could be
an imm. implementation or down in the inheritance
hierarchy.

llvm-svn: 70568
2009-05-01 20:07:12 +00:00

66 lines
1.4 KiB
Objective-C

// RUN: clang-cc -fsyntax-only -verify %s
typedef signed char BOOL;
@class NSInvocation, NSMethodSignature, NSCoder, NSString, NSEnumerator;
@protocol NSObject
- (BOOL) isEqual:(id) object;
@end
@protocol NSCoding
- (void) encodeWithCoder:(NSCoder *) aCoder;
@end
@interface NSObject < NSObject > {} @end
typedef float CGFloat;
@interface NSResponder:NSObject < NSCoding > {} @end
@class XCElementView;
typedef struct _XCElementInset {} XCElementInset;
@protocol XCElementP < NSObject >
-(id) vertical;
@end
@protocol XCElementDisplayDelegateP;
@protocol XCElementTabMarkerP;
typedef NSObject < XCElementTabMarkerP > XCElementTabMarker;
@protocol XCElementTabberP < XCElementP >
-(void) setMarker:(XCElementTabMarker *) marker;
@end
typedef NSObject < XCElementTabberP > XCElementTabber;
@protocol XCElementTabMarkerP < NSObject >
@property(nonatomic)
BOOL variableSized;
@end
@protocol XCElementJustifierP < XCElementP >
-(void) setHJustification:(CGFloat) hJust;
@end
typedef NSObject < XCElementJustifierP > XCElementJustifier;
@interface XCElementImp:NSObject < XCElementP > {}
@end
@class XCElementImp;
@interface XCElementTabberImp:XCElementImp < XCElementTabberP > {
XCElementTabMarker *_marker;
}
@end
@implementation XCElementTabberImp
- (void) setMarker:(XCElementTabMarker *) marker {
if (_marker && _marker.variableSized) {
}
}
- (id)vertical { return self; }
- (BOOL)isEqual:x { return 1; }
@end