OSDN Git Service

libcpp
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / cpp / assert4.c
1 /* Copyright (C) 2003, 2006, 2008 Free Software Foundation, Inc.
2    Test builtin preprocessor assertions.
3    By Kaveh Ghazi <ghazi@caip.rutgers.edu>.  */
4
5 /* { dg-do preprocess } */
6 /* { dg-options "-ansi -Wno-deprecated" } */
7
8 /* Check for #system assertions.  */
9
10 #if defined __gnu_linux__
11 # if !#system(linux) || !#system(unix) || !#system(posix)
12 #  error
13 # endif
14 #elif #system(linux)
15 # error
16 #endif
17
18 #if defined __gnu_hurd__
19 # if !#system(gnu) || !#system(unix) || !#system(posix) || !#system(mach)
20 #  error
21 # endif
22 #elif #system(gnu)
23 # error
24 #endif
25
26 #if defined __FreeBSD__
27 # if !#system(FreeBSD) || !#system(unix) || !#system(bsd)
28 #  error
29 # endif
30 #elif #system(FreeBSD)
31 # error
32 #endif
33
34 #if defined __NetBSD__
35 # if !#system(NetBSD) || !#system(unix) || !#system(bsd)
36 #  error
37 # endif
38 #elif #system(NetBSD)
39 # error
40 #endif
41
42 #if defined __OpenBSD__
43 # if !#system(OpenBSD) || !#system(unix) || !#system(bsd)
44 #  error
45 # endif
46 #elif #system(OpenBSD)
47 # error
48 #endif
49
50 #if defined __svr4__ || defined __SYSTYPE_SVR4__
51 # if !#system(svr4) || !#system(unix)
52 #  error
53 # endif
54 #elif #system(svr4)
55 # error
56 #endif
57
58 #if defined __hpux__
59 # if !#system(hpux) || !#system(unix)
60 #  error
61 # endif
62 #elif #system(hpux)
63 # error
64 #endif
65
66 #if defined _AIX
67 # if !#system(aix) || !#system(unix)
68 #  error
69 # endif
70 #elif #system(aix)
71 # error
72 #endif
73
74 #if defined __lynx__
75 # if !#system(lynx) || !#system(unix)
76 #  error
77 # endif
78 #elif #system(lynx)
79 # error
80 #endif
81
82 #if ( defined __unix__ && !defined __CYGWIN__ ) || defined _AIX \
83     || defined __vxworks
84 # if !#system(unix)
85 #  error
86 # endif
87 #elif #system(unix)
88 # error
89 #endif
90
91 #if defined __rtems__
92 # if !#system(rtems)
93 #  error
94 # endif
95 #elif #system(rtems)
96 # error
97 #endif
98
99 #if defined __vms__
100 # if !#system(vms)
101 #  error
102 # endif
103 #elif #system(vms)
104 # error
105 #endif
106
107 #if defined __mvs__
108 # if !#system(mvs)
109 #  error
110 # endif
111 #elif #system(mvs)
112 # error
113 #endif
114
115 #if defined __MSDOS__
116 # if !#system(msdos)
117 #  error
118 # endif
119 #elif #system(msdos)
120 # error
121 #endif
122
123 #if defined __WINNT__ || defined __CYGWIN__
124 # if !#system(winnt)
125 #  error
126 # endif
127 #elif #system(winnt)
128 # error
129 #endif
130
131 #if defined __BEOS__
132 # if !#system(beos)
133 #  error
134 # endif
135 #elif #system(beos)
136 # error
137 #endif
138
139 #if defined __netware__
140 # if !#system(netware)
141 #  error
142 # endif
143 #elif #system(netware)
144 # error
145 #endif
146
147
148 /* Check for #cpu and #machine assertions.  */
149
150 #if defined __arc__
151 # if !#cpu(arc) || !#machine(arc)
152 #  error
153 # endif
154 #elif #cpu(arc) || #machine(arc)
155 # error
156 #endif
157
158 #if defined __alpha__
159 # if !#cpu(alpha) || !#machine(alpha) \
160         || (defined __alpha_cix__ && !#cpu(cix)) \
161         || (!defined __alpha_cix__ && #cpu(cix)) \
162         || (defined __alpha_fix__ && !#cpu(fix)) \
163         || (!defined __alpha_fix__ && #cpu(fix)) \
164         || (defined __alpha_bwx__ && !#cpu(bwx)) \
165         || (!defined __alpha_bwx__ && #cpu(bwx)) \
166         || (defined __alpha_max__ && !#cpu(max)) \
167         || (!defined __alpha_max__ && #cpu(max)) \
168         || (defined __alpha_ev6__ && !#cpu(ev6)) \
169         || (!defined __alpha_ev6__ && #cpu(ev6)) \
170         || (defined __alpha_ev5__ && !#cpu(ev5)) \
171         || (!defined __alpha_ev5__ && #cpu(ev5)) \
172         || (defined __alpha_ev4__ && !#cpu(ev4)) \
173         || (!defined __alpha_ev4__ && #cpu(ev4))
174 #  error
175 # endif
176 #elif #cpu(alpha) || #machine(alpha) || #cpu(cix) || #cpu(fix) || #cpu(bwx) \
177         || #cpu(max) || #cpu(ev6) || #cpu(ev5) || #cpu(ev4)
178 # error
179 #endif
180
181 #if defined __arm__
182 # if !#cpu(arm) || !#machine(arm)
183 #  error
184 # endif
185 #elif #cpu(arm) || #machine(arm)
186 # error
187 #endif
188
189 #if defined __cris__
190 # if !#cpu(cris) || !#machine(cris)
191 #  error
192 # endif
193 #elif #cpu(cris) || #machine(cris)
194 # error
195 #endif
196
197 #if defined __fr30__
198 # if !#cpu(fr30) || !#machine(fr30)
199 #  error
200 # endif
201 #elif #cpu(fr30) || #machine(fr30)
202 # error
203 #endif
204
205 #if defined __frv__
206 # if !#cpu(frv) || !#machine(frv)
207 #  error
208 # endif
209 #elif #cpu(frv) || #machine(frv)
210 # error
211 #endif
212
213 #if defined __H8300__ 
214 # if !#cpu(h8300) || !#machine(h8300) \
215   || (defined __H8300__ && (!#cpu(h8300) || !#machine(h8300))) \
216   || (defined __H8300H__ && (!#cpu(h8300h) || !#machine(h8300h))) \
217   || (!defined __H8300H__ && (#cpu(h8300h) || #machine(h8300h))) \
218   || (defined __H8300S__ && (!#cpu(h8300s) || !#machine(h8300s))) \
219   || (!defined __H8300S__ && (#cpu(h8300s) || #machine(h8300s)))
220 #  error
221 # endif
222 #elif #cpu(h8300) || #machine(h8300) || #cpu(h8300h) || #machine(h8300h) || \
223   #cpu(h8300s) || #machine(h8300s)
224 # error
225 #endif
226
227 #if defined __hppa__
228 # if !#cpu(hppa) || !#machine(hppa)
229 #  error
230 # endif
231 #elif #cpu(hppa) || #machine(hppa)
232 # error
233 #endif
234
235 #if defined __i370__
236 # if !#cpu(i370) || !#machine(i370)
237 #  error
238 # endif
239 #elif #cpu(i370) || #machine(i370)
240 # error
241 #endif
242
243 #if defined __x86_64__
244 # if !#cpu(x86_64) || !#machine(x86_64)
245 #  error
246 # endif
247 #elif #cpu(x86_64) || #machine(x86_64)
248 # error
249 #endif
250
251 #if defined __i386__
252 # if !#cpu(i386) || !#machine(i386)
253 #  error
254 # endif
255 #elif #cpu(i386) || #machine(i386)
256 # error
257 #endif
258
259 #if defined __ia64__
260 # if !#cpu(ia64) || !#machine(ia64)
261 #  error
262 # endif
263 #elif #cpu(ia64) || #machine(ia64)
264 # error
265 #endif
266
267 #if defined __iq2000__
268 # if !#cpu(iq2000) || !#machine(iq2000)
269 #  error
270 # endif
271 #elif #cpu(iq2000) || #machine(iq2000)
272 # error
273 #endif
274
275 #if defined __M32R__
276 # if !#cpu(m32r) || !#machine(m32r)
277 #  error
278 # endif
279 #elif #cpu(m32r) || #machine(m32r)
280 # error
281 #endif
282
283 #if defined __m68k__
284 # if !#cpu(m68k) || !#machine(m68k)
285 #  error
286 # endif
287 #elif #cpu(m68k) || #machine(m68k)
288 # error
289 #endif
290
291 #if defined __mcore__
292 # if !#cpu(mcore) || !#machine(mcore)
293 #  error
294 # endif
295 #elif #cpu(mcore) || #machine(mcore)
296 # error
297 #endif
298
299 #if defined __mips__
300 # if !#cpu(mips) || (defined __sgi__ && !#machine(sgi)) \
301   || (!defined __sgi__ && !#machine(mips))
302 #  error
303 # endif
304 #elif #cpu(mips) || #machine(sgi) || #machine(mips)
305 # error
306 #endif
307
308 #if defined __mn10300__
309 # if !#cpu(mn10300) || !#machine(mn10300)
310 #  error
311 # endif
312 #elif #cpu(mn10300) || #machine(mn10300)
313 # error
314 #endif
315
316 #if defined __pdp11__
317 # if !#cpu(pdp11) || !#machine(pdp11)
318 #  error
319 # endif
320 #elif #cpu(pdp11) || #machine(pdp11)
321 # error
322 #endif
323
324 #if defined __powerpc__
325 # if defined __powerpc64__
326 #  if (#cpu(powerpc) || #machine(powerpc) \
327        || !#cpu(powerpc64) || !#machine(powerpc64))
328 #   error
329 #  endif
330 # else
331 #  if (!#cpu(powerpc) || !#machine(powerpc) \
332        || #cpu(powerpc64) || #machine(powerpc64))
333 #   error
334 #  endif
335 # endif
336 #elif (#cpu(powerpc) || #machine(powerpc) \
337        || #cpu(powerpc64) || #machine(powerpc64))
338 # error
339 #endif
340
341 #if defined __rs6000__
342 # if !#cpu(rs6000) || !#machine(rs6000)
343 #  error
344 # endif
345 #elif #cpu(rs6000) || #machine(rs6000)
346 # error
347 #endif
348
349 #if defined __s390__
350 # if !#cpu(s390) || !#machine(s390)
351 #  error
352 # endif
353 #elif #cpu(s390) || #machine(s390)
354 # error
355 #endif
356
357 #if defined __sh__
358 # if !#cpu(sh) || !#machine(sh)
359 #  error
360 # endif
361 #elif #cpu(sh) || #machine(sh)
362 # error
363 #endif
364
365 #if defined __sparc__
366 # if (defined __arch64__ \
367       && (!#cpu(sparc64) || !#machine(sparc64) || #cpu(sparc) || #machine(sparc)))
368   || (!defined __arch64__ \
369       && (#cpu(sparc64) || #machine(sparc64) || !#cpu(sparc) || !#machine(sparc)))
370 #  error
371 # endif
372 #elif #cpu(sparc64) || #machine(sparc64) || #cpu(sparc) || #machine(sparc)
373 # error
374 #endif
375
376 #if defined __xstormy16__
377 # if !#cpu(xstormy16) || !#machine(xstormy16)
378 #  error
379 # endif
380 #elif #cpu(xstormy16) || #machine(xstormy16)
381 # error
382 #endif
383
384 #if defined __v850__
385 # if !#cpu(v850) || !#machine(v850)
386 #  error
387 # endif
388 #elif #cpu(v850) || #machine(v850)
389 # error
390 #endif
391
392 #if defined __vax__
393 # if !#cpu(vax) || !#machine(vax)
394 #  error
395 # endif
396 #elif #cpu(vax) || #machine(vax)
397 # error
398 #endif
399
400 #if defined __XTENSA__
401 # if !#cpu(xtensa) || !#machine(xtensa)
402 #  error
403 # endif
404 #elif #cpu(xtensa) || #machine(xtensa)
405 # error
406 #endif
407