]>
Commit | Line | Data |
---|---|---|
223e47cc LB |
1 | // RUN: %clang_cc1 -verify -E -frewrite-includes -DFIRST -I %S/Inputs %s -o - | FileCheck -strict-whitespace %s |
2 | // RUN: %clang_cc1 -verify -E -frewrite-includes -P -DFIRST -I %S/Inputs %s -o - | FileCheck -check-prefix=CHECKNL -strict-whitespace %s | |
3 | // STARTCOMPARE | |
4 | #define A(a,b) a ## b | |
5 | A(1,2) | |
6 | #include "rewrite-includes1.h" | |
7 | #ifdef FIRST | |
8 | #define HEADER "rewrite-includes3.h" | |
9 | #include HEADER | |
10 | #else | |
11 | #include "rewrite-includes4.h" | |
12 | #endif | |
13 | #/**/include /**/ "rewrite-includes5.h" /**/ \ | |
14 | ||
15 | #include "rewrite-includes6.h" // comment | |
16 | ||
17 | #include "rewrite-includes6.h" /* comment | |
18 | continues */ | |
19 | #include "rewrite-includes7.h" | |
20 | #include "rewrite-includes7.h" | |
21 | // ENDCOMPARE | |
22 | // CHECK: {{^}}// STARTCOMPARE{{$}} | |
23 | // CHECK-NEXT: {{^}}#define A(a,b) a ## b{{$}} | |
24 | // CHECK-NEXT: {{^}}A(1,2){{$}} | |
25 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
26 | // CHECK-NEXT: {{^}}#include "rewrite-includes1.h"{{$}} | |
27 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
28 | // CHECK-NEXT: {{^}}# 1 "{{.*[/\\]Inputs[/\\]}}rewrite-includes1.h" 1{{$}} | |
29 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
30 | // CHECK-NEXT: {{^}}#pragma clang system_header{{$}} | |
31 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
32 | // CHECK-NEXT: {{^}}# 2 "{{.*[/\\]Inputs[/\\]}}rewrite-includes1.h" 3{{$}} | |
33 | // CHECK-NEXT: {{^}}included_line1{{$}} | |
34 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
35 | // CHECK-NEXT: {{^}}#include "rewrite-includes2.h"{{$}} | |
36 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
37 | // CHECK-NEXT: {{^}}# 1 "{{.*[/\\]Inputs[/\\]}}rewrite-includes2.h" 1 3{{$}} | |
38 | // CHECK-NEXT: {{^}}included_line2{{$}} | |
39 | // CHECK-NEXT: {{^}}# 4 "{{.*[/\\]Inputs[/\\]}}rewrite-includes1.h" 2 3{{$}} | |
40 | // CHECK-NEXT: {{^}}# 7 "{{.*}}rewrite-includes.c" 2{{$}} | |
41 | // CHECK-NEXT: {{^}}#ifdef FIRST{{$}} | |
42 | // CHECK-NEXT: {{^}}#define HEADER "rewrite-includes3.h"{{$}} | |
43 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
44 | // CHECK-NEXT: {{^}}#include HEADER{{$}} | |
45 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
46 | // CHECK-NEXT: {{^}}# 1 "{{.*[/\\]Inputs[/\\]}}rewrite-includes3.h" 1{{$}} | |
47 | // CHECK-NEXT: {{^}}included_line3{{$}} | |
48 | // CHECK-NEXT: {{^}}# 10 "{{.*}}rewrite-includes.c" 2{{$}} | |
49 | // CHECK-NEXT: {{^}}#else{{$}} | |
50 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
51 | // CHECK-NEXT: {{^}}#include "rewrite-includes4.h"{{$}} | |
52 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
53 | // CHECK-NEXT: {{^}}# 12 "{{.*}}rewrite-includes.c"{{$}} | |
54 | // CHECK-NEXT: {{^}}#endif{{$}} | |
55 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
56 | // CHECK-NEXT: {{^}}#/**/include /**/ "rewrite-includes5.h" /**/ {{\\}}{{$}} | |
57 | // CHECK-NEXT: {{^}} {{$}} | |
58 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
59 | // CHECK-NEXT: {{^}}# 1 "{{.*[/\\]Inputs[/\\]}}rewrite-includes5.h" 1{{$}} | |
60 | // CHECK-NEXT: {{^}}included_line5{{$}} | |
61 | // CHECK-NEXT: {{^}}# 15 "{{.*}}rewrite-includes.c" 2{{$}} | |
62 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
63 | // CHECK-NEXT: {{^}}#include "rewrite-includes6.h" // comment{{$}} | |
64 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
65 | // CHECK-NEXT: {{^}}# 1 "{{.*[/\\]Inputs[/\\]}}rewrite-includes6.h" 1{{$}} | |
66 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
67 | // CHECK-NEXT: {{^}}#pragma once{{$}} | |
68 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
69 | // CHECK-NEXT: {{^}}# 2 "{{.*[/\\]Inputs[/\\]}}rewrite-includes6.h"{{$}} | |
70 | // CHECK-NEXT: {{^}}included_line6{{$}} | |
71 | // CHECK-NEXT: {{^}}# 16 "{{.*}}rewrite-includes.c" 2{{$}} | |
72 | // CHECK-NEXT: {{^}} {{$}} | |
73 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
74 | // CHECK-NEXT: {{^}}#include "rewrite-includes6.h" /* comment{{$}} | |
75 | // CHECK-NEXT: {{^}} continues */{{$}} | |
76 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
77 | // CHECK-NEXT: {{^}}# 19 "{{.*}}rewrite-includes.c"{{$}} | |
78 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
79 | // CHECK-NEXT: {{^}}#include "rewrite-includes7.h"{{$}} | |
80 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
81 | // CHECK-NEXT: {{^}}# 1 "{{.*[/\\]Inputs[/\\]}}rewrite-includes7.h" 1{{$}} | |
82 | // CHECK-NEXT: {{^}}#ifndef REWRITE_INCLUDES_7{{$}} | |
83 | // CHECK-NEXT: {{^}}#define REWRITE_INCLUDES_7{{$}} | |
84 | // CHECK-NEXT: {{^}}included_line7{{$}} | |
85 | // CHECK-NEXT: {{^}}#endif{{$}} | |
86 | // CHECK-NEXT: {{^}}# 20 "{{.*}}rewrite-includes.c" 2{{$}} | |
87 | // CHECK-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
88 | // CHECK-NEXT: {{^}}#include "rewrite-includes7.h"{{$}} | |
89 | // CHECK-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
90 | // CHECK-NEXT: {{^}}# 21 "{{.*}}rewrite-includes.c"{{$}} | |
91 | // CHECK-NEXT: {{^}}// ENDCOMPARE{{$}} | |
92 | ||
93 | // CHECKNL: {{^}}// STARTCOMPARE{{$}} | |
94 | // CHECKNL-NEXT: {{^}}#define A(a,b) a ## b{{$}} | |
95 | // CHECKNL-NEXT: {{^}}A(1,2){{$}} | |
96 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
97 | // CHECKNL-NEXT: {{^}}#include "rewrite-includes1.h"{{$}} | |
98 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
99 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
100 | // CHECKNL-NEXT: {{^}}#pragma clang system_header{{$}} | |
101 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
102 | // CHECKNL-NEXT: {{^}}included_line1{{$}} | |
103 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
104 | // CHECKNL-NEXT: {{^}}#include "rewrite-includes2.h"{{$}} | |
105 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
106 | // CHECKNL-NEXT: {{^}}included_line2{{$}} | |
107 | // CHECKNL-NEXT: {{^}}#ifdef FIRST{{$}} | |
108 | // CHECKNL-NEXT: {{^}}#define HEADER "rewrite-includes3.h"{{$}} | |
109 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
110 | // CHECKNL-NEXT: {{^}}#include HEADER{{$}} | |
111 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
112 | // CHECKNL-NEXT: {{^}}included_line3{{$}} | |
113 | // CHECKNL-NEXT: {{^}}#else{{$}} | |
114 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
115 | // CHECKNL-NEXT: {{^}}#include "rewrite-includes4.h"{{$}} | |
116 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
117 | // CHECKNL-NEXT: {{^}}#endif{{$}} | |
118 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
119 | // CHECKNL-NEXT: {{^}}#/**/include /**/ "rewrite-includes5.h" /**/ {{\\}}{{$}} | |
120 | // CHECKNL-NEXT: {{^}} {{$}} | |
121 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
122 | // CHECKNL-NEXT: {{^}}included_line5{{$}} | |
123 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
124 | // CHECKNL-NEXT: {{^}}#include "rewrite-includes6.h" // comment{{$}} | |
125 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
126 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
127 | // CHECKNL-NEXT: {{^}}#pragma once{{$}} | |
128 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
129 | // CHECKNL-NEXT: {{^}}included_line6{{$}} | |
130 | // CHECKNL-NEXT: {{^}} {{$}} | |
131 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
132 | // CHECKNL-NEXT: {{^}}#include "rewrite-includes6.h" /* comment{{$}} | |
133 | // CHECKNL-NEXT: {{^}} continues */{{$}} | |
134 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
135 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
136 | // CHECKNL-NEXT: {{^}}#include "rewrite-includes7.h"{{$}} | |
137 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
138 | // CHECKNL-NEXT: {{^}}#ifndef REWRITE_INCLUDES_7{{$}} | |
139 | // CHECKNL-NEXT: {{^}}#define REWRITE_INCLUDES_7{{$}} | |
140 | // CHECKNL-NEXT: {{^}}included_line7{{$}} | |
141 | // CHECKNL-NEXT: {{^}}#endif{{$}} | |
142 | // CHECKNL-NEXT: {{^}}#if 0 /* expanded by -frewrite-includes */{{$}} | |
143 | // CHECKNL-NEXT: {{^}}#include "rewrite-includes7.h"{{$}} | |
144 | // CHECKNL-NEXT: {{^}}#endif /* expanded by -frewrite-includes */{{$}} | |
145 | // CHECKNL-NEXT: {{^}}// ENDCOMPARE{{$}} |