diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2015-04-10 22:07:47 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2015-04-10 22:07:47 +0000 |
| commit | 27aa9b4028f7841c4efc8d7541c830ba2250c810 (patch) | |
| tree | 4c07ea5e7a50acb2da8570310e80b3c213a2f57c /clang/test/SemaObjC/objcbridge-attribute.m | |
| parent | 85b36a8157eef76096d4a8e93f74eb05c8dcbc53 (diff) | |
| download | bcm5719-llvm-27aa9b4028f7841c4efc8d7541c830ba2250c810.tar.gz bcm5719-llvm-27aa9b4028f7841c4efc8d7541c830ba2250c810.zip | |
[Objective-C Sema] Fixes a typo which did not allow
bridge casting to super class of object's bridge type.
rdar://18311183
llvm-svn: 234652
Diffstat (limited to 'clang/test/SemaObjC/objcbridge-attribute.m')
| -rw-r--r-- | clang/test/SemaObjC/objcbridge-attribute.m | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/clang/test/SemaObjC/objcbridge-attribute.m b/clang/test/SemaObjC/objcbridge-attribute.m index 2969ebef36a..9cab64ec6b2 100644 --- a/clang/test/SemaObjC/objcbridge-attribute.m +++ b/clang/test/SemaObjC/objcbridge-attribute.m @@ -73,7 +73,7 @@ typedef CFErrorRef1 CFErrorRef2; // expected-note {{declared here}} void Test2(CFErrorRef2 cf, NSError *ns, NSString *str, Class c, CFUColor2Ref cf2) { (void)(NSString *)cf; // expected-warning {{'CFErrorRef2' (aka 'struct __CFErrorRef *') bridges to NSError, not 'NSString'}} (void)(NSError *)cf; // okay - (void)(MyError*)cf; // okay, + (void)(MyError*)cf; // expected-warning {{'CFErrorRef2' (aka 'struct __CFErrorRef *') bridges to NSError, not 'MyError'}} (void)(NSUColor *)cf2; // okay (void)(CFErrorRef)ns; // okay (void)(CFErrorRef)str; // expected-warning {{'NSString' cannot bridge to 'CFErrorRef' (aka 'struct __CFErrorRef *')}} @@ -141,3 +141,14 @@ CFDictionaryRef bar() __attribute__((cf_returns_not_retained)); void Test9() { NSNumber *w2 = (NSNumber*) bar(); // expected-error {{CF object of type 'CFDictionaryRef' (aka 'struct __CFDictionary *') is bridged to 'NSDictionary', which is not an Objective-C class}} } + +// rdar://18311183 +@interface NSObject @end + +@interface NSFont : NSObject @end + +typedef struct __attribute__ ((objc_bridge(NSFont))) __CFFontRef * CFFontRef; + +void Test10(CFFontRef cf) { + (void)(__bridge NSObject *)cf; +} |

