[docs] Add LICENSE.txt to the root of the mono-repo
[llvm-project.git] / clang / test / Index / index-suppress-refs.m
blobcaf67baea878c43ca33834710652ca00b4c27fc1
2 #include "index-suppress-refs.h"
4 #define TYPEDEF(x) typedef int x
5 TYPEDEF(MyInt);
7 MyInt gx;
9 @class I;
11 @interface I(cat)
12 -(I*)meth;
13 @end
15 @class I;
17 @interface S : B<P>
18 -(void)meth:(B*)b :(id<P>)p;
19 @end
21 // RUN: env CINDEXTEST_SUPPRESSREFS=1 c-index-test -index-file %s | FileCheck %s
22 // CHECK:      [indexDeclaration]: kind: objc-class | name: I
23 // CHECK-NEXT:      <ObjCContainerInfo>: kind: interface
24 // CHECK-NEXT: [indexDeclaration]: kind: objc-class | name: B
25 // CHECK-NEXT:      <ObjCContainerInfo>: kind: interface
26 // CHECK-NEXT: [indexDeclaration]: kind: objc-protocol | name: P
27 // CHECK-NEXT:      <ObjCContainerInfo>: kind: interface
28 // CHECK-NEXT: [indexDeclaration]: kind: typedef | name: MyInt
29 // CHECK-NEXT: [indexDeclaration]: kind: variable | name: gx
30 // CHECK-NEXT: [indexDeclaration]: kind: objc-class | name: I
31 // CHECK-NEXT:      <ObjCContainerInfo>: kind: forward-ref
32 // CHECK-NEXT: [indexDeclaration]: kind: objc-category | name: cat
33 // CHECK-NEXT:      <ObjCContainerInfo>: kind: interface
34 // CHECK-NEXT:      <ObjCCategoryInfo>: class: kind: objc-class | name: I
35 // CHECK-NEXT: [indexDeclaration]: kind: objc-instance-method | name: meth
36 // CHECK-NOT:  [indexEntityReference]: kind: objc-class | name: I
37 // CHECK-NOT:  [indexDeclaration]: kind: objc-class | name: I
38 // CHECK-NEXT: [indexDeclaration]: kind: objc-class | name: S
39 // CHECK-NEXT:      <ObjCContainerInfo>: kind: interface
40 // CHECK-NEXT:      <base>: kind: objc-class | name: B
41 // CHECK-NEXT:      <protocol>: kind: objc-protocol | name: P
42 // CHECK-NEXT: [indexDeclaration]: kind: objc-instance-method | name: meth::
43 // CHECK-NOT:  [indexEntityReference]: kind: objc-class | name: B
44 // CHECK-NOT:  [indexEntityReference]: kind: objc-protocol | name: P