]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Index/index-decls.m
Vendor import of clang trunk r161861:
[FreeBSD/FreeBSD.git] / test / Index / index-decls.m
1 @interface I
2 @property (readonly) id prop;
3  -(id)prop;
4 @end
5
6 @interface I()
7 @property (assign,readwrite) id prop;
8 @end
9
10 @implementation I
11 @synthesize prop = _prop;
12 @end
13
14 // rdar://11015325
15 @interface I1
16 __attribute__((something)) @interface I2 @end
17 @end
18
19 @interface I3
20 @property (assign,readwrite) id auto_prop;
21 @end
22
23 @implementation I3
24 -(void)meth {
25   _auto_prop = 0;
26 }
27 @end
28
29 // RUN: c-index-test -index-file %s -target x86_64-apple-macosx10.7 > %t
30 // RUN: FileCheck %s -input-file=%t
31 // CHECK: [indexDeclaration]: kind: objc-class | name: I | {{.*}} | loc: 1:12
32 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: prop | {{.*}} | loc: 3:2
33 // CHECK: [indexDeclaration]: kind: objc-property | name: prop | {{.*}} | loc: 2:25
34 // CHECK: [indexDeclaration]: kind: objc-category | name:  | {{.*}} | loc: 6:12
35 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: setProp: | {{.*}} | loc: 7:33
36 // CHECK: [indexDeclaration]: kind: objc-property | name: prop | {{.*}} | loc: 7:33
37
38 // CHECK: [indexDeclaration]: kind: objc-ivar | name: _prop | {{.*}} | loc: 11:20
39 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: prop | {{.*}} | loc: 11:13 | {{.*}} | lexical-container: [I:10:17]
40 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: setProp: | {{.*}} | loc: 11:13 | {{.*}} | lexical-container: [I:10:17]
41
42 // CHECK: [indexDeclaration]: kind: objc-ivar | name: _auto_prop | {{.*}} | loc: 20:33
43 // CHECK: [indexEntityReference]: kind: objc-ivar | name: _auto_prop | {{.*}} | loc: 25:3