2014-08-14 05:07:35 +08:00
|
|
|
// 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
|
|
|
|
|
2014-08-14 07:38:04 +08:00
|
|
|
@interface NSObject
|
|
|
|
+ (void)clsMethod:(int*)arg;
|
|
|
|
@end
|
2014-08-14 05:07:35 +08:00
|
|
|
|
|
|
|
@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, ...;
|
2014-08-14 07:38:04 +08:00
|
|
|
+ (void)clsMethod:(float*)arg;
|
2014-08-14 05:07:35 +08:00
|
|
|
@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
|
2014-08-14 07:38:04 +08:00
|
|
|
|
|
|
|
void func( Class c, float g ) {
|
|
|
|
[c clsMethod: &g];
|
|
|
|
}
|
2014-08-28 00:38:47 +08:00
|
|
|
|
|
|
|
// 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];
|
|
|
|
}
|