diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2013-11-16 19:16:32 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2013-11-16 19:16:32 +0000 |
| commit | 8a0210e535c5dc712f03bb323242e4d9bfa89fd8 (patch) | |
| tree | c82b1baac3314ff9026d9837318e035ece5f0c9a /clang/test/SemaObjC/objcbridge-attribute.m | |
| parent | c6f955763ebc7d7830845ce2393493bf5357b8c1 (diff) | |
| download | bcm5719-llvm-8a0210e535c5dc712f03bb323242e4d9bfa89fd8.tar.gz bcm5719-llvm-8a0210e535c5dc712f03bb323242e4d9bfa89fd8.zip | |
ObjectiveC ARC. Validate toll free bridge casting
of ObjectiveC objects to CF types when CF type
has the objc_bridge attribute.
llvm-svn: 194930
Diffstat (limited to 'clang/test/SemaObjC/objcbridge-attribute.m')
| -rw-r--r-- | clang/test/SemaObjC/objcbridge-attribute.m | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/test/SemaObjC/objcbridge-attribute.m b/clang/test/SemaObjC/objcbridge-attribute.m index 4379c6fc8e9..d961528ebde 100644 --- a/clang/test/SemaObjC/objcbridge-attribute.m +++ b/clang/test/SemaObjC/objcbridge-attribute.m @@ -1,7 +1,7 @@ // RUN: %clang_cc1 -fsyntax-only -fobjc-arc -verify -Wno-objc-root-class %s // rdar://15454846 -typedef struct __CFErrorRef * __attribute__ ((objc_bridge(NSError))) CFErrorRef; +typedef struct __CFErrorRef * __attribute__ ((objc_bridge(NSError))) CFErrorRef; // expected-note {{declared here}} typedef struct __CFMyColor * __attribute__((objc_bridge(12))) CFMyColorRef; // expected-error {{parameter of 'objc_bridge' attribute must be a single name of an Objective-C class}} @@ -48,8 +48,10 @@ typedef CFErrorRef1 CFErrorRef2; @class NSString; -void Test2(CFErrorRef2 cf) { +void Test2(CFErrorRef2 cf, NSError *ns, NSString *str) { (void)(NSString *)cf; // expected-warning {{CFErrorRef bridges to NSError, not NSString}} (void)(NSError *)cf; // okay (void)(MyError*)cf; // okay, + (void)(CFErrorRef)ns; // okay + (void)(CFErrorRef)str; // expected-warning {{NSString cannot bridge to CFErrorRef}} } |

