Argyrios Kyrtzidis | ff9c9e1 | 2012-10-18 00:16:56 +0000 | [diff] [blame] | 1 | |
| 2 | #include <DependsOnModule/DependsOnModule.h> |
Douglas Gregor | 1b257af | 2012-12-11 22:11:52 +0000 | [diff] [blame] | 3 | @import DependsOnModule; |
Argyrios Kyrtzidis | ff9c9e1 | 2012-10-18 00:16:56 +0000 | [diff] [blame] | 4 | int glob; |
| 5 | |
| 6 | // RUN: rm -rf %t.cache |
| 7 | // RUN: c-index-test -test-annotate-tokens=%s:2:1:5:1 %s -fmodule-cache-path %t.cache -fmodules -F %S/../Modules/Inputs \ |
| 8 | // RUN: | FileCheck %s |
| 9 | |
| 10 | // CHECK: Punctuation: "#" [2:1 - 2:2] inclusion directive=[[INC_DIR:DependsOnModule[/\\]DependsOnModule\.h \(.*/Modules/Inputs/DependsOnModule\.framework[/\\]Headers[/\\]DependsOnModule.h\)]] |
| 11 | // CHECK-NEXT: Identifier: "include" [2:2 - 2:9] inclusion directive=[[INC_DIR]] |
| 12 | // CHECK-NEXT: Punctuation: "<" [2:10 - 2:11] inclusion directive=[[INC_DIR]] |
| 13 | // CHECK-NEXT: Identifier: "DependsOnModule" [2:11 - 2:26] inclusion directive=[[INC_DIR]] |
| 14 | // CHECK-NEXT: Punctuation: "/" [2:26 - 2:27] inclusion directive=[[INC_DIR]] |
| 15 | // CHECK-NEXT: Identifier: "DependsOnModule" [2:27 - 2:42] inclusion directive=[[INC_DIR]] |
| 16 | // CHECK-NEXT: Punctuation: "." [2:42 - 2:43] inclusion directive=[[INC_DIR]] |
| 17 | // CHECK-NEXT: Identifier: "h" [2:43 - 2:44] inclusion directive=[[INC_DIR]] |
| 18 | // CHECK-NEXT: Punctuation: ">" [2:44 - 2:45] inclusion directive=[[INC_DIR]] |
| 19 | // CHECK-NEXT: Punctuation: "@" [3:1 - 3:2] ModuleImport=DependsOnModule:3:1 |
Douglas Gregor | 1b257af | 2012-12-11 22:11:52 +0000 | [diff] [blame] | 20 | // CHECK-NEXT: Keyword: "import" [3:2 - 3:8] ModuleImport=DependsOnModule:3:1 |
| 21 | // CHECK-NEXT: Identifier: "DependsOnModule" [3:9 - 3:24] ModuleImport=DependsOnModule:3:1 |
| 22 | // CHECK-NEXT: Punctuation: ";" [3:24 - 3:25] |
Argyrios Kyrtzidis | ff9c9e1 | 2012-10-18 00:16:56 +0000 | [diff] [blame] | 23 | // CHECK-NEXT: Keyword: "int" [4:1 - 4:4] VarDecl=glob:4:5 |
| 24 | // CHECK-NEXT: Identifier: "glob" [4:5 - 4:9] VarDecl=glob:4:5 |
| 25 | // CHECK-NEXT: Punctuation: ";" [4:9 - 4:10] |
| 26 | |
| 27 | // RUN: c-index-test -test-annotate-tokens=%S/../Modules/Inputs/Module.framework/Headers/Sub.h:1:1:3:1 %s -fmodule-cache-path %t.cache -fmodules -F %S/../Modules/Inputs \ |
| 28 | // RUN: | FileCheck %s -check-prefix=CHECK-MOD |
| 29 | |
| 30 | // CHECK-MOD: Punctuation: "#" [1:1 - 1:2] inclusion directive=[[INC_DIR:Module[/\\]Sub2\.h \(.*/Modules/Inputs/Module\.framework[/\\]Headers[/\\]Sub2.h\)]] |
| 31 | // CHECK-MOD-NEXT: Identifier: "include" [1:2 - 1:9] inclusion directive=[[INC_DIR]] |
| 32 | // CHECK-MOD-NEXT: Punctuation: "<" [1:10 - 1:11] inclusion directive=[[INC_DIR]] |
| 33 | // CHECK-MOD-NEXT: Identifier: "Module" [1:11 - 1:17] inclusion directive=[[INC_DIR]] |
| 34 | // CHECK-MOD-NEXT: Punctuation: "/" [1:17 - 1:18] inclusion directive=[[INC_DIR]] |
| 35 | // CHECK-MOD-NEXT: Identifier: "Sub2" [1:18 - 1:22] inclusion directive=[[INC_DIR]] |
| 36 | // CHECK-MOD-NEXT: Punctuation: "." [1:22 - 1:23] inclusion directive=[[INC_DIR]] |
| 37 | // CHECK-MOD-NEXT: Identifier: "h" [1:23 - 1:24] inclusion directive=[[INC_DIR]] |
| 38 | // CHECK-MOD-NEXT: Punctuation: ">" [1:24 - 1:25] inclusion directive=[[INC_DIR]] |
| 39 | // CHECK-MOD-NEXT: Keyword: "int" [2:1 - 2:4] VarDecl=Module_Sub:2:6 |
| 40 | // CHECK-MOD-NEXT: Punctuation: "*" [2:5 - 2:6] VarDecl=Module_Sub:2:6 |
| 41 | // CHECK-MOD-NEXT: Identifier: "Module_Sub" [2:6 - 2:16] VarDecl=Module_Sub:2:6 |
| 42 | // CHECK-MOD-NEXT: Punctuation: ";" [2:16 - 2:17] |