1// RUN: %clang_cc1 -E -ffreestanding -triple=arm-none-none %s | FileCheck -check-prefix ARM %s
2//
3// ARM:typedef long long int int64_t;
4// ARM:typedef long long unsigned int uint64_t;
5// ARM:typedef int64_t int_least64_t;
6// ARM:typedef uint64_t uint_least64_t;
7// ARM:typedef int64_t int_fast64_t;
8// ARM:typedef uint64_t uint_fast64_t;
9//
10// ARM:typedef int int32_t;
11// ARM:typedef unsigned int uint32_t;
12// ARM:typedef int32_t int_least32_t;
13// ARM:typedef uint32_t uint_least32_t;
14// ARM:typedef int32_t int_fast32_t;
15// ARM:typedef uint32_t uint_fast32_t;
16//
17// ARM:typedef short int16_t;
18// ARM:typedef unsigned short uint16_t;
19// ARM:typedef int16_t int_least16_t;
20// ARM:typedef uint16_t uint_least16_t;
21// ARM:typedef int16_t int_fast16_t;
22// ARM:typedef uint16_t uint_fast16_t;
23//
24// ARM:typedef signed char int8_t;
25// ARM:typedef unsigned char uint8_t;
26// ARM:typedef int8_t int_least8_t;
27// ARM:typedef uint8_t uint_least8_t;
28// ARM:typedef int8_t int_fast8_t;
29// ARM:typedef uint8_t uint_fast8_t;
30//
31// ARM:typedef int32_t intptr_t;
32// ARM:typedef uint32_t uintptr_t;
33//
34// ARM:typedef long long int intmax_t;
35// ARM:typedef long long unsigned int uintmax_t;
36//
37// ARM:INT8_MAX_ 127
38// ARM:INT8_MIN_ (-127 -1)
39// ARM:UINT8_MAX_ 255
40// ARM:INT_LEAST8_MIN_ (-127 -1)
41// ARM:INT_LEAST8_MAX_ 127
42// ARM:UINT_LEAST8_MAX_ 255
43// ARM:INT_FAST8_MIN_ (-127 -1)
44// ARM:INT_FAST8_MAX_ 127
45// ARM:UINT_FAST8_MAX_ 255
46//
47// ARM:INT16_MAX_ 32767
48// ARM:INT16_MIN_ (-32767 -1)
49// ARM:UINT16_MAX_ 65535
50// ARM:INT_LEAST16_MIN_ (-32767 -1)
51// ARM:INT_LEAST16_MAX_ 32767
52// ARM:UINT_LEAST16_MAX_ 65535
53// ARM:INT_FAST16_MIN_ (-32767 -1)
54// ARM:INT_FAST16_MAX_ 32767
55// ARM:UINT_FAST16_MAX_ 65535
56//
57// ARM:INT32_MAX_ 2147483647
58// ARM:INT32_MIN_ (-2147483647 -1)
59// ARM:UINT32_MAX_ 4294967295U
60// ARM:INT_LEAST32_MIN_ (-2147483647 -1)
61// ARM:INT_LEAST32_MAX_ 2147483647
62// ARM:UINT_LEAST32_MAX_ 4294967295U
63// ARM:INT_FAST32_MIN_ (-2147483647 -1)
64// ARM:INT_FAST32_MAX_ 2147483647
65// ARM:UINT_FAST32_MAX_ 4294967295U
66//
67// ARM:INT64_MAX_ 9223372036854775807LL
68// ARM:INT64_MIN_ (-9223372036854775807LL -1)
69// ARM:UINT64_MAX_ 18446744073709551615ULL
70// ARM:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
71// ARM:INT_LEAST64_MAX_ 9223372036854775807LL
72// ARM:UINT_LEAST64_MAX_ 18446744073709551615ULL
73// ARM:INT_FAST64_MIN_ (-9223372036854775807LL -1)
74// ARM:INT_FAST64_MAX_ 9223372036854775807LL
75// ARM:UINT_FAST64_MAX_ 18446744073709551615ULL
76//
77// ARM:INTPTR_MIN_ (-2147483647 -1)
78// ARM:INTPTR_MAX_ 2147483647
79// ARM:UINTPTR_MAX_ 4294967295U
80// ARM:PTRDIFF_MIN_ (-2147483647 -1)
81// ARM:PTRDIFF_MAX_ 2147483647
82// ARM:SIZE_MAX_ 4294967295U
83//
84// ARM:INTMAX_MIN_ (-9223372036854775807LL -1)
85// ARM:INTMAX_MAX_ 9223372036854775807LL
86// ARM:UINTMAX_MAX_ 18446744073709551615ULL
87//
88// ARM:SIG_ATOMIC_MIN_ (-2147483647 -1)
89// ARM:SIG_ATOMIC_MAX_ 2147483647
90// ARM:WINT_MIN_ (-2147483647 -1)
91// ARM:WINT_MAX_ 2147483647
92//
93// ARM:WCHAR_MAX_ 4294967295U
94// ARM:WCHAR_MIN_ 0U
95//
96// ARM:INT8_C_(0) 0
97// ARM:UINT8_C_(0) 0U
98// ARM:INT16_C_(0) 0
99// ARM:UINT16_C_(0) 0U
100// ARM:INT32_C_(0) 0
101// ARM:UINT32_C_(0) 0U
102// ARM:INT64_C_(0) 0LL
103// ARM:UINT64_C_(0) 0ULL
104//
105// ARM:INTMAX_C_(0) 0LL
106// ARM:UINTMAX_C_(0) 0ULL
107//
108//
109// RUN: %clang_cc1 -E -ffreestanding -triple=i386-none-none %s | FileCheck -check-prefix I386 %s
110//
111// I386:typedef long long int int64_t;
112// I386:typedef long long unsigned int uint64_t;
113// I386:typedef int64_t int_least64_t;
114// I386:typedef uint64_t uint_least64_t;
115// I386:typedef int64_t int_fast64_t;
116// I386:typedef uint64_t uint_fast64_t;
117//
118// I386:typedef int int32_t;
119// I386:typedef unsigned int uint32_t;
120// I386:typedef int32_t int_least32_t;
121// I386:typedef uint32_t uint_least32_t;
122// I386:typedef int32_t int_fast32_t;
123// I386:typedef uint32_t uint_fast32_t;
124//
125// I386:typedef short int16_t;
126// I386:typedef unsigned short uint16_t;
127// I386:typedef int16_t int_least16_t;
128// I386:typedef uint16_t uint_least16_t;
129// I386:typedef int16_t int_fast16_t;
130// I386:typedef uint16_t uint_fast16_t;
131//
132// I386:typedef signed char int8_t;
133// I386:typedef unsigned char uint8_t;
134// I386:typedef int8_t int_least8_t;
135// I386:typedef uint8_t uint_least8_t;
136// I386:typedef int8_t int_fast8_t;
137// I386:typedef uint8_t uint_fast8_t;
138//
139// I386:typedef int32_t intptr_t;
140// I386:typedef uint32_t uintptr_t;
141//
142// I386:typedef long long int intmax_t;
143// I386:typedef long long unsigned int uintmax_t;
144//
145// I386:INT8_MAX_ 127
146// I386:INT8_MIN_ (-127 -1)
147// I386:UINT8_MAX_ 255
148// I386:INT_LEAST8_MIN_ (-127 -1)
149// I386:INT_LEAST8_MAX_ 127
150// I386:UINT_LEAST8_MAX_ 255
151// I386:INT_FAST8_MIN_ (-127 -1)
152// I386:INT_FAST8_MAX_ 127
153// I386:UINT_FAST8_MAX_ 255
154//
155// I386:INT16_MAX_ 32767
156// I386:INT16_MIN_ (-32767 -1)
157// I386:UINT16_MAX_ 65535
158// I386:INT_LEAST16_MIN_ (-32767 -1)
159// I386:INT_LEAST16_MAX_ 32767
160// I386:UINT_LEAST16_MAX_ 65535
161// I386:INT_FAST16_MIN_ (-32767 -1)
162// I386:INT_FAST16_MAX_ 32767
163// I386:UINT_FAST16_MAX_ 65535
164//
165// I386:INT32_MAX_ 2147483647
166// I386:INT32_MIN_ (-2147483647 -1)
167// I386:UINT32_MAX_ 4294967295U
168// I386:INT_LEAST32_MIN_ (-2147483647 -1)
169// I386:INT_LEAST32_MAX_ 2147483647
170// I386:UINT_LEAST32_MAX_ 4294967295U
171// I386:INT_FAST32_MIN_ (-2147483647 -1)
172// I386:INT_FAST32_MAX_ 2147483647
173// I386:UINT_FAST32_MAX_ 4294967295U
174//
175// I386:INT64_MAX_ 9223372036854775807LL
176// I386:INT64_MIN_ (-9223372036854775807LL -1)
177// I386:UINT64_MAX_ 18446744073709551615ULL
178// I386:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
179// I386:INT_LEAST64_MAX_ 9223372036854775807LL
180// I386:UINT_LEAST64_MAX_ 18446744073709551615ULL
181// I386:INT_FAST64_MIN_ (-9223372036854775807LL -1)
182// I386:INT_FAST64_MAX_ 9223372036854775807LL
183// I386:UINT_FAST64_MAX_ 18446744073709551615ULL
184//
185// I386:INTPTR_MIN_ (-2147483647 -1)
186// I386:INTPTR_MAX_ 2147483647
187// I386:UINTPTR_MAX_ 4294967295U
188// I386:PTRDIFF_MIN_ (-2147483647 -1)
189// I386:PTRDIFF_MAX_ 2147483647
190// I386:SIZE_MAX_ 4294967295U
191//
192// I386:INTMAX_MIN_ (-9223372036854775807LL -1)
193// I386:INTMAX_MAX_ 9223372036854775807LL
194// I386:UINTMAX_MAX_ 18446744073709551615ULL
195//
196// I386:SIG_ATOMIC_MIN_ (-2147483647 -1)
197// I386:SIG_ATOMIC_MAX_ 2147483647
198// I386:WINT_MIN_ (-2147483647 -1)
199// I386:WINT_MAX_ 2147483647
200//
201// I386:WCHAR_MAX_ 2147483647
202// I386:WCHAR_MIN_ (-2147483647 -1)
203//
204// I386:INT8_C_(0) 0
205// I386:UINT8_C_(0) 0U
206// I386:INT16_C_(0) 0
207// I386:UINT16_C_(0) 0U
208// I386:INT32_C_(0) 0
209// I386:UINT32_C_(0) 0U
210// I386:INT64_C_(0) 0LL
211// I386:UINT64_C_(0) 0ULL
212//
213// I386:INTMAX_C_(0) 0LL
214// I386:UINTMAX_C_(0) 0ULL
215//
216// RUN: %clang_cc1 -E -ffreestanding -triple=mips-none-none %s | FileCheck -check-prefix MIPS %s
217//
218// MIPS:typedef long long int int64_t;
219// MIPS:typedef long long unsigned int uint64_t;
220// MIPS:typedef int64_t int_least64_t;
221// MIPS:typedef uint64_t uint_least64_t;
222// MIPS:typedef int64_t int_fast64_t;
223// MIPS:typedef uint64_t uint_fast64_t;
224//
225// MIPS:typedef int int32_t;
226// MIPS:typedef unsigned int uint32_t;
227// MIPS:typedef int32_t int_least32_t;
228// MIPS:typedef uint32_t uint_least32_t;
229// MIPS:typedef int32_t int_fast32_t;
230// MIPS:typedef uint32_t uint_fast32_t;
231//
232// MIPS:typedef short int16_t;
233// MIPS:typedef unsigned short uint16_t;
234// MIPS:typedef int16_t int_least16_t;
235// MIPS:typedef uint16_t uint_least16_t;
236// MIPS:typedef int16_t int_fast16_t;
237// MIPS:typedef uint16_t uint_fast16_t;
238//
239// MIPS:typedef signed char int8_t;
240// MIPS:typedef unsigned char uint8_t;
241// MIPS:typedef int8_t int_least8_t;
242// MIPS:typedef uint8_t uint_least8_t;
243// MIPS:typedef int8_t int_fast8_t;
244// MIPS:typedef uint8_t uint_fast8_t;
245//
246// MIPS:typedef int32_t intptr_t;
247// MIPS:typedef uint32_t uintptr_t;
248//
249// MIPS:typedef long long int intmax_t;
250// MIPS:typedef long long unsigned int uintmax_t;
251//
252// MIPS:INT8_MAX_ 127
253// MIPS:INT8_MIN_ (-127 -1)
254// MIPS:UINT8_MAX_ 255
255// MIPS:INT_LEAST8_MIN_ (-127 -1)
256// MIPS:INT_LEAST8_MAX_ 127
257// MIPS:UINT_LEAST8_MAX_ 255
258// MIPS:INT_FAST8_MIN_ (-127 -1)
259// MIPS:INT_FAST8_MAX_ 127
260// MIPS:UINT_FAST8_MAX_ 255
261//
262// MIPS:INT16_MAX_ 32767
263// MIPS:INT16_MIN_ (-32767 -1)
264// MIPS:UINT16_MAX_ 65535
265// MIPS:INT_LEAST16_MIN_ (-32767 -1)
266// MIPS:INT_LEAST16_MAX_ 32767
267// MIPS:UINT_LEAST16_MAX_ 65535
268// MIPS:INT_FAST16_MIN_ (-32767 -1)
269// MIPS:INT_FAST16_MAX_ 32767
270// MIPS:UINT_FAST16_MAX_ 65535
271//
272// MIPS:INT32_MAX_ 2147483647
273// MIPS:INT32_MIN_ (-2147483647 -1)
274// MIPS:UINT32_MAX_ 4294967295U
275// MIPS:INT_LEAST32_MIN_ (-2147483647 -1)
276// MIPS:INT_LEAST32_MAX_ 2147483647
277// MIPS:UINT_LEAST32_MAX_ 4294967295U
278// MIPS:INT_FAST32_MIN_ (-2147483647 -1)
279// MIPS:INT_FAST32_MAX_ 2147483647
280// MIPS:UINT_FAST32_MAX_ 4294967295U
281//
282// MIPS:INT64_MAX_ 9223372036854775807LL
283// MIPS:INT64_MIN_ (-9223372036854775807LL -1)
284// MIPS:UINT64_MAX_ 18446744073709551615ULL
285// MIPS:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
286// MIPS:INT_LEAST64_MAX_ 9223372036854775807LL
287// MIPS:UINT_LEAST64_MAX_ 18446744073709551615ULL
288// MIPS:INT_FAST64_MIN_ (-9223372036854775807LL -1)
289// MIPS:INT_FAST64_MAX_ 9223372036854775807LL
290// MIPS:UINT_FAST64_MAX_ 18446744073709551615ULL
291//
292// MIPS:INTPTR_MIN_ (-2147483647 -1)
293// MIPS:INTPTR_MAX_ 2147483647
294// MIPS:UINTPTR_MAX_ 4294967295U
295// MIPS:PTRDIFF_MIN_ (-2147483647 -1)
296// MIPS:PTRDIFF_MAX_ 2147483647
297// MIPS:SIZE_MAX_ 4294967295U
298//
299// MIPS:INTMAX_MIN_ (-9223372036854775807LL -1)
300// MIPS:INTMAX_MAX_ 9223372036854775807LL
301// MIPS:UINTMAX_MAX_ 18446744073709551615ULL
302//
303// MIPS:SIG_ATOMIC_MIN_ (-2147483647 -1)
304// MIPS:SIG_ATOMIC_MAX_ 2147483647
305// MIPS:WINT_MIN_ (-2147483647 -1)
306// MIPS:WINT_MAX_ 2147483647
307//
308// MIPS:WCHAR_MAX_ 2147483647
309// MIPS:WCHAR_MIN_ (-2147483647 -1)
310//
311// MIPS:INT8_C_(0) 0
312// MIPS:UINT8_C_(0) 0U
313// MIPS:INT16_C_(0) 0
314// MIPS:UINT16_C_(0) 0U
315// MIPS:INT32_C_(0) 0
316// MIPS:UINT32_C_(0) 0U
317// MIPS:INT64_C_(0) 0LL
318// MIPS:UINT64_C_(0) 0ULL
319//
320// MIPS:INTMAX_C_(0) 0LL
321// MIPS:UINTMAX_C_(0) 0ULL
322//
323// RUN: %clang_cc1 -E -ffreestanding -triple=mips64-none-none %s | FileCheck -check-prefix MIPS64 %s
324//
325// MIPS64:typedef long int int64_t;
326// MIPS64:typedef long unsigned int uint64_t;
327// MIPS64:typedef int64_t int_least64_t;
328// MIPS64:typedef uint64_t uint_least64_t;
329// MIPS64:typedef int64_t int_fast64_t;
330// MIPS64:typedef uint64_t uint_fast64_t;
331//
332// MIPS64:typedef int int32_t;
333// MIPS64:typedef unsigned int uint32_t;
334// MIPS64:typedef int32_t int_least32_t;
335// MIPS64:typedef uint32_t uint_least32_t;
336// MIPS64:typedef int32_t int_fast32_t;
337// MIPS64:typedef uint32_t uint_fast32_t;
338//
339// MIPS64:typedef short int16_t;
340// MIPS64:typedef unsigned short uint16_t;
341// MIPS64:typedef int16_t int_least16_t;
342// MIPS64:typedef uint16_t uint_least16_t;
343// MIPS64:typedef int16_t int_fast16_t;
344// MIPS64:typedef uint16_t uint_fast16_t;
345//
346// MIPS64:typedef signed char int8_t;
347// MIPS64:typedef unsigned char uint8_t;
348// MIPS64:typedef int8_t int_least8_t;
349// MIPS64:typedef uint8_t uint_least8_t;
350// MIPS64:typedef int8_t int_fast8_t;
351// MIPS64:typedef uint8_t uint_fast8_t;
352//
353// MIPS64:typedef int64_t intptr_t;
354// MIPS64:typedef uint64_t uintptr_t;
355//
356// MIPS64:typedef long int intmax_t;
357// MIPS64:typedef long unsigned int uintmax_t;
358//
359// MIPS64:INT8_MAX_ 127
360// MIPS64:INT8_MIN_ (-127 -1)
361// MIPS64:UINT8_MAX_ 255
362// MIPS64:INT_LEAST8_MIN_ (-127 -1)
363// MIPS64:INT_LEAST8_MAX_ 127
364// MIPS64:UINT_LEAST8_MAX_ 255
365// MIPS64:INT_FAST8_MIN_ (-127 -1)
366// MIPS64:INT_FAST8_MAX_ 127
367// MIPS64:UINT_FAST8_MAX_ 255
368//
369// MIPS64:INT16_MAX_ 32767
370// MIPS64:INT16_MIN_ (-32767 -1)
371// MIPS64:UINT16_MAX_ 65535
372// MIPS64:INT_LEAST16_MIN_ (-32767 -1)
373// MIPS64:INT_LEAST16_MAX_ 32767
374// MIPS64:UINT_LEAST16_MAX_ 65535
375// MIPS64:INT_FAST16_MIN_ (-32767 -1)
376// MIPS64:INT_FAST16_MAX_ 32767
377// MIPS64:UINT_FAST16_MAX_ 65535
378//
379// MIPS64:INT32_MAX_ 2147483647
380// MIPS64:INT32_MIN_ (-2147483647 -1)
381// MIPS64:UINT32_MAX_ 4294967295U
382// MIPS64:INT_LEAST32_MIN_ (-2147483647 -1)
383// MIPS64:INT_LEAST32_MAX_ 2147483647
384// MIPS64:UINT_LEAST32_MAX_ 4294967295U
385// MIPS64:INT_FAST32_MIN_ (-2147483647 -1)
386// MIPS64:INT_FAST32_MAX_ 2147483647
387// MIPS64:UINT_FAST32_MAX_ 4294967295U
388//
389// MIPS64:INT64_MAX_ 9223372036854775807L
390// MIPS64:INT64_MIN_ (-9223372036854775807L -1)
391// MIPS64:UINT64_MAX_ 18446744073709551615UL
392// MIPS64:INT_LEAST64_MIN_ (-9223372036854775807L -1)
393// MIPS64:INT_LEAST64_MAX_ 9223372036854775807L
394// MIPS64:UINT_LEAST64_MAX_ 18446744073709551615UL
395// MIPS64:INT_FAST64_MIN_ (-9223372036854775807L -1)
396// MIPS64:INT_FAST64_MAX_ 9223372036854775807L
397// MIPS64:UINT_FAST64_MAX_ 18446744073709551615UL
398//
399// MIPS64:INTPTR_MIN_ (-9223372036854775807L -1)
400// MIPS64:INTPTR_MAX_ 9223372036854775807L
401// MIPS64:UINTPTR_MAX_ 18446744073709551615UL
402// MIPS64:PTRDIFF_MIN_ (-9223372036854775807L -1)
403// MIPS64:PTRDIFF_MAX_ 9223372036854775807L
404// MIPS64:SIZE_MAX_ 18446744073709551615UL
405//
406// MIPS64:INTMAX_MIN_ (-9223372036854775807L -1)
407// MIPS64:INTMAX_MAX_ 9223372036854775807L
408// MIPS64:UINTMAX_MAX_ 18446744073709551615UL
409//
410// MIPS64:SIG_ATOMIC_MIN_ (-2147483647 -1)
411// MIPS64:SIG_ATOMIC_MAX_ 2147483647
412// MIPS64:WINT_MIN_ (-2147483647 -1)
413// MIPS64:WINT_MAX_ 2147483647
414//
415// MIPS64:WCHAR_MAX_ 2147483647
416// MIPS64:WCHAR_MIN_ (-2147483647 -1)
417//
418// MIPS64:INT8_C_(0) 0
419// MIPS64:UINT8_C_(0) 0U
420// MIPS64:INT16_C_(0) 0
421// MIPS64:UINT16_C_(0) 0U
422// MIPS64:INT32_C_(0) 0
423// MIPS64:UINT32_C_(0) 0U
424// MIPS64:INT64_C_(0) 0L
425// MIPS64:UINT64_C_(0) 0UL
426//
427// MIPS64:INTMAX_C_(0) 0L
428// MIPS64:UINTMAX_C_(0) 0UL
429//
430// RUN: %clang_cc1 -E -ffreestanding -triple=msp430-none-none %s | FileCheck -check-prefix MSP430 %s
431//
432// MSP430:typedef long int int32_t;
433// MSP430:typedef long unsigned int uint32_t;
434// MSP430:typedef int32_t int_least32_t;
435// MSP430:typedef uint32_t uint_least32_t;
436// MSP430:typedef int32_t int_fast32_t;
437// MSP430:typedef uint32_t uint_fast32_t;
438//
439// MSP430:typedef short int16_t;
440// MSP430:typedef unsigned short uint16_t;
441// MSP430:typedef int16_t int_least16_t;
442// MSP430:typedef uint16_t uint_least16_t;
443// MSP430:typedef int16_t int_fast16_t;
444// MSP430:typedef uint16_t uint_fast16_t;
445//
446// MSP430:typedef signed char int8_t;
447// MSP430:typedef unsigned char uint8_t;
448// MSP430:typedef int8_t int_least8_t;
449// MSP430:typedef uint8_t uint_least8_t;
450// MSP430:typedef int8_t int_fast8_t;
451// MSP430:typedef uint8_t uint_fast8_t;
452//
453// MSP430:typedef int16_t intptr_t;
454// MSP430:typedef uint16_t uintptr_t;
455//
456// MSP430:typedef long long int intmax_t;
457// MSP430:typedef long long unsigned int uintmax_t;
458//
459// MSP430:INT8_MAX_ 127
460// MSP430:INT8_MIN_ (-127 -1)
461// MSP430:UINT8_MAX_ 255
462// MSP430:INT_LEAST8_MIN_ (-127 -1)
463// MSP430:INT_LEAST8_MAX_ 127
464// MSP430:UINT_LEAST8_MAX_ 255
465// MSP430:INT_FAST8_MIN_ (-127 -1)
466// MSP430:INT_FAST8_MAX_ 127
467// MSP430:UINT_FAST8_MAX_ 255
468//
469// MSP430:INT16_MAX_ 32767
470// MSP430:INT16_MIN_ (-32767 -1)
471// MSP430:UINT16_MAX_ 65535
472// MSP430:INT_LEAST16_MIN_ (-32767 -1)
473// MSP430:INT_LEAST16_MAX_ 32767
474// MSP430:UINT_LEAST16_MAX_ 65535
475// MSP430:INT_FAST16_MIN_ (-32767 -1)
476// MSP430:INT_FAST16_MAX_ 32767
477// MSP430:UINT_FAST16_MAX_ 65535
478//
479// MSP430:INT32_MAX_ 2147483647L
480// MSP430:INT32_MIN_ (-2147483647L -1)
481// MSP430:UINT32_MAX_ 4294967295UL
482// MSP430:INT_LEAST32_MIN_ (-2147483647L -1)
483// MSP430:INT_LEAST32_MAX_ 2147483647L
484// MSP430:UINT_LEAST32_MAX_ 4294967295UL
485// MSP430:INT_FAST32_MIN_ (-2147483647L -1)
486// MSP430:INT_FAST32_MAX_ 2147483647L
487// MSP430:UINT_FAST32_MAX_ 4294967295UL
488//
489// MSP430:INT64_MAX_ 9223372036854775807LL
490// MSP430:INT64_MIN_ (-9223372036854775807LL -1)
491// MSP430:UINT64_MAX_ 18446744073709551615ULL
492// MSP430:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
493// MSP430:INT_LEAST64_MAX_ 9223372036854775807LL
494// MSP430:UINT_LEAST64_MAX_ 18446744073709551615ULL
495// MSP430:INT_FAST64_MIN_ (-9223372036854775807LL -1)
496// MSP430:INT_FAST64_MAX_ 9223372036854775807LL
497// MSP430:UINT_FAST64_MAX_ 18446744073709551615ULL
498//
499// MSP430:INTPTR_MIN_ (-32767 -1)
500// MSP430:INTPTR_MAX_ 32767
501// MSP430:UINTPTR_MAX_ 65535
502// MSP430:PTRDIFF_MIN_ (-32767 -1)
503// MSP430:PTRDIFF_MAX_ 32767
504// MSP430:SIZE_MAX_ 65535
505//
506// MSP430:INTMAX_MIN_ (-9223372036854775807LL -1)
507// MSP430:INTMAX_MAX_ 9223372036854775807LL
508// MSP430:UINTMAX_MAX_ 18446744073709551615ULL
509//
510// MSP430:SIG_ATOMIC_MIN_ (-2147483647L -1)
511// MSP430:SIG_ATOMIC_MAX_ 2147483647L
512// MSP430:WINT_MIN_ (-32767 -1)
513// MSP430:WINT_MAX_ 32767
514//
515// MSP430:WCHAR_MAX_ 32767
516// MSP430:WCHAR_MIN_ (-32767 -1)
517//
518// MSP430:INT8_C_(0) 0
519// MSP430:UINT8_C_(0) 0U
520// MSP430:INT16_C_(0) 0
521// MSP430:UINT16_C_(0) 0U
522// MSP430:INT32_C_(0) 0L
523// MSP430:UINT32_C_(0) 0UL
524// MSP430:INT64_C_(0) 0LL
525// MSP430:UINT64_C_(0) 0ULL
526//
527// MSP430:INTMAX_C_(0) 0L
528// MSP430:UINTMAX_C_(0) 0UL
529//
530// RUN: %clang_cc1 -E -ffreestanding -triple=powerpc64-none-none %s | FileCheck -check-prefix PPC64 %s
531//
532// PPC64:typedef long int int64_t;
533// PPC64:typedef long unsigned int uint64_t;
534// PPC64:typedef int64_t int_least64_t;
535// PPC64:typedef uint64_t uint_least64_t;
536// PPC64:typedef int64_t int_fast64_t;
537// PPC64:typedef uint64_t uint_fast64_t;
538//
539// PPC64:typedef int int32_t;
540// PPC64:typedef unsigned int uint32_t;
541// PPC64:typedef int32_t int_least32_t;
542// PPC64:typedef uint32_t uint_least32_t;
543// PPC64:typedef int32_t int_fast32_t;
544// PPC64:typedef uint32_t uint_fast32_t;
545//
546// PPC64:typedef short int16_t;
547// PPC64:typedef unsigned short uint16_t;
548// PPC64:typedef int16_t int_least16_t;
549// PPC64:typedef uint16_t uint_least16_t;
550// PPC64:typedef int16_t int_fast16_t;
551// PPC64:typedef uint16_t uint_fast16_t;
552//
553// PPC64:typedef signed char int8_t;
554// PPC64:typedef unsigned char uint8_t;
555// PPC64:typedef int8_t int_least8_t;
556// PPC64:typedef uint8_t uint_least8_t;
557// PPC64:typedef int8_t int_fast8_t;
558// PPC64:typedef uint8_t uint_fast8_t;
559//
560// PPC64:typedef int64_t intptr_t;
561// PPC64:typedef uint64_t uintptr_t;
562//
563// PPC64:typedef long int intmax_t;
564// PPC64:typedef long unsigned int uintmax_t;
565//
566// PPC64:INT8_MAX_ 127
567// PPC64:INT8_MIN_ (-127 -1)
568// PPC64:UINT8_MAX_ 255
569// PPC64:INT_LEAST8_MIN_ (-127 -1)
570// PPC64:INT_LEAST8_MAX_ 127
571// PPC64:UINT_LEAST8_MAX_ 255
572// PPC64:INT_FAST8_MIN_ (-127 -1)
573// PPC64:INT_FAST8_MAX_ 127
574// PPC64:UINT_FAST8_MAX_ 255
575//
576// PPC64:INT16_MAX_ 32767
577// PPC64:INT16_MIN_ (-32767 -1)
578// PPC64:UINT16_MAX_ 65535
579// PPC64:INT_LEAST16_MIN_ (-32767 -1)
580// PPC64:INT_LEAST16_MAX_ 32767
581// PPC64:UINT_LEAST16_MAX_ 65535
582// PPC64:INT_FAST16_MIN_ (-32767 -1)
583// PPC64:INT_FAST16_MAX_ 32767
584// PPC64:UINT_FAST16_MAX_ 65535
585//
586// PPC64:INT32_MAX_ 2147483647
587// PPC64:INT32_MIN_ (-2147483647 -1)
588// PPC64:UINT32_MAX_ 4294967295U
589// PPC64:INT_LEAST32_MIN_ (-2147483647 -1)
590// PPC64:INT_LEAST32_MAX_ 2147483647
591// PPC64:UINT_LEAST32_MAX_ 4294967295U
592// PPC64:INT_FAST32_MIN_ (-2147483647 -1)
593// PPC64:INT_FAST32_MAX_ 2147483647
594// PPC64:UINT_FAST32_MAX_ 4294967295U
595//
596// PPC64:INT64_MAX_ 9223372036854775807L
597// PPC64:INT64_MIN_ (-9223372036854775807L -1)
598// PPC64:UINT64_MAX_ 18446744073709551615UL
599// PPC64:INT_LEAST64_MIN_ (-9223372036854775807L -1)
600// PPC64:INT_LEAST64_MAX_ 9223372036854775807L
601// PPC64:UINT_LEAST64_MAX_ 18446744073709551615UL
602// PPC64:INT_FAST64_MIN_ (-9223372036854775807L -1)
603// PPC64:INT_FAST64_MAX_ 9223372036854775807L
604// PPC64:UINT_FAST64_MAX_ 18446744073709551615UL
605//
606// PPC64:INTPTR_MIN_ (-9223372036854775807L -1)
607// PPC64:INTPTR_MAX_ 9223372036854775807L
608// PPC64:UINTPTR_MAX_ 18446744073709551615UL
609// PPC64:PTRDIFF_MIN_ (-9223372036854775807L -1)
610// PPC64:PTRDIFF_MAX_ 9223372036854775807L
611// PPC64:SIZE_MAX_ 18446744073709551615UL
612//
613// PPC64:INTMAX_MIN_ (-9223372036854775807L -1)
614// PPC64:INTMAX_MAX_ 9223372036854775807L
615// PPC64:UINTMAX_MAX_ 18446744073709551615UL
616//
617// PPC64:SIG_ATOMIC_MIN_ (-2147483647 -1)
618// PPC64:SIG_ATOMIC_MAX_ 2147483647
619// PPC64:WINT_MIN_ (-2147483647 -1)
620// PPC64:WINT_MAX_ 2147483647
621//
622// PPC64:WCHAR_MAX_ 2147483647
623// PPC64:WCHAR_MIN_ (-2147483647 -1)
624//
625// PPC64:INT8_C_(0) 0
626// PPC64:UINT8_C_(0) 0U
627// PPC64:INT16_C_(0) 0
628// PPC64:UINT16_C_(0) 0U
629// PPC64:INT32_C_(0) 0
630// PPC64:UINT32_C_(0) 0U
631// PPC64:INT64_C_(0) 0L
632// PPC64:UINT64_C_(0) 0UL
633//
634// PPC64:INTMAX_C_(0) 0L
635// PPC64:UINTMAX_C_(0) 0UL
636//
637// RUN: %clang_cc1 -E -ffreestanding -triple=powerpc64-none-netbsd %s | FileCheck -check-prefix PPC64-NETBSD %s
638//
639// PPC64-NETBSD:typedef long long int int64_t;
640// PPC64-NETBSD:typedef long long unsigned int uint64_t;
641// PPC64-NETBSD:typedef int64_t int_least64_t;
642// PPC64-NETBSD:typedef uint64_t uint_least64_t;
643// PPC64-NETBSD:typedef int64_t int_fast64_t;
644// PPC64-NETBSD:typedef uint64_t uint_fast64_t;
645//
646// PPC64-NETBSD:typedef int int32_t;
647// PPC64-NETBSD:typedef unsigned int uint32_t;
648// PPC64-NETBSD:typedef int32_t int_least32_t;
649// PPC64-NETBSD:typedef uint32_t uint_least32_t;
650// PPC64-NETBSD:typedef int32_t int_fast32_t;
651// PPC64-NETBSD:typedef uint32_t uint_fast32_t;
652//
653// PPC64-NETBSD:typedef short int16_t;
654// PPC64-NETBSD:typedef unsigned short uint16_t;
655// PPC64-NETBSD:typedef int16_t int_least16_t;
656// PPC64-NETBSD:typedef uint16_t uint_least16_t;
657// PPC64-NETBSD:typedef int16_t int_fast16_t;
658// PPC64-NETBSD:typedef uint16_t uint_fast16_t;
659//
660// PPC64-NETBSD:typedef signed char int8_t;
661// PPC64-NETBSD:typedef unsigned char uint8_t;
662// PPC64-NETBSD:typedef int8_t int_least8_t;
663// PPC64-NETBSD:typedef uint8_t uint_least8_t;
664// PPC64-NETBSD:typedef int8_t int_fast8_t;
665// PPC64-NETBSD:typedef uint8_t uint_fast8_t;
666//
667// PPC64-NETBSD:typedef int64_t intptr_t;
668// PPC64-NETBSD:typedef uint64_t uintptr_t;
669//
670// PPC64-NETBSD:typedef long long int intmax_t;
671// PPC64-NETBSD:typedef long long unsigned int uintmax_t;
672//
673// PPC64-NETBSD:INT8_MAX_ 127
674// PPC64-NETBSD:INT8_MIN_ (-127 -1)
675// PPC64-NETBSD:UINT8_MAX_ 255
676// PPC64-NETBSD:INT_LEAST8_MIN_ (-127 -1)
677// PPC64-NETBSD:INT_LEAST8_MAX_ 127
678// PPC64-NETBSD:UINT_LEAST8_MAX_ 255
679// PPC64-NETBSD:INT_FAST8_MIN_ (-127 -1)
680// PPC64-NETBSD:INT_FAST8_MAX_ 127
681// PPC64-NETBSD:UINT_FAST8_MAX_ 255
682//
683// PPC64-NETBSD:INT16_MAX_ 32767
684// PPC64-NETBSD:INT16_MIN_ (-32767 -1)
685// PPC64-NETBSD:UINT16_MAX_ 65535
686// PPC64-NETBSD:INT_LEAST16_MIN_ (-32767 -1)
687// PPC64-NETBSD:INT_LEAST16_MAX_ 32767
688// PPC64-NETBSD:UINT_LEAST16_MAX_ 65535
689// PPC64-NETBSD:INT_FAST16_MIN_ (-32767 -1)
690// PPC64-NETBSD:INT_FAST16_MAX_ 32767
691// PPC64-NETBSD:UINT_FAST16_MAX_ 65535
692//
693// PPC64-NETBSD:INT32_MAX_ 2147483647
694// PPC64-NETBSD:INT32_MIN_ (-2147483647 -1)
695// PPC64-NETBSD:UINT32_MAX_ 4294967295U
696// PPC64-NETBSD:INT_LEAST32_MIN_ (-2147483647 -1)
697// PPC64-NETBSD:INT_LEAST32_MAX_ 2147483647
698// PPC64-NETBSD:UINT_LEAST32_MAX_ 4294967295U
699// PPC64-NETBSD:INT_FAST32_MIN_ (-2147483647 -1)
700// PPC64-NETBSD:INT_FAST32_MAX_ 2147483647
701// PPC64-NETBSD:UINT_FAST32_MAX_ 4294967295U
702//
703// PPC64-NETBSD:INT64_MAX_ 9223372036854775807LL
704// PPC64-NETBSD:INT64_MIN_ (-9223372036854775807LL -1)
705// PPC64-NETBSD:UINT64_MAX_ 18446744073709551615ULL
706// PPC64-NETBSD:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
707// PPC64-NETBSD:INT_LEAST64_MAX_ 9223372036854775807LL
708// PPC64-NETBSD:UINT_LEAST64_MAX_ 18446744073709551615ULL
709// PPC64-NETBSD:INT_FAST64_MIN_ (-9223372036854775807LL -1)
710// PPC64-NETBSD:INT_FAST64_MAX_ 9223372036854775807LL
711// PPC64-NETBSD:UINT_FAST64_MAX_ 18446744073709551615ULL
712//
713// PPC64-NETBSD:INTPTR_MIN_ (-9223372036854775807LL -1)
714// PPC64-NETBSD:INTPTR_MAX_ 9223372036854775807LL
715// PPC64-NETBSD:UINTPTR_MAX_ 18446744073709551615ULL
716// PPC64-NETBSD:PTRDIFF_MIN_ (-9223372036854775807LL -1)
717// PPC64-NETBSD:PTRDIFF_MAX_ 9223372036854775807LL
718// PPC64-NETBSD:SIZE_MAX_ 18446744073709551615ULL
719//
720// PPC64-NETBSD:INTMAX_MIN_ (-9223372036854775807LL -1)
721// PPC64-NETBSD:INTMAX_MAX_ 9223372036854775807LL
722// PPC64-NETBSD:UINTMAX_MAX_ 18446744073709551615ULL
723//
724// PPC64-NETBSD:SIG_ATOMIC_MIN_ (-2147483647 -1)
725// PPC64-NETBSD:SIG_ATOMIC_MAX_ 2147483647
726// PPC64-NETBSD:WINT_MIN_ (-2147483647 -1)
727// PPC64-NETBSD:WINT_MAX_ 2147483647
728//
729// PPC64-NETBSD:WCHAR_MAX_ 2147483647
730// PPC64-NETBSD:WCHAR_MIN_ (-2147483647 -1)
731//
732// PPC64-NETBSD:INT8_C_(0) 0
733// PPC64-NETBSD:UINT8_C_(0) 0U
734// PPC64-NETBSD:INT16_C_(0) 0
735// PPC64-NETBSD:UINT16_C_(0) 0U
736// PPC64-NETBSD:INT32_C_(0) 0
737// PPC64-NETBSD:UINT32_C_(0) 0U
738// PPC64-NETBSD:INT64_C_(0) 0LL
739// PPC64-NETBSD:UINT64_C_(0) 0ULL
740//
741// PPC64-NETBSD:INTMAX_C_(0) 0LL
742// PPC64-NETBSD:UINTMAX_C_(0) 0ULL
743//
744// RUN: %clang_cc1 -E -ffreestanding -triple=powerpc-none-none %s | FileCheck -check-prefix PPC %s
745//
746//
747// PPC:typedef long long int int64_t;
748// PPC:typedef long long unsigned int uint64_t;
749// PPC:typedef int64_t int_least64_t;
750// PPC:typedef uint64_t uint_least64_t;
751// PPC:typedef int64_t int_fast64_t;
752// PPC:typedef uint64_t uint_fast64_t;
753//
754// PPC:typedef int int32_t;
755// PPC:typedef unsigned int uint32_t;
756// PPC:typedef int32_t int_least32_t;
757// PPC:typedef uint32_t uint_least32_t;
758// PPC:typedef int32_t int_fast32_t;
759// PPC:typedef uint32_t uint_fast32_t;
760//
761// PPC:typedef short int16_t;
762// PPC:typedef unsigned short uint16_t;
763// PPC:typedef int16_t int_least16_t;
764// PPC:typedef uint16_t uint_least16_t;
765// PPC:typedef int16_t int_fast16_t;
766// PPC:typedef uint16_t uint_fast16_t;
767//
768// PPC:typedef signed char int8_t;
769// PPC:typedef unsigned char uint8_t;
770// PPC:typedef int8_t int_least8_t;
771// PPC:typedef uint8_t uint_least8_t;
772// PPC:typedef int8_t int_fast8_t;
773// PPC:typedef uint8_t uint_fast8_t;
774//
775// PPC:typedef int32_t intptr_t;
776// PPC:typedef uint32_t uintptr_t;
777//
778// PPC:typedef long long int intmax_t;
779// PPC:typedef long long unsigned int uintmax_t;
780//
781// PPC:INT8_MAX_ 127
782// PPC:INT8_MIN_ (-127 -1)
783// PPC:UINT8_MAX_ 255
784// PPC:INT_LEAST8_MIN_ (-127 -1)
785// PPC:INT_LEAST8_MAX_ 127
786// PPC:UINT_LEAST8_MAX_ 255
787// PPC:INT_FAST8_MIN_ (-127 -1)
788// PPC:INT_FAST8_MAX_ 127
789// PPC:UINT_FAST8_MAX_ 255
790//
791// PPC:INT16_MAX_ 32767
792// PPC:INT16_MIN_ (-32767 -1)
793// PPC:UINT16_MAX_ 65535
794// PPC:INT_LEAST16_MIN_ (-32767 -1)
795// PPC:INT_LEAST16_MAX_ 32767
796// PPC:UINT_LEAST16_MAX_ 65535
797// PPC:INT_FAST16_MIN_ (-32767 -1)
798// PPC:INT_FAST16_MAX_ 32767
799// PPC:UINT_FAST16_MAX_ 65535
800//
801// PPC:INT32_MAX_ 2147483647
802// PPC:INT32_MIN_ (-2147483647 -1)
803// PPC:UINT32_MAX_ 4294967295U
804// PPC:INT_LEAST32_MIN_ (-2147483647 -1)
805// PPC:INT_LEAST32_MAX_ 2147483647
806// PPC:UINT_LEAST32_MAX_ 4294967295U
807// PPC:INT_FAST32_MIN_ (-2147483647 -1)
808// PPC:INT_FAST32_MAX_ 2147483647
809// PPC:UINT_FAST32_MAX_ 4294967295U
810//
811// PPC:INT64_MAX_ 9223372036854775807LL
812// PPC:INT64_MIN_ (-9223372036854775807LL -1)
813// PPC:UINT64_MAX_ 18446744073709551615ULL
814// PPC:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
815// PPC:INT_LEAST64_MAX_ 9223372036854775807LL
816// PPC:UINT_LEAST64_MAX_ 18446744073709551615ULL
817// PPC:INT_FAST64_MIN_ (-9223372036854775807LL -1)
818// PPC:INT_FAST64_MAX_ 9223372036854775807LL
819// PPC:UINT_FAST64_MAX_ 18446744073709551615ULL
820//
821// PPC:INTPTR_MIN_ (-2147483647 -1)
822// PPC:INTPTR_MAX_ 2147483647
823// PPC:UINTPTR_MAX_ 4294967295U
824// PPC:PTRDIFF_MIN_ (-2147483647 -1)
825// PPC:PTRDIFF_MAX_ 2147483647
826// PPC:SIZE_MAX_ 4294967295U
827//
828// PPC:INTMAX_MIN_ (-9223372036854775807LL -1)
829// PPC:INTMAX_MAX_ 9223372036854775807LL
830// PPC:UINTMAX_MAX_ 18446744073709551615ULL
831//
832// PPC:SIG_ATOMIC_MIN_ (-2147483647 -1)
833// PPC:SIG_ATOMIC_MAX_ 2147483647
834// PPC:WINT_MIN_ (-2147483647 -1)
835// PPC:WINT_MAX_ 2147483647
836//
837// PPC:WCHAR_MAX_ 2147483647
838// PPC:WCHAR_MIN_ (-2147483647 -1)
839//
840// PPC:INT8_C_(0) 0
841// PPC:UINT8_C_(0) 0U
842// PPC:INT16_C_(0) 0
843// PPC:UINT16_C_(0) 0U
844// PPC:INT32_C_(0) 0
845// PPC:UINT32_C_(0) 0U
846// PPC:INT64_C_(0) 0LL
847// PPC:UINT64_C_(0) 0ULL
848//
849// PPC:INTMAX_C_(0) 0LL
850// PPC:UINTMAX_C_(0) 0ULL
851//
852// RUN: %clang_cc1 -E -ffreestanding -triple=s390x-none-none %s | FileCheck -check-prefix S390X %s
853//
854// S390X:typedef long int int64_t;
855// S390X:typedef long unsigned int uint64_t;
856// S390X:typedef int64_t int_least64_t;
857// S390X:typedef uint64_t uint_least64_t;
858// S390X:typedef int64_t int_fast64_t;
859// S390X:typedef uint64_t uint_fast64_t;
860//
861// S390X:typedef int int32_t;
862// S390X:typedef unsigned int uint32_t;
863// S390X:typedef int32_t int_least32_t;
864// S390X:typedef uint32_t uint_least32_t;
865// S390X:typedef int32_t int_fast32_t;
866// S390X:typedef uint32_t uint_fast32_t;
867//
868// S390X:typedef short int16_t;
869// S390X:typedef unsigned short uint16_t;
870// S390X:typedef int16_t int_least16_t;
871// S390X:typedef uint16_t uint_least16_t;
872// S390X:typedef int16_t int_fast16_t;
873// S390X:typedef uint16_t uint_fast16_t;
874//
875// S390X:typedef signed char int8_t;
876// S390X:typedef unsigned char uint8_t;
877// S390X:typedef int8_t int_least8_t;
878// S390X:typedef uint8_t uint_least8_t;
879// S390X:typedef int8_t int_fast8_t;
880// S390X:typedef uint8_t uint_fast8_t;
881//
882// S390X:typedef int64_t intptr_t;
883// S390X:typedef uint64_t uintptr_t;
884//
885// S390X:typedef long int intmax_t;
886// S390X:typedef long unsigned int uintmax_t;
887//
888// S390X:INT8_MAX_ 127
889// S390X:INT8_MIN_ (-127 -1)
890// S390X:UINT8_MAX_ 255
891// S390X:INT_LEAST8_MIN_ (-127 -1)
892// S390X:INT_LEAST8_MAX_ 127
893// S390X:UINT_LEAST8_MAX_ 255
894// S390X:INT_FAST8_MIN_ (-127 -1)
895// S390X:INT_FAST8_MAX_ 127
896// S390X:UINT_FAST8_MAX_ 255
897//
898// S390X:INT16_MAX_ 32767
899// S390X:INT16_MIN_ (-32767 -1)
900// S390X:UINT16_MAX_ 65535
901// S390X:INT_LEAST16_MIN_ (-32767 -1)
902// S390X:INT_LEAST16_MAX_ 32767
903// S390X:UINT_LEAST16_MAX_ 65535
904// S390X:INT_FAST16_MIN_ (-32767 -1)
905// S390X:INT_FAST16_MAX_ 32767
906// S390X:UINT_FAST16_MAX_ 65535
907//
908// S390X:INT32_MAX_ 2147483647
909// S390X:INT32_MIN_ (-2147483647 -1)
910// S390X:UINT32_MAX_ 4294967295U
911// S390X:INT_LEAST32_MIN_ (-2147483647 -1)
912// S390X:INT_LEAST32_MAX_ 2147483647
913// S390X:UINT_LEAST32_MAX_ 4294967295U
914// S390X:INT_FAST32_MIN_ (-2147483647 -1)
915// S390X:INT_FAST32_MAX_ 2147483647
916// S390X:UINT_FAST32_MAX_ 4294967295U
917//
918// S390X:INT64_MAX_ 9223372036854775807L
919// S390X:INT64_MIN_ (-9223372036854775807L -1)
920// S390X:UINT64_MAX_ 18446744073709551615UL
921// S390X:INT_LEAST64_MIN_ (-9223372036854775807L -1)
922// S390X:INT_LEAST64_MAX_ 9223372036854775807L
923// S390X:UINT_LEAST64_MAX_ 18446744073709551615UL
924// S390X:INT_FAST64_MIN_ (-9223372036854775807L -1)
925// S390X:INT_FAST64_MAX_ 9223372036854775807L
926// S390X:UINT_FAST64_MAX_ 18446744073709551615UL
927//
928// S390X:INTPTR_MIN_ (-9223372036854775807L -1)
929// S390X:INTPTR_MAX_ 9223372036854775807L
930// S390X:UINTPTR_MAX_ 18446744073709551615UL
931// S390X:PTRDIFF_MIN_ (-9223372036854775807L -1)
932// S390X:PTRDIFF_MAX_ 9223372036854775807L
933// S390X:SIZE_MAX_ 18446744073709551615UL
934//
935// S390X:INTMAX_MIN_ (-9223372036854775807L -1)
936// S390X:INTMAX_MAX_ 9223372036854775807L
937// S390X:UINTMAX_MAX_ 18446744073709551615UL
938//
939// S390X:SIG_ATOMIC_MIN_ (-2147483647 -1)
940// S390X:SIG_ATOMIC_MAX_ 2147483647
941// S390X:WINT_MIN_ (-2147483647 -1)
942// S390X:WINT_MAX_ 2147483647
943//
944// S390X:WCHAR_MAX_ 2147483647
945// S390X:WCHAR_MIN_ (-2147483647 -1)
946//
947// S390X:INT8_C_(0) 0
948// S390X:UINT8_C_(0) 0U
949// S390X:INT16_C_(0) 0
950// S390X:UINT16_C_(0) 0U
951// S390X:INT32_C_(0) 0
952// S390X:UINT32_C_(0) 0U
953// S390X:INT64_C_(0) 0L
954// S390X:UINT64_C_(0) 0UL
955//
956// S390X:INTMAX_C_(0) 0L
957// S390X:UINTMAX_C_(0) 0UL
958//
959// RUN: %clang_cc1 -E -ffreestanding -triple=sparc-none-none %s | FileCheck -check-prefix SPARC %s
960//
961// SPARC:typedef long long int int64_t;
962// SPARC:typedef long long unsigned int uint64_t;
963// SPARC:typedef int64_t int_least64_t;
964// SPARC:typedef uint64_t uint_least64_t;
965// SPARC:typedef int64_t int_fast64_t;
966// SPARC:typedef uint64_t uint_fast64_t;
967//
968// SPARC:typedef int int32_t;
969// SPARC:typedef unsigned int uint32_t;
970// SPARC:typedef int32_t int_least32_t;
971// SPARC:typedef uint32_t uint_least32_t;
972// SPARC:typedef int32_t int_fast32_t;
973// SPARC:typedef uint32_t uint_fast32_t;
974//
975// SPARC:typedef short int16_t;
976// SPARC:typedef unsigned short uint16_t;
977// SPARC:typedef int16_t int_least16_t;
978// SPARC:typedef uint16_t uint_least16_t;
979// SPARC:typedef int16_t int_fast16_t;
980// SPARC:typedef uint16_t uint_fast16_t;
981//
982// SPARC:typedef signed char int8_t;
983// SPARC:typedef unsigned char uint8_t;
984// SPARC:typedef int8_t int_least8_t;
985// SPARC:typedef uint8_t uint_least8_t;
986// SPARC:typedef int8_t int_fast8_t;
987// SPARC:typedef uint8_t uint_fast8_t;
988//
989// SPARC:typedef int32_t intptr_t;
990// SPARC:typedef uint32_t uintptr_t;
991//
992// SPARC:typedef long long int intmax_t;
993// SPARC:typedef long long unsigned int uintmax_t;
994//
995// SPARC:INT8_MAX_ 127
996// SPARC:INT8_MIN_ (-127 -1)
997// SPARC:UINT8_MAX_ 255
998// SPARC:INT_LEAST8_MIN_ (-127 -1)
999// SPARC:INT_LEAST8_MAX_ 127
1000// SPARC:UINT_LEAST8_MAX_ 255
1001// SPARC:INT_FAST8_MIN_ (-127 -1)
1002// SPARC:INT_FAST8_MAX_ 127
1003// SPARC:UINT_FAST8_MAX_ 255
1004//
1005// SPARC:INT16_MAX_ 32767
1006// SPARC:INT16_MIN_ (-32767 -1)
1007// SPARC:UINT16_MAX_ 65535
1008// SPARC:INT_LEAST16_MIN_ (-32767 -1)
1009// SPARC:INT_LEAST16_MAX_ 32767
1010// SPARC:UINT_LEAST16_MAX_ 65535
1011// SPARC:INT_FAST16_MIN_ (-32767 -1)
1012// SPARC:INT_FAST16_MAX_ 32767
1013// SPARC:UINT_FAST16_MAX_ 65535
1014//
1015// SPARC:INT32_MAX_ 2147483647
1016// SPARC:INT32_MIN_ (-2147483647 -1)
1017// SPARC:UINT32_MAX_ 4294967295U
1018// SPARC:INT_LEAST32_MIN_ (-2147483647 -1)
1019// SPARC:INT_LEAST32_MAX_ 2147483647
1020// SPARC:UINT_LEAST32_MAX_ 4294967295U
1021// SPARC:INT_FAST32_MIN_ (-2147483647 -1)
1022// SPARC:INT_FAST32_MAX_ 2147483647
1023// SPARC:UINT_FAST32_MAX_ 4294967295U
1024//
1025// SPARC:INT64_MAX_ 9223372036854775807LL
1026// SPARC:INT64_MIN_ (-9223372036854775807LL -1)
1027// SPARC:UINT64_MAX_ 18446744073709551615ULL
1028// SPARC:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
1029// SPARC:INT_LEAST64_MAX_ 9223372036854775807LL
1030// SPARC:UINT_LEAST64_MAX_ 18446744073709551615ULL
1031// SPARC:INT_FAST64_MIN_ (-9223372036854775807LL -1)
1032// SPARC:INT_FAST64_MAX_ 9223372036854775807LL
1033// SPARC:UINT_FAST64_MAX_ 18446744073709551615ULL
1034//
1035// SPARC:INTPTR_MIN_ (-2147483647 -1)
1036// SPARC:INTPTR_MAX_ 2147483647
1037// SPARC:UINTPTR_MAX_ 4294967295U
1038// SPARC:PTRDIFF_MIN_ (-2147483647 -1)
1039// SPARC:PTRDIFF_MAX_ 2147483647
1040// SPARC:SIZE_MAX_ 4294967295U
1041//
1042// SPARC:INTMAX_MIN_ (-9223372036854775807LL -1)
1043// SPARC:INTMAX_MAX_ 9223372036854775807LL
1044// SPARC:UINTMAX_MAX_ 18446744073709551615ULL
1045//
1046// SPARC:SIG_ATOMIC_MIN_ (-2147483647 -1)
1047// SPARC:SIG_ATOMIC_MAX_ 2147483647
1048// SPARC:WINT_MIN_ (-2147483647 -1)
1049// SPARC:WINT_MAX_ 2147483647
1050//
1051// SPARC:WCHAR_MAX_ 2147483647
1052// SPARC:WCHAR_MIN_ (-2147483647 -1)
1053//
1054// SPARC:INT8_C_(0) 0
1055// SPARC:UINT8_C_(0) 0U
1056// SPARC:INT16_C_(0) 0
1057// SPARC:UINT16_C_(0) 0U
1058// SPARC:INT32_C_(0) 0
1059// SPARC:UINT32_C_(0) 0U
1060// SPARC:INT64_C_(0) 0LL
1061// SPARC:UINT64_C_(0) 0ULL
1062//
1063// SPARC:INTMAX_C_(0) 0LL
1064// SPARC:UINTMAX_C_(0) 0ULL
1065//
1066// RUN: %clang_cc1 -E -ffreestanding -triple=tce-none-none %s | FileCheck -check-prefix TCE %s
1067//
1068// TCE:typedef int int32_t;
1069// TCE:typedef unsigned int uint32_t;
1070// TCE:typedef int32_t int_least32_t;
1071// TCE:typedef uint32_t uint_least32_t;
1072// TCE:typedef int32_t int_fast32_t;
1073// TCE:typedef uint32_t uint_fast32_t;
1074//
1075// TCE:typedef short int16_t;
1076// TCE:typedef unsigned short uint16_t;
1077// TCE:typedef int16_t int_least16_t;
1078// TCE:typedef uint16_t uint_least16_t;
1079// TCE:typedef int16_t int_fast16_t;
1080// TCE:typedef uint16_t uint_fast16_t;
1081//
1082// TCE:typedef signed char int8_t;
1083// TCE:typedef unsigned char uint8_t;
1084// TCE:typedef int8_t int_least8_t;
1085// TCE:typedef uint8_t uint_least8_t;
1086// TCE:typedef int8_t int_fast8_t;
1087// TCE:typedef uint8_t uint_fast8_t;
1088//
1089// TCE:typedef int32_t intptr_t;
1090// TCE:typedef uint32_t uintptr_t;
1091//
1092// TCE:typedef long int intmax_t;
1093// TCE:typedef long unsigned int uintmax_t;
1094//
1095// TCE:INT8_MAX_ 127
1096// TCE:INT8_MIN_ (-127 -1)
1097// TCE:UINT8_MAX_ 255
1098// TCE:INT_LEAST8_MIN_ (-127 -1)
1099// TCE:INT_LEAST8_MAX_ 127
1100// TCE:UINT_LEAST8_MAX_ 255
1101// TCE:INT_FAST8_MIN_ (-127 -1)
1102// TCE:INT_FAST8_MAX_ 127
1103// TCE:UINT_FAST8_MAX_ 255
1104//
1105// TCE:INT16_MAX_ 32767
1106// TCE:INT16_MIN_ (-32767 -1)
1107// TCE:UINT16_MAX_ 65535
1108// TCE:INT_LEAST16_MIN_ (-32767 -1)
1109// TCE:INT_LEAST16_MAX_ 32767
1110// TCE:UINT_LEAST16_MAX_ 65535
1111// TCE:INT_FAST16_MIN_ (-32767 -1)
1112// TCE:INT_FAST16_MAX_ 32767
1113// TCE:UINT_FAST16_MAX_ 65535
1114//
1115// TCE:INT32_MAX_ 2147483647
1116// TCE:INT32_MIN_ (-2147483647 -1)
1117// TCE:UINT32_MAX_ 4294967295U
1118// TCE:INT_LEAST32_MIN_ (-2147483647 -1)
1119// TCE:INT_LEAST32_MAX_ 2147483647
1120// TCE:UINT_LEAST32_MAX_ 4294967295U
1121// TCE:INT_FAST32_MIN_ (-2147483647 -1)
1122// TCE:INT_FAST32_MAX_ 2147483647
1123// TCE:UINT_FAST32_MAX_ 4294967295U
1124//
1125// TCE:INT64_MAX_ INT64_MAX
1126// TCE:INT64_MIN_ INT64_MIN
1127// TCE:UINT64_MAX_ UINT64_MAX
1128// TCE:INT_LEAST64_MIN_ INT_LEAST64_MIN
1129// TCE:INT_LEAST64_MAX_ INT_LEAST64_MAX
1130// TCE:UINT_LEAST64_MAX_ UINT_LEAST64_MAX
1131// TCE:INT_FAST64_MIN_ INT_FAST64_MIN
1132// TCE:INT_FAST64_MAX_ INT_FAST64_MAX
1133// TCE:UINT_FAST64_MAX_ UINT_FAST64_MAX
1134//
1135// TCE:INTPTR_MIN_ (-2147483647 -1)
1136// TCE:INTPTR_MAX_ 2147483647
1137// TCE:UINTPTR_MAX_ 4294967295U
1138// TCE:PTRDIFF_MIN_ (-2147483647 -1)
1139// TCE:PTRDIFF_MAX_ 2147483647
1140// TCE:SIZE_MAX_ 4294967295U
1141//
1142// TCE:INTMAX_MIN_ (-2147483647 -1)
1143// TCE:INTMAX_MAX_ 2147483647
1144// TCE:UINTMAX_MAX_ 4294967295U
1145//
1146// TCE:SIG_ATOMIC_MIN_ (-2147483647 -1)
1147// TCE:SIG_ATOMIC_MAX_ 2147483647
1148// TCE:WINT_MIN_ (-2147483647 -1)
1149// TCE:WINT_MAX_ 2147483647
1150//
1151// TCE:WCHAR_MAX_ 2147483647
1152// TCE:WCHAR_MIN_ (-2147483647 -1)
1153//
1154// TCE:INT8_C_(0) 0
1155// TCE:UINT8_C_(0) 0U
1156// TCE:INT16_C_(0) 0
1157// TCE:UINT16_C_(0) 0U
1158// TCE:INT32_C_(0) 0
1159// TCE:UINT32_C_(0) 0U
1160// TCE:INT64_C_(0) INT64_C(0)
1161// TCE:UINT64_C_(0) UINT64_C(0)
1162//
1163// TCE:INTMAX_C_(0) 0
1164// TCE:UINTMAX_C_(0) 0U
1165//
1166// RUN: %clang_cc1 -E -ffreestanding -triple=x86_64-none-none %s | FileCheck -check-prefix X86_64 %s
1167//
1168//
1169// X86_64:typedef long int int64_t;
1170// X86_64:typedef long unsigned int uint64_t;
1171// X86_64:typedef int64_t int_least64_t;
1172// X86_64:typedef uint64_t uint_least64_t;
1173// X86_64:typedef int64_t int_fast64_t;
1174// X86_64:typedef uint64_t uint_fast64_t;
1175//
1176// X86_64:typedef int int32_t;
1177// X86_64:typedef unsigned int uint32_t;
1178// X86_64:typedef int32_t int_least32_t;
1179// X86_64:typedef uint32_t uint_least32_t;
1180// X86_64:typedef int32_t int_fast32_t;
1181// X86_64:typedef uint32_t uint_fast32_t;
1182//
1183// X86_64:typedef short int16_t;
1184// X86_64:typedef unsigned short uint16_t;
1185// X86_64:typedef int16_t int_least16_t;
1186// X86_64:typedef uint16_t uint_least16_t;
1187// X86_64:typedef int16_t int_fast16_t;
1188// X86_64:typedef uint16_t uint_fast16_t;
1189//
1190// X86_64:typedef signed char int8_t;
1191// X86_64:typedef unsigned char uint8_t;
1192// X86_64:typedef int8_t int_least8_t;
1193// X86_64:typedef uint8_t uint_least8_t;
1194// X86_64:typedef int8_t int_fast8_t;
1195// X86_64:typedef uint8_t uint_fast8_t;
1196//
1197// X86_64:typedef int64_t intptr_t;
1198// X86_64:typedef uint64_t uintptr_t;
1199//
1200// X86_64:typedef long int intmax_t;
1201// X86_64:typedef long unsigned int uintmax_t;
1202//
1203// X86_64:INT8_MAX_ 127
1204// X86_64:INT8_MIN_ (-127 -1)
1205// X86_64:UINT8_MAX_ 255
1206// X86_64:INT_LEAST8_MIN_ (-127 -1)
1207// X86_64:INT_LEAST8_MAX_ 127
1208// X86_64:UINT_LEAST8_MAX_ 255
1209// X86_64:INT_FAST8_MIN_ (-127 -1)
1210// X86_64:INT_FAST8_MAX_ 127
1211// X86_64:UINT_FAST8_MAX_ 255
1212//
1213// X86_64:INT16_MAX_ 32767
1214// X86_64:INT16_MIN_ (-32767 -1)
1215// X86_64:UINT16_MAX_ 65535
1216// X86_64:INT_LEAST16_MIN_ (-32767 -1)
1217// X86_64:INT_LEAST16_MAX_ 32767
1218// X86_64:UINT_LEAST16_MAX_ 65535
1219// X86_64:INT_FAST16_MIN_ (-32767 -1)
1220// X86_64:INT_FAST16_MAX_ 32767
1221// X86_64:UINT_FAST16_MAX_ 65535
1222//
1223// X86_64:INT32_MAX_ 2147483647
1224// X86_64:INT32_MIN_ (-2147483647 -1)
1225// X86_64:UINT32_MAX_ 4294967295U
1226// X86_64:INT_LEAST32_MIN_ (-2147483647 -1)
1227// X86_64:INT_LEAST32_MAX_ 2147483647
1228// X86_64:UINT_LEAST32_MAX_ 4294967295U
1229// X86_64:INT_FAST32_MIN_ (-2147483647 -1)
1230// X86_64:INT_FAST32_MAX_ 2147483647
1231// X86_64:UINT_FAST32_MAX_ 4294967295U
1232//
1233// X86_64:INT64_MAX_ 9223372036854775807L
1234// X86_64:INT64_MIN_ (-9223372036854775807L -1)
1235// X86_64:UINT64_MAX_ 18446744073709551615UL
1236// X86_64:INT_LEAST64_MIN_ (-9223372036854775807L -1)
1237// X86_64:INT_LEAST64_MAX_ 9223372036854775807L
1238// X86_64:UINT_LEAST64_MAX_ 18446744073709551615UL
1239// X86_64:INT_FAST64_MIN_ (-9223372036854775807L -1)
1240// X86_64:INT_FAST64_MAX_ 9223372036854775807L
1241// X86_64:UINT_FAST64_MAX_ 18446744073709551615UL
1242//
1243// X86_64:INTPTR_MIN_ (-9223372036854775807L -1)
1244// X86_64:INTPTR_MAX_ 9223372036854775807L
1245// X86_64:UINTPTR_MAX_ 18446744073709551615UL
1246// X86_64:PTRDIFF_MIN_ (-9223372036854775807L -1)
1247// X86_64:PTRDIFF_MAX_ 9223372036854775807L
1248// X86_64:SIZE_MAX_ 18446744073709551615UL
1249//
1250// X86_64:INTMAX_MIN_ (-9223372036854775807L -1)
1251// X86_64:INTMAX_MAX_ 9223372036854775807L
1252// X86_64:UINTMAX_MAX_ 18446744073709551615UL
1253//
1254// X86_64:SIG_ATOMIC_MIN_ (-2147483647 -1)
1255// X86_64:SIG_ATOMIC_MAX_ 2147483647
1256// X86_64:WINT_MIN_ (-2147483647 -1)
1257// X86_64:WINT_MAX_ 2147483647
1258//
1259// X86_64:WCHAR_MAX_ 2147483647
1260// X86_64:WCHAR_MIN_ (-2147483647 -1)
1261//
1262// X86_64:INT8_C_(0) 0
1263// X86_64:UINT8_C_(0) 0U
1264// X86_64:INT16_C_(0) 0
1265// X86_64:UINT16_C_(0) 0U
1266// X86_64:INT32_C_(0) 0
1267// X86_64:UINT32_C_(0) 0U
1268// X86_64:INT64_C_(0) 0L
1269// X86_64:UINT64_C_(0) 0UL
1270//
1271// X86_64:INTMAX_C_(0) 0L
1272// X86_64:UINTMAX_C_(0) 0UL
1273//
1274//
1275// RUN: %clang_cc1 -E -ffreestanding -triple=x86_64-pc-linux-gnu %s | FileCheck -check-prefix X86_64_LINUX %s
1276//
1277// X86_64_LINUX:WINT_MIN_ 0U
1278// X86_64_LINUX:WINT_MAX_ 4294967295U
1279//
1280//
1281// RUN: %clang_cc1 -E -ffreestanding -triple=i386-mingw32 %s | FileCheck -check-prefix I386_MINGW32 %s
1282//
1283// I386_MINGW32:WCHAR_MAX_ 65535
1284// I386_MINGW32:WCHAR_MIN_ 0
1285//
1286//
1287// RUN: %clang_cc1 -E -ffreestanding -triple=xcore-none-none %s | FileCheck -check-prefix XCORE %s
1288//
1289// XCORE:typedef long long int int64_t;
1290// XCORE:typedef long long unsigned int uint64_t;
1291// XCORE:typedef int64_t int_least64_t;
1292// XCORE:typedef uint64_t uint_least64_t;
1293// XCORE:typedef int64_t int_fast64_t;
1294// XCORE:typedef uint64_t uint_fast64_t;
1295//
1296// XCORE:typedef int int32_t;
1297// XCORE:typedef unsigned int uint32_t;
1298// XCORE:typedef int32_t int_least32_t;
1299// XCORE:typedef uint32_t uint_least32_t;
1300// XCORE:typedef int32_t int_fast32_t;
1301// XCORE:typedef uint32_t uint_fast32_t;
1302//
1303// XCORE:typedef short int16_t;
1304// XCORE:typedef unsigned short uint16_t;
1305// XCORE:typedef int16_t int_least16_t;
1306// XCORE:typedef uint16_t uint_least16_t;
1307// XCORE:typedef int16_t int_fast16_t;
1308// XCORE:typedef uint16_t uint_fast16_t;
1309//
1310// XCORE:typedef signed char int8_t;
1311// XCORE:typedef unsigned char uint8_t;
1312// XCORE:typedef int8_t int_least8_t;
1313// XCORE:typedef uint8_t uint_least8_t;
1314// XCORE:typedef int8_t int_fast8_t;
1315// XCORE:typedef uint8_t uint_fast8_t;
1316//
1317// XCORE:typedef int32_t intptr_t;
1318// XCORE:typedef uint32_t uintptr_t;
1319//
1320// XCORE:typedef long long int intmax_t;
1321// XCORE:typedef long long unsigned int uintmax_t;
1322//
1323// XCORE:INT8_MAX_ 127
1324// XCORE:INT8_MIN_ (-127 -1)
1325// XCORE:UINT8_MAX_ 255
1326// XCORE:INT_LEAST8_MIN_ (-127 -1)
1327// XCORE:INT_LEAST8_MAX_ 127
1328// XCORE:UINT_LEAST8_MAX_ 255
1329// XCORE:INT_FAST8_MIN_ (-127 -1)
1330// XCORE:INT_FAST8_MAX_ 127
1331// XCORE:UINT_FAST8_MAX_ 255
1332//
1333// XCORE:INT16_MAX_ 32767
1334// XCORE:INT16_MIN_ (-32767 -1)
1335// XCORE:UINT16_MAX_ 65535
1336// XCORE:INT_LEAST16_MIN_ (-32767 -1)
1337// XCORE:INT_LEAST16_MAX_ 32767
1338// XCORE:UINT_LEAST16_MAX_ 65535
1339// XCORE:INT_FAST16_MIN_ (-32767 -1)
1340// XCORE:INT_FAST16_MAX_ 32767
1341// XCORE:UINT_FAST16_MAX_ 65535
1342//
1343// XCORE:INT32_MAX_ 2147483647
1344// XCORE:INT32_MIN_ (-2147483647 -1)
1345// XCORE:UINT32_MAX_ 4294967295U
1346// XCORE:INT_LEAST32_MIN_ (-2147483647 -1)
1347// XCORE:INT_LEAST32_MAX_ 2147483647
1348// XCORE:UINT_LEAST32_MAX_ 4294967295U
1349// XCORE:INT_FAST32_MIN_ (-2147483647 -1)
1350// XCORE:INT_FAST32_MAX_ 2147483647
1351// XCORE:UINT_FAST32_MAX_ 4294967295U
1352//
1353// XCORE:INT64_MAX_ 9223372036854775807LL
1354// XCORE:INT64_MIN_ (-9223372036854775807LL -1)
1355// XCORE:UINT64_MAX_ 18446744073709551615ULL
1356// XCORE:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
1357// XCORE:INT_LEAST64_MAX_ 9223372036854775807LL
1358// XCORE:UINT_LEAST64_MAX_ 18446744073709551615ULL
1359// XCORE:INT_FAST64_MIN_ (-9223372036854775807LL -1)
1360// XCORE:INT_FAST64_MAX_ 9223372036854775807LL
1361// XCORE:UINT_FAST64_MAX_ 18446744073709551615ULL
1362//
1363// XCORE:INTPTR_MIN_ (-2147483647 -1)
1364// XCORE:INTPTR_MAX_ 2147483647
1365// XCORE:UINTPTR_MAX_ 4294967295U
1366// XCORE:PTRDIFF_MIN_ (-2147483647 -1)
1367// XCORE:PTRDIFF_MAX_ 2147483647
1368// XCORE:SIZE_MAX_ 4294967295U
1369//
1370// XCORE:INTMAX_MIN_ (-9223372036854775807LL -1)
1371// XCORE:INTMAX_MAX_ 9223372036854775807LL
1372// XCORE:UINTMAX_MAX_ 18446744073709551615ULL
1373//
1374// XCORE:SIG_ATOMIC_MIN_ (-2147483647 -1)
1375// XCORE:SIG_ATOMIC_MAX_ 2147483647
1376// XCORE:WINT_MIN_ 0U
1377// XCORE:WINT_MAX_ 4294967295U
1378//
1379// XCORE:WCHAR_MAX_ 255
1380// XCORE:WCHAR_MIN_ 0
1381//
1382// XCORE:INT8_C_(0) 0
1383// XCORE:UINT8_C_(0) 0U
1384// XCORE:INT16_C_(0) 0
1385// XCORE:UINT16_C_(0) 0U
1386// XCORE:INT32_C_(0) 0
1387// XCORE:UINT32_C_(0) 0U
1388// XCORE:INT64_C_(0) 0LL
1389// XCORE:UINT64_C_(0) 0ULL
1390//
1391// XCORE:INTMAX_C_(0) 0LL
1392// XCORE:UINTMAX_C_(0) 0ULL
1393//
1394//
1395// stdint.h forms several macro definitions by pasting together identifiers
1396// to form names (eg. int32_t is formed from int ## 32 ## _t). The following
1397// case tests that these joining operations are performed correctly even if
1398// the identifiers used in the operations (int, uint, _t, INT, UINT, _MIN,
1399// _MAX, and _C(v)) are themselves macros.
1400//
1401// RUN: %clang_cc1 -E -ffreestanding -U__UINTMAX_TYPE__ -U__INTMAX_TYPE__ -Dint=a -Duint=b -D_t=c -DINT=d -DUINT=e -D_MIN=f -D_MAX=g '-D_C(v)=h' -triple=i386-none-none %s | FileCheck -check-prefix JOIN %s
1402// JOIN:typedef int32_t intptr_t;
1403// JOIN:typedef uint32_t uintptr_t;
1404// JOIN:typedef __INTMAX_TYPE__ intmax_t;
1405// JOIN:typedef __UINTMAX_TYPE__ uintmax_t;
1406// JOIN:INTPTR_MIN_ (-2147483647 -1)
1407// JOIN:INTPTR_MAX_ 2147483647
1408// JOIN:UINTPTR_MAX_ 4294967295U
1409// JOIN:PTRDIFF_MIN_ (-2147483647 -1)
1410// JOIN:PTRDIFF_MAX_ 2147483647
1411// JOIN:SIZE_MAX_ 4294967295U
1412// JOIN:INTMAX_MIN_ (-9223372036854775807LL -1)
1413// JOIN:INTMAX_MAX_ 9223372036854775807LL
1414// JOIN:UINTMAX_MAX_ 18446744073709551615ULL
1415// JOIN:SIG_ATOMIC_MIN_ (-2147483647 -1)
1416// JOIN:SIG_ATOMIC_MAX_ 2147483647
1417// JOIN:WINT_MIN_ (-2147483647 -1)
1418// JOIN:WINT_MAX_ 2147483647
1419// JOIN:WCHAR_MAX_ 2147483647
1420// JOIN:WCHAR_MIN_ (-2147483647 -1)
1421// JOIN:INTMAX_C_(0) 0LL
1422// JOIN:UINTMAX_C_(0) 0ULL
1423
1424#include <stdint.h>
1425
1426INT8_MAX_ INT8_MAX
1427INT8_MIN_ INT8_MIN
1428UINT8_MAX_ UINT8_MAX
1429INT_LEAST8_MIN_ INT_LEAST8_MIN
1430INT_LEAST8_MAX_ INT_LEAST8_MAX
1431UINT_LEAST8_MAX_ UINT_LEAST8_MAX
1432INT_FAST8_MIN_ INT_FAST8_MIN
1433INT_FAST8_MAX_ INT_FAST8_MAX
1434UINT_FAST8_MAX_ UINT_FAST8_MAX
1435
1436INT16_MAX_ INT16_MAX
1437INT16_MIN_ INT16_MIN
1438UINT16_MAX_ UINT16_MAX
1439INT_LEAST16_MIN_ INT_LEAST16_MIN
1440INT_LEAST16_MAX_ INT_LEAST16_MAX
1441UINT_LEAST16_MAX_ UINT_LEAST16_MAX
1442INT_FAST16_MIN_ INT_FAST16_MIN
1443INT_FAST16_MAX_ INT_FAST16_MAX
1444UINT_FAST16_MAX_ UINT_FAST16_MAX
1445
1446INT32_MAX_ INT32_MAX
1447INT32_MIN_ INT32_MIN
1448UINT32_MAX_ UINT32_MAX
1449INT_LEAST32_MIN_ INT_LEAST32_MIN
1450INT_LEAST32_MAX_ INT_LEAST32_MAX
1451UINT_LEAST32_MAX_ UINT_LEAST32_MAX
1452INT_FAST32_MIN_ INT_FAST32_MIN
1453INT_FAST32_MAX_ INT_FAST32_MAX
1454UINT_FAST32_MAX_ UINT_FAST32_MAX
1455
1456INT64_MAX_ INT64_MAX
1457INT64_MIN_ INT64_MIN
1458UINT64_MAX_ UINT64_MAX
1459INT_LEAST64_MIN_ INT_LEAST64_MIN
1460INT_LEAST64_MAX_ INT_LEAST64_MAX
1461UINT_LEAST64_MAX_ UINT_LEAST64_MAX
1462INT_FAST64_MIN_ INT_FAST64_MIN
1463INT_FAST64_MAX_ INT_FAST64_MAX
1464UINT_FAST64_MAX_ UINT_FAST64_MAX
1465
1466INTPTR_MIN_ INTPTR_MIN
1467INTPTR_MAX_ INTPTR_MAX
1468UINTPTR_MAX_ UINTPTR_MAX
1469PTRDIFF_MIN_ PTRDIFF_MIN
1470PTRDIFF_MAX_ PTRDIFF_MAX
1471SIZE_MAX_ SIZE_MAX
1472
1473INTMAX_MIN_ INTMAX_MIN
1474INTMAX_MAX_ INTMAX_MAX
1475UINTMAX_MAX_ UINTMAX_MAX
1476
1477SIG_ATOMIC_MIN_ SIG_ATOMIC_MIN
1478SIG_ATOMIC_MAX_ SIG_ATOMIC_MAX
1479WINT_MIN_ WINT_MIN
1480WINT_MAX_ WINT_MAX
1481
1482WCHAR_MAX_ WCHAR_MAX
1483WCHAR_MIN_ WCHAR_MIN
1484
1485INT8_C_(0) INT8_C(0)
1486UINT8_C_(0) UINT8_C(0)
1487INT16_C_(0) INT16_C(0)
1488UINT16_C_(0) UINT16_C(0)
1489INT32_C_(0) INT32_C(0)
1490UINT32_C_(0) UINT32_C(0)
1491INT64_C_(0) INT64_C(0)
1492UINT64_C_(0) UINT64_C(0)
1493
1494INTMAX_C_(0) INTMAX_C(0)
1495UINTMAX_C_(0) UINTMAX_C(0)
1496