annotate-tokens-pp.c revision 9f1e3ff3b3095967e2b92b57a53524e2d6bb141c
19f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor#define BAR baz
29f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor#define WIBBLE(X, Y)
39f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas GregorWIBBLE(int, float)
49f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregorint BAR;
59f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor#include "foo.h"
69f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor
79f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// RUN: c-index-test -test-annotate-tokens=%s:1:1:6:1 -I%S/Inputs %s | FileCheck %s
89f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: "#" [1:1 - 1:2] preprocessing directive=
99f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "define" [1:2 - 1:8] preprocessing directive=
109f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "BAR" [1:9 - 1:12] preprocessing directive=
119f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "baz" [1:13 - 1:16] preprocessing directive=
129f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: "#" [2:1 - 2:2] preprocessing directive=
139f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "define" [2:2 - 2:8] preprocessing directive=
149f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "WIBBLE" [2:9 - 2:15] preprocessing directive=
159f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: "(" [2:15 - 2:16] preprocessing directive=
169f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "X" [2:16 - 2:17] preprocessing directive=
179f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: "," [2:17 - 2:18] preprocessing directive=
189f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "Y" [2:19 - 2:20] preprocessing directive=
199f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: ")" [2:20 - 2:21] preprocessing directive=
209f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "WIBBLE" [3:1 - 3:7]
219f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: "(" [3:7 - 3:8]
229f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Keyword: "int" [3:8 - 3:11]
239f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: "," [3:11 - 3:12]
249f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Keyword: "float" [3:13 - 3:18]
259f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: ")" [3:18 - 3:19]
269f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Keyword: "int" [4:1 - 4:4]
279f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "BAR" [4:5 - 4:8]
289f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: ";" [4:8 - 4:9]
299f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Punctuation: "#" [5:1 - 5:2] preprocessing directive=
309f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Identifier: "include" [5:2 - 5:9] preprocessing directive=
319f1e3ff3b3095967e2b92b57a53524e2d6bb141cDouglas Gregor// CHECK: Literal: ""foo.h"" [5:10 - 5:17] preprocessing directive=
32