summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaObjC/resolve-method-in-global-pool.m
blob: 523856d663f63ed4d45d7d96fa2c0c2242ad776c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
// 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];
}
OpenPOWER on IntegriCloud