diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2014-04-22 17:42:01 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2014-04-22 17:42:01 +0000 |
commit | 4ab423cd70ddc40a8b8306ec468ef6436b3540e4 (patch) | |
tree | a4b355f84c7dafacd5d50d5b3dc88b56fffb72bd /test/SemaObjCXX/objcbridge-attribute-arc.mm | |
parent | 13e41baf7883704f60e86c06d794652330c2bd93 (diff) | |
download | clang-4ab423cd70ddc40a8b8306ec468ef6436b3540e4.tar.gz |
Objective-C ARC. Under ARC, addition of 'bridge' attribute
on CF type is not sufficient and bridge casting is
still required for proper ownership semantics.
// rdar://16650445
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@206910 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaObjCXX/objcbridge-attribute-arc.mm')
-rw-r--r-- | test/SemaObjCXX/objcbridge-attribute-arc.mm | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/test/SemaObjCXX/objcbridge-attribute-arc.mm b/test/SemaObjCXX/objcbridge-attribute-arc.mm index 0e184a4a29..4224854a69 100644 --- a/test/SemaObjCXX/objcbridge-attribute-arc.mm +++ b/test/SemaObjCXX/objcbridge-attribute-arc.mm @@ -64,9 +64,9 @@ typedef CFErrorRef1 CFErrorRef2; // expected-note 2 {{declared here}} void Test2(CFErrorRef2 cf, NSError *ns, NSString *str, Class c, CFUColor2Ref cf2) { (void)(NSString *)cf; // expected-warning {{'CFErrorRef2' (aka '__CFErrorRef *') bridges to NSError, not 'NSString'}} - (void)(NSError *)cf; // okay - (void)(MyError*)cf; // okay, - (void)(NSUColor *)cf2; // okay + (void)(NSError *)cf; // expected-error {{under ARC 'CFErrorRef2' (aka '__CFErrorRef *') bridges to NSError, but it still requires an explicit bridge cast}} + (void)(MyError*)cf; // expected-error {{under ARC 'CFErrorRef2' (aka '__CFErrorRef *') bridges to NSError, but it still requires an explicit bridge cast}}, + (void)(NSUColor *)cf2; // expected-error {{under ARC 'CFUColor2Ref' (aka '__CFUPrimeColor *') bridges to NSUColor, but it still requires an explicit bridge cast}} (void)(CFErrorRef)ns; // okay (void)(CFErrorRef)str; // expected-warning {{'NSString' cannot bridge to 'CFErrorRef' (aka '__CFErrorRef *')}} (void)(Class)cf; // expected-warning {{'CFErrorRef2' (aka '__CFErrorRef *') bridges to NSError, not 'Class'}} |