@class Protocol; @protocol Prot @end struct FooS { int x; }; void foo() { Protocol *p = @protocol(Prot); @encode(struct FooS); } @interface I +(void)clsMeth; @end void foo2() { [I clsMeth]; } @protocol ForwardProt; // RUN: c-index-test -index-file %s | FileCheck %s // CHECK: [indexEntityReference]: kind: objc-protocol | name: Prot | {{.*}} | loc: 12:27 // CHECK: [indexEntityReference]: kind: struct | name: FooS | {{.*}} | loc: 13:18 // CHECK: [indexEntityReference]: kind: objc-class | name: I | {{.*}} | loc: 21:4 // CHECK: [indexDeclaration]: kind: objc-protocol | name: ForwardProt | {{.*}} | loc: 24:11 // CHECK-NEXT: <ObjCContainerInfo>: kind: forward-ref