From 222e2a7620e6520ffaf4fc4e69d79c18da31542e Mon Sep 17 00:00:00 2001 From: "Zancanaro; Carlo" Date: Mon, 24 Sep 2012 09:58:17 +1000 Subject: Add the clang library to the repo (with some of my changes, too). --- clang/test/SemaObjC/continuation-class-property.m | 63 +++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 clang/test/SemaObjC/continuation-class-property.m (limited to 'clang/test/SemaObjC/continuation-class-property.m') diff --git a/clang/test/SemaObjC/continuation-class-property.m b/clang/test/SemaObjC/continuation-class-property.m new file mode 100644 index 0000000..7d95424 --- /dev/null +++ b/clang/test/SemaObjC/continuation-class-property.m @@ -0,0 +1,63 @@ +// RUN: %clang_cc1 -fsyntax-only -verify %s +// radar 7509234 + +@protocol Foo +@property (readonly, copy) id foos; +@end + +@interface Bar { +} + +@end + +@interface Baz { +} +@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 continuation class does not match property type in primary class}} +@property (readwrite, strong) NSRect bar; // expected-error {{type of property 'NSRect' in continuation class 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 -- cgit v1.2.3