blob: 3ecb8e634abc25c0acf0cacfb5be7e2433b513f5 [file] [log] [blame]
John Thompson0bc443b2013-11-12 02:04:53 +00001// RUN: pp-trace -ignore FileChanged %s -undef -target x86_64 -std=c++11 | FileCheck --strict-whitespace %s
2
3#if 1
4#endif
5
6#if 0
7#endif
8
9#if 1
10#else
11#endif
12
13#if 0
14#else
15#endif
16
17#if 1
18#elif 1
19#endif
20#if 1
21#elif 0
22#endif
23
24#if 0
25#elif 1
26#endif
27#if 0
28#elif 0
29#endif
30#if 1
31#elif 1
32#endif
33#if 1
34#elif 0
35#endif
36
37#if 0
38#elif 1
39#else
40#endif
41#if 0
42#elif 0
43#else
44#endif
45#if 1
46#elif 1
47#else
48#endif
49#if 1
50#elif 0
51#else
52#endif
53
54#define MACRO 1
55#ifdef MACRO
56#endif
57#ifdef NO_MACRO
58#endif
59#ifndef MACRO
60#endif
61#ifndef NO_MACRO
62#endif
63
64// CHECK: ---
65// CHECK-NEXT: - Callback: MacroDefined
66// CHECK-NEXT: MacroNameTok: __STDC__
67// CHECK-NEXT: MacroDirective: MD_Define
68// CHECK-NEXT: - Callback: MacroDefined
69// CHECK-NEXT: MacroNameTok: __STDC_HOSTED__
70// CHECK-NEXT: MacroDirective: MD_Define
71// CHECK-NEXT: - Callback: MacroDefined
72// CHECK-NEXT: MacroNameTok: __cplusplus
73// CHECK-NEXT: MacroDirective: MD_Define
74// CHECK-NEXT: - Callback: MacroDefined
75// CHECK-NEXT: MacroNameTok: __STDC_UTF_16__
76// CHECK-NEXT: MacroDirective: MD_Define
77// CHECK-NEXT: - Callback: MacroDefined
78// CHECK-NEXT: MacroNameTok: __STDC_UTF_32__
79// CHECK-NEXT: MacroDirective: MD_Define
80// CHECK-NEXT: - Callback: If
81// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:3:2"
82// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:3:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:4:1"]
John Thompson87f9fef2013-12-07 08:41:15 +000083// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +000084// CHECK-NEXT: - Callback: Endif
85// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:4:2"
86// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:3:2"
87// CHECK-NEXT: - Callback: If
88// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:6:2"
89// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:6:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:7:1"]
John Thompson87f9fef2013-12-07 08:41:15 +000090// CHECK-NEXT: ConditionValue: CVK_False
John Thompson0bc443b2013-11-12 02:04:53 +000091// CHECK-NEXT: - Callback: Endif
92// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:7:2"
93// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:6:2"
94// CHECK-NEXT: - Callback: SourceRangeSkipped
95// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:6:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:7:2"]
96// CHECK-NEXT: - Callback: If
97// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:9:2"
98// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:9:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:10:1"]
John Thompson87f9fef2013-12-07 08:41:15 +000099// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000100// CHECK-NEXT: - Callback: Else
101// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:10:2"
102// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:9:2"
103// CHECK-NEXT: - Callback: Endif
104// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:11:2"
105// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:9:2"
106// CHECK-NEXT: - Callback: SourceRangeSkipped
107// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:10:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:11:2"]
108// CHECK-NEXT: - Callback: If
109// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:13:2"
110// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:13:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:14:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000111// CHECK-NEXT: ConditionValue: CVK_False
John Thompson0bc443b2013-11-12 02:04:53 +0000112// CHECK-NEXT: - Callback: Else
113// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:14:2"
114// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:13:2"
115// CHECK-NEXT: - Callback: SourceRangeSkipped
116// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:13:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:14:2"]
117// CHECK-NEXT: - Callback: Endif
118// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:15:2"
119// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:13:2"
120// CHECK-NEXT: - Callback: If
121// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:17:2"
122// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:17:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:18:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000123// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000124// CHECK-NEXT: - Callback: Elif
125// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:18:2"
126// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:18:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:19:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000127// CHECK-NEXT: ConditionValue: CVK_NotEvaluated
John Thompson0bc443b2013-11-12 02:04:53 +0000128// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:17:2"
129// CHECK-NEXT: - Callback: Endif
130// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:19:2"
131// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:17:2"
132// CHECK-NEXT: - Callback: SourceRangeSkipped
133// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:18:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:19:2"]
134// CHECK-NEXT: - Callback: If
135// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:20:2"
136// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:20:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:21:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000137// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000138// CHECK-NEXT: - Callback: Elif
139// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:21:2"
140// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:21:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:22:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000141// CHECK-NEXT: ConditionValue: CVK_NotEvaluated
John Thompson0bc443b2013-11-12 02:04:53 +0000142// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:20:2"
143// CHECK-NEXT: - Callback: Endif
144// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:22:2"
145// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:20:2"
146// CHECK-NEXT: - Callback: SourceRangeSkipped
147// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:21:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:22:2"]
148// CHECK-NEXT: - Callback: If
149// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:24:2"
150// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:24:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:25:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000151// CHECK-NEXT: ConditionValue: CVK_False
John Thompson0bc443b2013-11-12 02:04:53 +0000152// CHECK-NEXT: - Callback: Elif
153// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:25:2"
154// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:25:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:26:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000155// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000156// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:24:2"
157// CHECK-NEXT: - Callback: SourceRangeSkipped
158// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:24:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:25:2"]
159// CHECK-NEXT: - Callback: Endif
160// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:26:2"
161// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:24:2"
162// CHECK-NEXT: - Callback: If
163// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:27:2"
164// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:27:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:28:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000165// CHECK-NEXT: ConditionValue: CVK_False
John Thompson17c35732013-12-04 20:19:30 +0000166// CHECK-NEXT: - Callback: Elif
167// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:28:2"
168// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:28:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:29:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000169// CHECK-NEXT: ConditionValue: CVK_False
John Thompson17c35732013-12-04 20:19:30 +0000170// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:27:2"
John Thompson0bc443b2013-11-12 02:04:53 +0000171// CHECK-NEXT: - Callback: Endif
172// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:29:2"
173// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:27:2"
174// CHECK-NEXT: - Callback: SourceRangeSkipped
175// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:27:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:29:2"]
176// CHECK-NEXT: - Callback: If
177// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:30:2"
178// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:30:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:31:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000179// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000180// CHECK-NEXT: - Callback: Elif
181// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:31:2"
182// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:31:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:32:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000183// CHECK-NEXT: ConditionValue: CVK_NotEvaluated
John Thompson0bc443b2013-11-12 02:04:53 +0000184// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:30:2"
185// CHECK-NEXT: - Callback: Endif
186// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:32:2"
187// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:30:2"
188// CHECK-NEXT: - Callback: SourceRangeSkipped
189// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:31:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:32:2"]
190// CHECK-NEXT: - Callback: If
191// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:33:2"
192// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:33:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:34:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000193// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000194// CHECK-NEXT: - Callback: Elif
195// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:34:2"
196// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:34:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:35:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000197// CHECK-NEXT: ConditionValue: CVK_NotEvaluated
John Thompson0bc443b2013-11-12 02:04:53 +0000198// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:33:2"
199// CHECK-NEXT: - Callback: Endif
200// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:35:2"
201// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:33:2"
202// CHECK-NEXT: - Callback: SourceRangeSkipped
203// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:34:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:35:2"]
204// CHECK-NEXT: - Callback: If
205// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:37:2"
206// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:37:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:38:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000207// CHECK-NEXT: ConditionValue: CVK_False
John Thompson0bc443b2013-11-12 02:04:53 +0000208// CHECK-NEXT: - Callback: Elif
209// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:38:2"
210// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:38:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:39:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000211// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000212// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:37:2"
213// CHECK-NEXT: - Callback: SourceRangeSkipped
214// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:37:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:38:2"]
215// CHECK-NEXT: - Callback: Else
216// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:39:2"
217// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:37:2"
218// CHECK-NEXT: - Callback: Endif
219// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:40:2"
220// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:37:2"
221// CHECK-NEXT: - Callback: SourceRangeSkipped
222// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:39:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:40:2"]
223// CHECK-NEXT: - Callback: If
224// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:41:2"
225// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:41:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:42:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000226// CHECK-NEXT: ConditionValue: CVK_False
John Thompson17c35732013-12-04 20:19:30 +0000227// CHECK-NEXT: - Callback: Elif
228// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:42:2"
229// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:42:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:43:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000230// CHECK-NEXT: ConditionValue: CVK_False
John Thompson17c35732013-12-04 20:19:30 +0000231// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:41:2"
John Thompson0bc443b2013-11-12 02:04:53 +0000232// CHECK-NEXT: - Callback: Else
233// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:43:2"
234// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:41:2"
235// CHECK-NEXT: - Callback: SourceRangeSkipped
236// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:41:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:43:2"]
237// CHECK-NEXT: - Callback: Endif
238// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:44:2"
239// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:41:2"
240// CHECK-NEXT: - Callback: If
241// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:45:2"
242// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:45:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:46:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000243// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000244// CHECK-NEXT: - Callback: Elif
245// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:46:2"
246// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:46:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:47:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000247// CHECK-NEXT: ConditionValue: CVK_NotEvaluated
John Thompson0bc443b2013-11-12 02:04:53 +0000248// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:45:2"
249// CHECK-NEXT: - Callback: Endif
250// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:48:2"
251// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:45:2"
252// CHECK-NEXT: - Callback: SourceRangeSkipped
253// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:46:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:48:2"]
254// CHECK-NEXT: - Callback: If
255// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:49:2"
256// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:49:4", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:50:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000257// CHECK-NEXT: ConditionValue: CVK_True
John Thompson0bc443b2013-11-12 02:04:53 +0000258// CHECK-NEXT: - Callback: Elif
259// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:50:2"
260// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:50:6", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:51:1"]
John Thompson87f9fef2013-12-07 08:41:15 +0000261// CHECK-NEXT: ConditionValue: CVK_NotEvaluated
John Thompson0bc443b2013-11-12 02:04:53 +0000262// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:49:2"
263// CHECK-NEXT: - Callback: Endif
264// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:52:2"
265// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:49:2"
266// CHECK-NEXT: - Callback: SourceRangeSkipped
267// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:50:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:52:2"]
268// CHECK-NEXT: - Callback: MacroDefined
269// CHECK-NEXT: MacroNameTok: MACRO
270// CHECK-NEXT: MacroDirective: MD_Define
271// CHECK-NEXT: - Callback: Ifdef
272// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:55:2"
273// CHECK-NEXT: MacroNameTok: MACRO
274// CHECK-NEXT: MacroDirective: MD_Define
275// CHECK-NEXT: - Callback: Endif
276// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:56:2"
277// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:55:2"
278// CHECK-NEXT: - Callback: Ifdef
279// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:57:2"
280// CHECK-NEXT: MacroNameTok: NO_MACRO
281// CHECK-NEXT: MacroDirective: (null)
282// CHECK-NEXT: - Callback: Endif
283// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:58:2"
284// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:57:2"
285// CHECK-NEXT: - Callback: SourceRangeSkipped
286// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:57:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:58:2"]
287// CHECK-NEXT: - Callback: Ifndef
288// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:59:2"
289// CHECK-NEXT: MacroNameTok: MACRO
290// CHECK-NEXT: MacroDirective: MD_Define
291// CHECK-NEXT: - Callback: Endif
292// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:60:2"
293// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:59:2"
294// CHECK-NEXT: - Callback: SourceRangeSkipped
295// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-conditional.cpp:59:2", "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:60:2"]
296// CHECK-NEXT: - Callback: Ifndef
297// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:61:2"
298// CHECK-NEXT: MacroNameTok: NO_MACRO
299// CHECK-NEXT: MacroDirective: (null)
300// CHECK-NEXT: - Callback: Endif
301// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:62:2"
302// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-conditional.cpp:61:2"
303// CHECK-NEXT: - Callback: EndOfMainFile
304// CHECK-NEXT: ...