76 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
// RUN: %clang_cc1  -fsyntax-only -verify %s
 | 
						|
// radar 7509234
 | 
						|
 | 
						|
@protocol Foo
 | 
						|
@property (readonly, copy) id foos;
 | 
						|
@end
 | 
						|
 | 
						|
@interface Bar <Foo> {
 | 
						|
}
 | 
						|
 | 
						|
@end
 | 
						|
 | 
						|
@interface Baz  <Foo> {
 | 
						|
}
 | 
						|
@end
 | 
						|
 | 
						|
@interface Bar ()
 | 
						|
@property (readwrite, copy) id foos;
 | 
						|
@end
 | 
						|
 | 
						|
@interface Baz ()
 | 
						|
@property (readwrite, copy) id foos;
 | 
						|
@end
 | 
						|
 | 
						|
 | 
						|
// rdar://10142679
 | 
						|
@class NSString;
 | 
						|
 | 
						|
typedef struct {
 | 
						|
  float width;
 | 
						|
  float length;
 | 
						|
} NSRect;
 | 
						|
 | 
						|
@interface MyClass  {
 | 
						|
}
 | 
						|
@property (readonly) NSRect foo; // expected-note {{property declared here}}
 | 
						|
@property (readonly, strong) NSString *bar; // expected-note {{property declared here}}
 | 
						|
@end
 | 
						|
 | 
						|
@interface MyClass ()
 | 
						|
@property (readwrite) NSString *foo; // expected-error {{type of property 'NSString *' in class extension does not match property type in primary class}}
 | 
						|
@property (readwrite, strong) NSRect bar; // expected-error {{type of property 'NSRect' in class extension does not match property type in primary class}}
 | 
						|
@end
 | 
						|
 | 
						|
// rdar://10655530
 | 
						|
struct S;
 | 
						|
struct S1;
 | 
						|
@interface STAdKitContext
 | 
						|
@property (nonatomic, readonly, assign) struct evhttp_request *httpRequest;
 | 
						|
@property (nonatomic, readonly, assign) struct S *httpRequest2;
 | 
						|
@property (nonatomic, readonly, assign) struct S1 *httpRequest3;
 | 
						|
@property (nonatomic, readonly, assign) struct S2 *httpRequest4;
 | 
						|
@end
 | 
						|
 | 
						|
struct evhttp_request;
 | 
						|
struct S1;
 | 
						|
 | 
						|
@interface STAdKitContext()
 | 
						|
@property (nonatomic, readwrite, assign) struct evhttp_request *httpRequest;
 | 
						|
@property (nonatomic, readwrite, assign) struct S *httpRequest2;
 | 
						|
@property (nonatomic, readwrite, assign) struct S1 *httpRequest3;
 | 
						|
@property (nonatomic, readwrite, assign) struct S2 *httpRequest4;
 | 
						|
@end
 | 
						|
 | 
						|
// rdar://15859862
 | 
						|
@protocol ADCameraJSO_Bindings
 | 
						|
@property (nonatomic, readonly) NSString *currentPictureURI;
 | 
						|
@end
 | 
						|
 | 
						|
@interface ADCameraJSO
 | 
						|
@end
 | 
						|
 | 
						|
@interface ADCameraJSO()  <ADCameraJSO_Bindings>
 | 
						|
@property (nonatomic, copy) NSString *currentPictureURI;
 | 
						|
@end
 |