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 int test1() { 30 extern int extvar; 31 extvar = 2; 32 extern int extfn(); 33 return extfn(); 34 } 35 36 // RUN: c-index-test -index-file %s -target x86_64-apple-macosx10.7 > %t 37 // RUN: FileCheck %s -input-file=%t 38 // CHECK: [indexDeclaration]: kind: objc-class | name: I | {{.*}} | loc: 1:12 39 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: prop | {{.*}} | loc: 3:2 40 // CHECK: [indexDeclaration]: kind: objc-property | name: prop | {{.*}} | loc: 2:25 41 // CHECK: [indexDeclaration]: kind: objc-category | name: | {{.*}} | loc: 6:12 42 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: setProp: | {{.*}} | loc: 7:33 43 // CHECK: [indexDeclaration]: kind: objc-property | name: prop | {{.*}} | loc: 7:33 44 45 // CHECK: [indexDeclaration]: kind: objc-ivar | name: _prop | {{.*}} | loc: 11:20 46 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: prop | {{.*}} | loc: 11:13 | {{.*}} | lexical-container: [I:10:17] 47 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: setProp: | {{.*}} | loc: 11:13 | {{.*}} | lexical-container: [I:10:17] 48 49 // CHECK: [indexDeclaration]: kind: objc-ivar | name: _auto_prop | {{.*}} | loc: 20:33 50 // CHECK: [indexEntityReference]: kind: objc-ivar | name: _auto_prop | {{.*}} | loc: 25:3 51 52 // CHECK: [indexDeclaration]: kind: function | name: test1 | {{.*}} | loc: 29:5 53 // CHECK: [indexDeclaration]: kind: variable | name: extvar | {{.*}} | loc: 30:14 54 // CHECK: [indexEntityReference]: kind: variable | name: extvar | {{.*}} | loc: 31:3 55 // CHECK: [indexDeclaration]: kind: function | name: extfn | {{.*}} | loc: 32:14 56 // CHECK: [indexEntityReference]: kind: function | name: extfn | {{.*}} | loc: 33:10 57