1 | // Note: the run lines follow their respective tests, since line/column |
2 | // matter in this test. |
3 | |
4 | struct StructA { }; |
5 | struct StructB { }; |
6 | struct StructC { }; |
7 | int ValueA; |
8 | int ValueB; |
9 | |
10 | void f() { |
11 | |
12 | int ValueA = 0; |
13 | int StructA = 0; |
14 | struct StructB { }; |
15 | |
16 | struct StructA sa = { }; |
17 | } |
18 | |
19 | // RUN: c-index-test -code-completion-at=%s:16:3 %s > %t |
20 | // RUN: FileCheck -check-prefix=CHECK-CC1 -input-file=%t %s |
21 | // RUN: env CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:16:3 %s | FileCheck -check-prefix=CHECK-CC1 %s |
22 | // CHECK-CC1: VarDecl:{ResultType int}{TypedText StructA} (34) |
23 | // CHECK-CC1: VarDecl:{ResultType int}{TypedText ValueA} (34) |
24 | // CHECK-CC1-NOT: VarDecl:{ResultType int}{TypedText ValueA} (50) |
25 | // CHECK-CC1: VarDecl:{ResultType int}{TypedText ValueB} (50) |
26 | // RUN: c-index-test -code-completion-at=%s:16:10 %s > %t |
27 | // RUN: FileCheck -check-prefix=CHECK-CC2 -input-file=%t %s |
28 | // CHECK-CC2: StructDecl:{TypedText StructA} (50) |
29 | // CHECK-CC2-NOT: StructDecl:{TypedText StructB} (50) |
30 | // CHECK-CC2: StructDecl:{TypedText StructC} (50) |
31 | // RUN: env CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:16:10 %s > %t |
32 | // RUN: FileCheck -check-prefix=CHECK-CC2 -input-file=%t %s |
33 | |