| // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only -verify -fblocks -Wno-objc-root-class %s |
| // RUN: %clang_cc1 -x objective-c++ -triple x86_64-apple-darwin10 -fsyntax-only -verify -fblocks -Wno-objc-root-class %s |
| // expected-no-diagnostics |
| |
| // rdar://16808765 |
| |
| @interface NSObject |
| + (void)clsMethod:(int*)arg; |
| @end |
| |
| @class NSDictionary; |
| @class NSError; |
| |
| @interface Foo : NSObject |
| - (void)getDonuts:(void (^)(NSDictionary *, NSError *))replyBlock; |
| - (void)getCake:(int*)arg, ...; |
| @end |
| |
| @protocol Protocol |
| @required |
| - (void)getDonuts:(void (^)(NSDictionary *))replyBlock; |
| - (void)getCake:(float*)arg, ...; |
| + (void)clsMethod:(float*)arg; |
| @end |
| |
| @implementation Foo |
| { |
| float g; |
| } |
| |
| - (void)getDonuts:(void (^)(NSDictionary *, NSError *))replyBlock { |
| [(id) 0 getDonuts:^(NSDictionary *replyDict) { }]; |
| } |
| |
| - (void) getCake:(int*)arg, ... { |
| [(id)0 getCake: &g, 1,3.14]; |
| } |
| @end |
| |
| void func( Class c, float g ) { |
| [c clsMethod: &g]; |
| } |
| |
| // rdar://18095772 |
| @protocol NSKeyedArchiverDelegate @end |
| |
| @interface NSKeyedArchiver |
| @property (assign) id <NSKeyedArchiverDelegate> delegate; |
| @end |
| |
| @interface NSConnection |
| @property (assign) id delegate; |
| @end |
| |
| extern id NSApp; |
| |
| @interface AppDelegate |
| @end |
| |
| AppDelegate* GetDelegate() |
| { |
| return [NSApp delegate]; |
| } |