1 // Check that the predefined macros don't contain anything that causes a
2 // warning, which needs -Wsystem-headers to detect as the predefined macros
3 // are in the <built-in> file which is treated as a system header and so has
4 // warnings suppressed by default.
5 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arc
6 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple xcore
7 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple hexagon
8 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple hexagon-linux
9 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple lanai
10 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64_32-darwin
11 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64
12 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-darwin
13 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-freebsd
14 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-fuchsia
15 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-linux
16 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-linux-openhos
17 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-netbsd
18 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-openbsd
19 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-win32-gnu
20 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64-win32-msvc
21 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64_be
22 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64_be-freebsd
23 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64_be-fuchsia
24 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64_be-linux
25 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple aarch64_be-netbsd
26 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm
27 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-darwin
28 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-freebsd
29 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-fuchsia
30 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-linux
31 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-linux-openhos
32 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-liteos
33 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-netbsd
34 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-openbsd
35 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-rtems
36 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-nacl
37 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-win32-cygnus
38 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-win32-gnu
39 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-win32-itanium
40 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple arm-win32-msvc
41 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple armeb
42 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple armeb-linux
43 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple armeb-freebsd
44 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple armeb-netbsd
45 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple armeb-openbsd
46 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple armeb-rtems
47 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple avr
48 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple bpfeb
49 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple bpfel
50 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple msp430
51 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips
52 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips-linux
53 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips-freebsd
54 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips-netbsd
55 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips-rtems
56 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mipsel
57 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mipsel-linux
58 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mipsel-linux-openhos
59 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mipsel-rtems
60 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mipsel-freebsd
61 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mipsel-netbsd
62 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mipsel-nacl
63 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64
64 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64-linux
65 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64-rtems
66 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64-freebsd
67 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64-netbsd
68 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64-openbsd
69 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64el
70 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64el-linux
71 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64el-rtems
72 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64el-freebsd
73 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64el-netbsd
74 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple mips64el-openbsd
75 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple m68k
76 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple m68k-linux
77 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple m68k-netbsd
78 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc
79 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc-freebsd
80 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc-netbsd
81 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc-openbsd
82 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc-rtems
83 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc-aix
84 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppcle
85 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppcle-linux
86 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppcle-freebsd
87 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64
88 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64-linux
89 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64-lv2
90 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64-freebsd
91 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64-netbsd
92 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64-openbsd
93 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64-aix
94 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64le-
95 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64le-linux
96 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64le-freebsd
97 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64le-netbsd
98 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ppc64le-openbsd
99 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple nvptx
100 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple nvptx64
101 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple amdgcn
102 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple r600
103 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple riscv32
104 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple riscv32-linux
105 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple riscv64
106 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple riscv64-freebsd
107 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple riscv64-openbsd
108 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple riscv64-fuchsia
109 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple riscv64-linux
110 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple riscv64-linux-openhos
111 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparc
112 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparc-linux
113 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparc-solaris
114 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparc-netbsd
115 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparc-rtems
116 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcel
117 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcel-linux
118 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcel-netbsd
119 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcel-rtems
120 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9
121 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9-linux
122 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9-solaris
123 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9-netbsd
124 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9-openbsd
125 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9-freebsd
126 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9-systemz
127 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9-linux
128 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple sparcv9-zos
129 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple tce
130 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple tcele
131 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686
132 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-darwin
133 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-linux
134 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-linux-android
135 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-dragonfly
136 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-netbsd
137 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-openbsd
138 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-freebsd
139 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-fuchsia
140 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-kfreebsd
141 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-solaris
142 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-win32-cygnus
143 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-win32-gnu
144 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-win32-itanium
145 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-win32-msvc
146 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-haiku
147 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-rtems
148 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-nacl
149 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-elfiamcu
150 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple i686-hurd
151 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64
152 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-darwin
153 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-linux
154 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-linux-android
155 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-linux-openhos
156 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-dragonfly
157 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-netbsd
158 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-openbsd
159 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-freebsd
160 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-fuchsia
161 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-kfreebsd
162 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-solaris
163 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-win32cygnus
164 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-win32gnu
165 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-win32msvc
166 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-haiku
167 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-nacl
168 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-ps4
169 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple x86_64-ps5
170 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple spir
171 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple spir64
172 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple spirv32
173 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple spirv64
174 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple spirv64-amd-amdhsa
175 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple wasm32
176 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple wasm32-wasi
177 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple wasm32-emscripten
178 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple wasm64
179 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple wasm64-wasi
180 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple wasm64-emscripten
181 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple dxil
182 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple ve
183 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple csky
184 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple csky-linux
185 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple loongarch32
186 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple loongarch32-linux
187 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple loongarch64
188 // RUN: %clang_cc1 %s -Eonly -Wsystem-headers -Werror -triple loongarch64-linux