Home | History | Annotate | Download | only in Index
      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