complete-synthesized.m revision 112c3307aaa9ae9ee6ff5c2b4f6a53b1ea3c6f19
1// Note: this test is line- and column-sensitive. Test commands are at 2// the end. 3 4 5@interface A 6@property int prop1; 7@end 8 9@interface B : A { 10 float _prop2; 11} 12@property float prop2; 13@property short prop3; 14@end 15 16@interface B () 17@property double prop4; 18@end 19 20@implementation B 21@synthesize prop2 = _prop2; 22 23- (int)method { 24 return _prop2; 25} 26 27@dynamic prop3; 28 29- (short)method2 { 30 return prop4; 31} 32 33- (short)method3 { 34 return prop3; 35} 36@end 37 38// RUN: c-index-test -code-completion-at=%s:24:1 -Xclang -fobjc-nonfragile-abi %s | FileCheck -check-prefix=CHECK-CC1 %s 39// CHECK-CC1: NotImplemented:{TypedText _Bool} (50) 40// CHECK-CC1: ObjCIvarDecl:{ResultType float}{TypedText _prop2} (35) 41// CHECK-CC1-NOT: prop2 42// CHECK-CC1: ObjCPropertyDecl:{ResultType short}{TypedText prop3} (35) 43// CHECK-CC1: ObjCPropertyDecl:{ResultType double}{TypedText prop4} (35) 44 45// RUN: c-index-test -code-completion-at=%s:30:2 -Xclang -fobjc-nonfragile-abi %s | FileCheck -check-prefix=CHECK-CC2 %s 46// CHECK-CC2: NotImplemented:{TypedText _Bool} (50) 47// CHECK-CC2: ObjCIvarDecl:{ResultType float}{TypedText _prop2} (35) 48// CHECK-CC2-NOT: prop3 49// CHECK-CC2: ObjCPropertyDecl:{ResultType double}{TypedText prop4} (35) 50 51// RUN: c-index-test -code-completion-at=%s:34:2 -Xclang -fobjc-nonfragile-abi %s | FileCheck -check-prefix=CHECK-CC3 %s 52// CHECK-CC3: NotImplemented:{TypedText _Bool} (50) 53// CHECK-CC3: ObjCIvarDecl:{ResultType float}{TypedText _prop2} (35) 54// CHECK-CC3: ObjCPropertyDecl:{ResultType double}{TypedText prop4} 55// CHECK-CC3-NOT: ObjCPropertyDecl:{ResultType double}{TypedText prop4} (35) 56// CHECK-CC1: restrict 57