Home | History | Annotate | Download | only in Preprocessor
      1 // RUN: %clang_cc1 -E -ffreestanding -triple=arm-none-none %s | FileCheck -check-prefix ARM %s
      2 //
      3 // ARM:typedef signed long long int int64_t;
      4 // ARM:typedef unsigned long long 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 signed 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 signed 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 signed long long int int64_t;
    112 // I386:typedef unsigned long long 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 signed 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 signed 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=msp430-none-none %s | FileCheck -check-prefix MSP430 %s
    217 //
    218 // MSP430:typedef signed long int int32_t;
    219 // MSP430:typedef unsigned long int uint32_t;
    220 // MSP430:typedef int32_t int_least32_t;
    221 // MSP430:typedef uint32_t uint_least32_t;
    222 // MSP430:typedef int32_t int_fast32_t;
    223 // MSP430:typedef uint32_t uint_fast32_t;
    224 //
    225 // MSP430:typedef signed short int16_t;
    226 // MSP430:typedef unsigned short uint16_t;
    227 // MSP430:typedef int16_t int_least16_t;
    228 // MSP430:typedef uint16_t uint_least16_t;
    229 // MSP430:typedef int16_t int_fast16_t;
    230 // MSP430:typedef uint16_t uint_fast16_t;
    231 //
    232 // MSP430:typedef signed char int8_t;
    233 // MSP430:typedef unsigned char uint8_t;
    234 // MSP430:typedef int8_t int_least8_t;
    235 // MSP430:typedef uint8_t uint_least8_t;
    236 // MSP430:typedef int8_t int_fast8_t;
    237 // MSP430:typedef uint8_t uint_fast8_t;
    238 //
    239 // MSP430:typedef int16_t intptr_t;
    240 // MSP430:typedef uint16_t uintptr_t;
    241 //
    242 // MSP430:typedef long int intmax_t;
    243 // MSP430:typedef long unsigned int uintmax_t;
    244 //
    245 // MSP430:INT8_MAX_ 127
    246 // MSP430:INT8_MIN_ (-127 -1)
    247 // MSP430:UINT8_MAX_ 255
    248 // MSP430:INT_LEAST8_MIN_ (-127 -1)
    249 // MSP430:INT_LEAST8_MAX_ 127
    250 // MSP430:UINT_LEAST8_MAX_ 255
    251 // MSP430:INT_FAST8_MIN_ (-127 -1)
    252 // MSP430:INT_FAST8_MAX_ 127
    253 // MSP430:UINT_FAST8_MAX_ 255
    254 //
    255 // MSP430:INT16_MAX_ 32767
    256 // MSP430:INT16_MIN_ (-32767 -1)
    257 // MSP430:UINT16_MAX_ 65535
    258 // MSP430:INT_LEAST16_MIN_ (-32767 -1)
    259 // MSP430:INT_LEAST16_MAX_ 32767
    260 // MSP430:UINT_LEAST16_MAX_ 65535
    261 // MSP430:INT_FAST16_MIN_ (-32767 -1)
    262 // MSP430:INT_FAST16_MAX_ 32767
    263 // MSP430:UINT_FAST16_MAX_ 65535
    264 //
    265 // MSP430:INT32_MAX_ 2147483647L
    266 // MSP430:INT32_MIN_ (-2147483647L -1)
    267 // MSP430:UINT32_MAX_ 4294967295UL
    268 // MSP430:INT_LEAST32_MIN_ (-2147483647L -1)
    269 // MSP430:INT_LEAST32_MAX_ 2147483647L
    270 // MSP430:UINT_LEAST32_MAX_ 4294967295UL
    271 // MSP430:INT_FAST32_MIN_ (-2147483647L -1)
    272 // MSP430:INT_FAST32_MAX_ 2147483647L
    273 // MSP430:UINT_FAST32_MAX_ 4294967295UL
    274 //
    275 // MSP430:INT64_MAX_ 9223372036854775807LL
    276 // MSP430:INT64_MIN_ (-9223372036854775807LL -1)
    277 // MSP430:UINT64_MAX_ 18446744073709551615ULL
    278 // MSP430:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
    279 // MSP430:INT_LEAST64_MAX_ 9223372036854775807LL
    280 // MSP430:UINT_LEAST64_MAX_ 18446744073709551615ULL
    281 // MSP430:INT_FAST64_MIN_ (-9223372036854775807LL -1)
    282 // MSP430:INT_FAST64_MAX_ 9223372036854775807LL
    283 // MSP430:UINT_FAST64_MAX_ 18446744073709551615ULL
    284 //
    285 // MSP430:INTPTR_MIN_ (-32767 -1)
    286 // MSP430:INTPTR_MAX_ 32767
    287 // MSP430:UINTPTR_MAX_ 65535
    288 // MSP430:PTRDIFF_MIN_ (-32767 -1)
    289 // MSP430:PTRDIFF_MAX_ 32767
    290 // MSP430:SIZE_MAX_ 65535
    291 //
    292 // MSP430:INTMAX_MIN_ (-2147483647L -1)
    293 // MSP430:INTMAX_MAX_ 2147483647L
    294 // MSP430:UINTMAX_MAX_ 4294967295UL
    295 //
    296 // MSP430:SIG_ATOMIC_MIN_ (-2147483647L -1)
    297 // MSP430:SIG_ATOMIC_MAX_ 2147483647L
    298 // MSP430:WINT_MIN_ (-32767 -1)
    299 // MSP430:WINT_MAX_ 32767
    300 //
    301 // MSP430:WCHAR_MAX_ 32767
    302 // MSP430:WCHAR_MIN_ (-32767 -1)
    303 //
    304 // MSP430:INT8_C_(0) 0
    305 // MSP430:UINT8_C_(0) 0U
    306 // MSP430:INT16_C_(0) 0
    307 // MSP430:UINT16_C_(0) 0U
    308 // MSP430:INT32_C_(0) 0L
    309 // MSP430:UINT32_C_(0) 0UL
    310 // MSP430:INT64_C_(0) 0LL
    311 // MSP430:UINT64_C_(0) 0ULL
    312 //
    313 // MSP430:INTMAX_C_(0) 0L
    314 // MSP430:UINTMAX_C_(0) 0UL
    315 //
    316 // RUN: %clang_cc1 -E -ffreestanding -triple=powerpc64-none-none %s | FileCheck -check-prefix PPC64 %s
    317 //
    318 // PPC64:typedef signed long int int64_t;
    319 // PPC64:typedef unsigned long int uint64_t;
    320 // PPC64:typedef int64_t int_least64_t;
    321 // PPC64:typedef uint64_t uint_least64_t;
    322 // PPC64:typedef int64_t int_fast64_t;
    323 // PPC64:typedef uint64_t uint_fast64_t;
    324 //
    325 // PPC64:typedef signed int int32_t;
    326 // PPC64:typedef unsigned int uint32_t;
    327 // PPC64:typedef int32_t int_least32_t;
    328 // PPC64:typedef uint32_t uint_least32_t;
    329 // PPC64:typedef int32_t int_fast32_t;
    330 // PPC64:typedef uint32_t uint_fast32_t;
    331 //
    332 // PPC64:typedef signed short int16_t;
    333 // PPC64:typedef unsigned short uint16_t;
    334 // PPC64:typedef int16_t int_least16_t;
    335 // PPC64:typedef uint16_t uint_least16_t;
    336 // PPC64:typedef int16_t int_fast16_t;
    337 // PPC64:typedef uint16_t uint_fast16_t;
    338 //
    339 // PPC64:typedef signed char int8_t;
    340 // PPC64:typedef unsigned char uint8_t;
    341 // PPC64:typedef int8_t int_least8_t;
    342 // PPC64:typedef uint8_t uint_least8_t;
    343 // PPC64:typedef int8_t int_fast8_t;
    344 // PPC64:typedef uint8_t uint_fast8_t;
    345 //
    346 // PPC64:typedef int64_t intptr_t;
    347 // PPC64:typedef uint64_t uintptr_t;
    348 //
    349 // PPC64:typedef long int intmax_t;
    350 // PPC64:typedef long unsigned int uintmax_t;
    351 //
    352 // PPC64:INT8_MAX_ 127
    353 // PPC64:INT8_MIN_ (-127 -1)
    354 // PPC64:UINT8_MAX_ 255
    355 // PPC64:INT_LEAST8_MIN_ (-127 -1)
    356 // PPC64:INT_LEAST8_MAX_ 127
    357 // PPC64:UINT_LEAST8_MAX_ 255
    358 // PPC64:INT_FAST8_MIN_ (-127 -1)
    359 // PPC64:INT_FAST8_MAX_ 127
    360 // PPC64:UINT_FAST8_MAX_ 255
    361 //
    362 // PPC64:INT16_MAX_ 32767
    363 // PPC64:INT16_MIN_ (-32767 -1)
    364 // PPC64:UINT16_MAX_ 65535
    365 // PPC64:INT_LEAST16_MIN_ (-32767 -1)
    366 // PPC64:INT_LEAST16_MAX_ 32767
    367 // PPC64:UINT_LEAST16_MAX_ 65535
    368 // PPC64:INT_FAST16_MIN_ (-32767 -1)
    369 // PPC64:INT_FAST16_MAX_ 32767
    370 // PPC64:UINT_FAST16_MAX_ 65535
    371 //
    372 // PPC64:INT32_MAX_ 2147483647
    373 // PPC64:INT32_MIN_ (-2147483647 -1)
    374 // PPC64:UINT32_MAX_ 4294967295U
    375 // PPC64:INT_LEAST32_MIN_ (-2147483647 -1)
    376 // PPC64:INT_LEAST32_MAX_ 2147483647
    377 // PPC64:UINT_LEAST32_MAX_ 4294967295U
    378 // PPC64:INT_FAST32_MIN_ (-2147483647 -1)
    379 // PPC64:INT_FAST32_MAX_ 2147483647
    380 // PPC64:UINT_FAST32_MAX_ 4294967295U
    381 //
    382 // PPC64:INT64_MAX_ 9223372036854775807L
    383 // PPC64:INT64_MIN_ (-9223372036854775807L -1)
    384 // PPC64:UINT64_MAX_ 18446744073709551615UL
    385 // PPC64:INT_LEAST64_MIN_ (-9223372036854775807L -1)
    386 // PPC64:INT_LEAST64_MAX_ 9223372036854775807L
    387 // PPC64:UINT_LEAST64_MAX_ 18446744073709551615UL
    388 // PPC64:INT_FAST64_MIN_ (-9223372036854775807L -1)
    389 // PPC64:INT_FAST64_MAX_ 9223372036854775807L
    390 // PPC64:UINT_FAST64_MAX_ 18446744073709551615UL
    391 //
    392 // PPC64:INTPTR_MIN_ (-9223372036854775807L -1)
    393 // PPC64:INTPTR_MAX_ 9223372036854775807L
    394 // PPC64:UINTPTR_MAX_ 18446744073709551615UL
    395 // PPC64:PTRDIFF_MIN_ (-9223372036854775807L -1)
    396 // PPC64:PTRDIFF_MAX_ 9223372036854775807L
    397 // PPC64:SIZE_MAX_ 18446744073709551615UL
    398 //
    399 // PPC64:INTMAX_MIN_ (-9223372036854775807L -1)
    400 // PPC64:INTMAX_MAX_ 9223372036854775807L
    401 // PPC64:UINTMAX_MAX_ 18446744073709551615UL
    402 //
    403 // PPC64:SIG_ATOMIC_MIN_ (-2147483647 -1)
    404 // PPC64:SIG_ATOMIC_MAX_ 2147483647
    405 // PPC64:WINT_MIN_ (-2147483647 -1)
    406 // PPC64:WINT_MAX_ 2147483647
    407 //
    408 // PPC64:WCHAR_MAX_ 2147483647
    409 // PPC64:WCHAR_MIN_ (-2147483647 -1)
    410 //
    411 // PPC64:INT8_C_(0) 0
    412 // PPC64:UINT8_C_(0) 0U
    413 // PPC64:INT16_C_(0) 0
    414 // PPC64:UINT16_C_(0) 0U
    415 // PPC64:INT32_C_(0) 0
    416 // PPC64:UINT32_C_(0) 0U
    417 // PPC64:INT64_C_(0) 0L
    418 // PPC64:UINT64_C_(0) 0UL
    419 //
    420 // PPC64:INTMAX_C_(0) 0L
    421 // PPC64:UINTMAX_C_(0) 0UL
    422 //
    423 // RUN: %clang_cc1 -E -ffreestanding -triple=powerpc-none-none %s | FileCheck -check-prefix PPC %s
    424 //
    425 //
    426 // PPC:typedef signed long long int int64_t;
    427 // PPC:typedef unsigned long long int uint64_t;
    428 // PPC:typedef int64_t int_least64_t;
    429 // PPC:typedef uint64_t uint_least64_t;
    430 // PPC:typedef int64_t int_fast64_t;
    431 // PPC:typedef uint64_t uint_fast64_t;
    432 //
    433 // PPC:typedef signed int int32_t;
    434 // PPC:typedef unsigned int uint32_t;
    435 // PPC:typedef int32_t int_least32_t;
    436 // PPC:typedef uint32_t uint_least32_t;
    437 // PPC:typedef int32_t int_fast32_t;
    438 // PPC:typedef uint32_t uint_fast32_t;
    439 //
    440 // PPC:typedef signed short int16_t;
    441 // PPC:typedef unsigned short uint16_t;
    442 // PPC:typedef int16_t int_least16_t;
    443 // PPC:typedef uint16_t uint_least16_t;
    444 // PPC:typedef int16_t int_fast16_t;
    445 // PPC:typedef uint16_t uint_fast16_t;
    446 //
    447 // PPC:typedef signed char int8_t;
    448 // PPC:typedef unsigned char uint8_t;
    449 // PPC:typedef int8_t int_least8_t;
    450 // PPC:typedef uint8_t uint_least8_t;
    451 // PPC:typedef int8_t int_fast8_t;
    452 // PPC:typedef uint8_t uint_fast8_t;
    453 //
    454 // PPC:typedef int32_t intptr_t;
    455 // PPC:typedef uint32_t uintptr_t;
    456 //
    457 // PPC:typedef long long int intmax_t;
    458 // PPC:typedef long long unsigned int uintmax_t;
    459 //
    460 // PPC:INT8_MAX_ 127
    461 // PPC:INT8_MIN_ (-127 -1)
    462 // PPC:UINT8_MAX_ 255
    463 // PPC:INT_LEAST8_MIN_ (-127 -1)
    464 // PPC:INT_LEAST8_MAX_ 127
    465 // PPC:UINT_LEAST8_MAX_ 255
    466 // PPC:INT_FAST8_MIN_ (-127 -1)
    467 // PPC:INT_FAST8_MAX_ 127
    468 // PPC:UINT_FAST8_MAX_ 255
    469 //
    470 // PPC:INT16_MAX_ 32767
    471 // PPC:INT16_MIN_ (-32767 -1)
    472 // PPC:UINT16_MAX_ 65535
    473 // PPC:INT_LEAST16_MIN_ (-32767 -1)
    474 // PPC:INT_LEAST16_MAX_ 32767
    475 // PPC:UINT_LEAST16_MAX_ 65535
    476 // PPC:INT_FAST16_MIN_ (-32767 -1)
    477 // PPC:INT_FAST16_MAX_ 32767
    478 // PPC:UINT_FAST16_MAX_ 65535
    479 //
    480 // PPC:INT32_MAX_ 2147483647
    481 // PPC:INT32_MIN_ (-2147483647 -1)
    482 // PPC:UINT32_MAX_ 4294967295U
    483 // PPC:INT_LEAST32_MIN_ (-2147483647 -1)
    484 // PPC:INT_LEAST32_MAX_ 2147483647
    485 // PPC:UINT_LEAST32_MAX_ 4294967295U
    486 // PPC:INT_FAST32_MIN_ (-2147483647 -1)
    487 // PPC:INT_FAST32_MAX_ 2147483647
    488 // PPC:UINT_FAST32_MAX_ 4294967295U
    489 //
    490 // PPC:INT64_MAX_ 9223372036854775807LL
    491 // PPC:INT64_MIN_ (-9223372036854775807LL -1)
    492 // PPC:UINT64_MAX_ 18446744073709551615ULL
    493 // PPC:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
    494 // PPC:INT_LEAST64_MAX_ 9223372036854775807LL
    495 // PPC:UINT_LEAST64_MAX_ 18446744073709551615ULL
    496 // PPC:INT_FAST64_MIN_ (-9223372036854775807LL -1)
    497 // PPC:INT_FAST64_MAX_ 9223372036854775807LL
    498 // PPC:UINT_FAST64_MAX_ 18446744073709551615ULL
    499 //
    500 // PPC:INTPTR_MIN_ (-2147483647 -1)
    501 // PPC:INTPTR_MAX_ 2147483647
    502 // PPC:UINTPTR_MAX_ 4294967295U
    503 // PPC:PTRDIFF_MIN_ (-2147483647 -1)
    504 // PPC:PTRDIFF_MAX_ 2147483647
    505 // PPC:SIZE_MAX_ 4294967295U
    506 //
    507 // PPC:INTMAX_MIN_ (-9223372036854775807LL -1)
    508 // PPC:INTMAX_MAX_ 9223372036854775807LL
    509 // PPC:UINTMAX_MAX_ 18446744073709551615ULL
    510 //
    511 // PPC:SIG_ATOMIC_MIN_ (-2147483647 -1)
    512 // PPC:SIG_ATOMIC_MAX_ 2147483647
    513 // PPC:WINT_MIN_ (-2147483647 -1)
    514 // PPC:WINT_MAX_ 2147483647
    515 //
    516 // PPC:WCHAR_MAX_ 2147483647
    517 // PPC:WCHAR_MIN_ (-2147483647 -1)
    518 //
    519 // PPC:INT8_C_(0) 0
    520 // PPC:UINT8_C_(0) 0U
    521 // PPC:INT16_C_(0) 0
    522 // PPC:UINT16_C_(0) 0U
    523 // PPC:INT32_C_(0) 0
    524 // PPC:UINT32_C_(0) 0U
    525 // PPC:INT64_C_(0) 0LL
    526 // PPC:UINT64_C_(0) 0ULL
    527 //
    528 // PPC:INTMAX_C_(0) 0LL
    529 // PPC:UINTMAX_C_(0) 0ULL
    530 //
    531 // RUN: %clang_cc1 -E -ffreestanding -triple=sparc-none-none %s | FileCheck -check-prefix SPARC %s
    532 //
    533 // SPARC:typedef signed long long int int64_t;
    534 // SPARC:typedef unsigned long long int uint64_t;
    535 // SPARC:typedef int64_t int_least64_t;
    536 // SPARC:typedef uint64_t uint_least64_t;
    537 // SPARC:typedef int64_t int_fast64_t;
    538 // SPARC:typedef uint64_t uint_fast64_t;
    539 //
    540 // SPARC:typedef signed int int32_t;
    541 // SPARC:typedef unsigned int uint32_t;
    542 // SPARC:typedef int32_t int_least32_t;
    543 // SPARC:typedef uint32_t uint_least32_t;
    544 // SPARC:typedef int32_t int_fast32_t;
    545 // SPARC:typedef uint32_t uint_fast32_t;
    546 //
    547 // SPARC:typedef signed short int16_t;
    548 // SPARC:typedef unsigned short uint16_t;
    549 // SPARC:typedef int16_t int_least16_t;
    550 // SPARC:typedef uint16_t uint_least16_t;
    551 // SPARC:typedef int16_t int_fast16_t;
    552 // SPARC:typedef uint16_t uint_fast16_t;
    553 //
    554 // SPARC:typedef signed char int8_t;
    555 // SPARC:typedef unsigned char uint8_t;
    556 // SPARC:typedef int8_t int_least8_t;
    557 // SPARC:typedef uint8_t uint_least8_t;
    558 // SPARC:typedef int8_t int_fast8_t;
    559 // SPARC:typedef uint8_t uint_fast8_t;
    560 //
    561 // SPARC:typedef int32_t intptr_t;
    562 // SPARC:typedef uint32_t uintptr_t;
    563 //
    564 // SPARC:typedef long long int intmax_t;
    565 // SPARC:typedef long long unsigned int uintmax_t;
    566 //
    567 // SPARC:INT8_MAX_ 127
    568 // SPARC:INT8_MIN_ (-127 -1)
    569 // SPARC:UINT8_MAX_ 255
    570 // SPARC:INT_LEAST8_MIN_ (-127 -1)
    571 // SPARC:INT_LEAST8_MAX_ 127
    572 // SPARC:UINT_LEAST8_MAX_ 255
    573 // SPARC:INT_FAST8_MIN_ (-127 -1)
    574 // SPARC:INT_FAST8_MAX_ 127
    575 // SPARC:UINT_FAST8_MAX_ 255
    576 //
    577 // SPARC:INT16_MAX_ 32767
    578 // SPARC:INT16_MIN_ (-32767 -1)
    579 // SPARC:UINT16_MAX_ 65535
    580 // SPARC:INT_LEAST16_MIN_ (-32767 -1)
    581 // SPARC:INT_LEAST16_MAX_ 32767
    582 // SPARC:UINT_LEAST16_MAX_ 65535
    583 // SPARC:INT_FAST16_MIN_ (-32767 -1)
    584 // SPARC:INT_FAST16_MAX_ 32767
    585 // SPARC:UINT_FAST16_MAX_ 65535
    586 //
    587 // SPARC:INT32_MAX_ 2147483647
    588 // SPARC:INT32_MIN_ (-2147483647 -1)
    589 // SPARC:UINT32_MAX_ 4294967295U
    590 // SPARC:INT_LEAST32_MIN_ (-2147483647 -1)
    591 // SPARC:INT_LEAST32_MAX_ 2147483647
    592 // SPARC:UINT_LEAST32_MAX_ 4294967295U
    593 // SPARC:INT_FAST32_MIN_ (-2147483647 -1)
    594 // SPARC:INT_FAST32_MAX_ 2147483647
    595 // SPARC:UINT_FAST32_MAX_ 4294967295U
    596 //
    597 // SPARC:INT64_MAX_ 9223372036854775807LL
    598 // SPARC:INT64_MIN_ (-9223372036854775807LL -1)
    599 // SPARC:UINT64_MAX_ 18446744073709551615ULL
    600 // SPARC:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
    601 // SPARC:INT_LEAST64_MAX_ 9223372036854775807LL
    602 // SPARC:UINT_LEAST64_MAX_ 18446744073709551615ULL
    603 // SPARC:INT_FAST64_MIN_ (-9223372036854775807LL -1)
    604 // SPARC:INT_FAST64_MAX_ 9223372036854775807LL
    605 // SPARC:UINT_FAST64_MAX_ 18446744073709551615ULL
    606 //
    607 // SPARC:INTPTR_MIN_ (-2147483647 -1)
    608 // SPARC:INTPTR_MAX_ 2147483647
    609 // SPARC:UINTPTR_MAX_ 4294967295U
    610 // SPARC:PTRDIFF_MIN_ (-2147483647 -1)
    611 // SPARC:PTRDIFF_MAX_ 2147483647
    612 // SPARC:SIZE_MAX_ 4294967295U
    613 //
    614 // SPARC:INTMAX_MIN_ (-9223372036854775807LL -1)
    615 // SPARC:INTMAX_MAX_ 9223372036854775807LL
    616 // SPARC:UINTMAX_MAX_ 18446744073709551615ULL
    617 //
    618 // SPARC:SIG_ATOMIC_MIN_ (-2147483647 -1)
    619 // SPARC:SIG_ATOMIC_MAX_ 2147483647
    620 // SPARC:WINT_MIN_ (-2147483647 -1)
    621 // SPARC:WINT_MAX_ 2147483647
    622 //
    623 // SPARC:WCHAR_MAX_ 2147483647
    624 // SPARC:WCHAR_MIN_ (-2147483647 -1)
    625 //
    626 // SPARC:INT8_C_(0) 0
    627 // SPARC:UINT8_C_(0) 0U
    628 // SPARC:INT16_C_(0) 0
    629 // SPARC:UINT16_C_(0) 0U
    630 // SPARC:INT32_C_(0) 0
    631 // SPARC:UINT32_C_(0) 0U
    632 // SPARC:INT64_C_(0) 0LL
    633 // SPARC:UINT64_C_(0) 0ULL
    634 //
    635 // SPARC:INTMAX_C_(0) 0LL
    636 // SPARC:UINTMAX_C_(0) 0ULL
    637 //
    638 // RUN: %clang_cc1 -E -ffreestanding -triple=tce-none-none %s | FileCheck -check-prefix TCE %s
    639 //
    640 // TCE:typedef signed int int32_t;
    641 // TCE:typedef unsigned int uint32_t;
    642 // TCE:typedef int32_t int_least32_t;
    643 // TCE:typedef uint32_t uint_least32_t;
    644 // TCE:typedef int32_t int_fast32_t;
    645 // TCE:typedef uint32_t uint_fast32_t;
    646 //
    647 // TCE:typedef signed short int16_t;
    648 // TCE:typedef unsigned short uint16_t;
    649 // TCE:typedef int16_t int_least16_t;
    650 // TCE:typedef uint16_t uint_least16_t;
    651 // TCE:typedef int16_t int_fast16_t;
    652 // TCE:typedef uint16_t uint_fast16_t;
    653 //
    654 // TCE:typedef signed char int8_t;
    655 // TCE:typedef unsigned char uint8_t;
    656 // TCE:typedef int8_t int_least8_t;
    657 // TCE:typedef uint8_t uint_least8_t;
    658 // TCE:typedef int8_t int_fast8_t;
    659 // TCE:typedef uint8_t uint_fast8_t;
    660 //
    661 // TCE:typedef int32_t intptr_t;
    662 // TCE:typedef uint32_t uintptr_t;
    663 //
    664 // TCE:typedef long int intmax_t;
    665 // TCE:typedef long unsigned int uintmax_t;
    666 //
    667 // TCE:INT8_MAX_ 127
    668 // TCE:INT8_MIN_ (-127 -1)
    669 // TCE:UINT8_MAX_ 255
    670 // TCE:INT_LEAST8_MIN_ (-127 -1)
    671 // TCE:INT_LEAST8_MAX_ 127
    672 // TCE:UINT_LEAST8_MAX_ 255
    673 // TCE:INT_FAST8_MIN_ (-127 -1)
    674 // TCE:INT_FAST8_MAX_ 127
    675 // TCE:UINT_FAST8_MAX_ 255
    676 //
    677 // TCE:INT16_MAX_ 32767
    678 // TCE:INT16_MIN_ (-32767 -1)
    679 // TCE:UINT16_MAX_ 65535
    680 // TCE:INT_LEAST16_MIN_ (-32767 -1)
    681 // TCE:INT_LEAST16_MAX_ 32767
    682 // TCE:UINT_LEAST16_MAX_ 65535
    683 // TCE:INT_FAST16_MIN_ (-32767 -1)
    684 // TCE:INT_FAST16_MAX_ 32767
    685 // TCE:UINT_FAST16_MAX_ 65535
    686 //
    687 // TCE:INT32_MAX_ 2147483647
    688 // TCE:INT32_MIN_ (-2147483647 -1)
    689 // TCE:UINT32_MAX_ 4294967295U
    690 // TCE:INT_LEAST32_MIN_ (-2147483647 -1)
    691 // TCE:INT_LEAST32_MAX_ 2147483647
    692 // TCE:UINT_LEAST32_MAX_ 4294967295U
    693 // TCE:INT_FAST32_MIN_ (-2147483647 -1)
    694 // TCE:INT_FAST32_MAX_ 2147483647
    695 // TCE:UINT_FAST32_MAX_ 4294967295U
    696 //
    697 // TCE:INT64_MAX_ INT64_MAX
    698 // TCE:INT64_MIN_ INT64_MIN
    699 // TCE:UINT64_MAX_ UINT64_MAX
    700 // TCE:INT_LEAST64_MIN_ INT_LEAST64_MIN
    701 // TCE:INT_LEAST64_MAX_ INT_LEAST64_MAX
    702 // TCE:UINT_LEAST64_MAX_ UINT_LEAST64_MAX
    703 // TCE:INT_FAST64_MIN_ INT_FAST64_MIN
    704 // TCE:INT_FAST64_MAX_ INT_FAST64_MAX
    705 // TCE:UINT_FAST64_MAX_ UINT_FAST64_MAX
    706 //
    707 // TCE:INTPTR_MIN_ (-2147483647 -1)
    708 // TCE:INTPTR_MAX_ 2147483647
    709 // TCE:UINTPTR_MAX_ 4294967295U
    710 // TCE:PTRDIFF_MIN_ (-2147483647 -1)
    711 // TCE:PTRDIFF_MAX_ 2147483647
    712 // TCE:SIZE_MAX_ 4294967295U
    713 //
    714 // TCE:INTMAX_MIN_ (-2147483647 -1)
    715 // TCE:INTMAX_MAX_ 2147483647
    716 // TCE:UINTMAX_MAX_ 4294967295U
    717 //
    718 // TCE:SIG_ATOMIC_MIN_ (-2147483647 -1)
    719 // TCE:SIG_ATOMIC_MAX_ 2147483647
    720 // TCE:WINT_MIN_ (-2147483647 -1)
    721 // TCE:WINT_MAX_ 2147483647
    722 //
    723 // TCE:WCHAR_MAX_ 2147483647
    724 // TCE:WCHAR_MIN_ (-2147483647 -1)
    725 //
    726 // TCE:INT8_C_(0) 0
    727 // TCE:UINT8_C_(0) 0U
    728 // TCE:INT16_C_(0) 0
    729 // TCE:UINT16_C_(0) 0U
    730 // TCE:INT32_C_(0) 0
    731 // TCE:UINT32_C_(0) 0U
    732 // TCE:INT64_C_(0) INT64_C(0)
    733 // TCE:UINT64_C_(0) UINT64_C(0)
    734 //
    735 // TCE:INTMAX_C_(0) 0
    736 // TCE:UINTMAX_C_(0) 0U
    737 //
    738 // RUN: %clang_cc1 -E -ffreestanding -triple=x86_64-none-none %s | FileCheck -check-prefix X86_64 %s
    739 //
    740 //
    741 // X86_64:typedef signed long int int64_t;
    742 // X86_64:typedef unsigned long int uint64_t;
    743 // X86_64:typedef int64_t int_least64_t;
    744 // X86_64:typedef uint64_t uint_least64_t;
    745 // X86_64:typedef int64_t int_fast64_t;
    746 // X86_64:typedef uint64_t uint_fast64_t;
    747 //
    748 // X86_64:typedef signed int int32_t;
    749 // X86_64:typedef unsigned int uint32_t;
    750 // X86_64:typedef int32_t int_least32_t;
    751 // X86_64:typedef uint32_t uint_least32_t;
    752 // X86_64:typedef int32_t int_fast32_t;
    753 // X86_64:typedef uint32_t uint_fast32_t;
    754 //
    755 // X86_64:typedef signed short int16_t;
    756 // X86_64:typedef unsigned short uint16_t;
    757 // X86_64:typedef int16_t int_least16_t;
    758 // X86_64:typedef uint16_t uint_least16_t;
    759 // X86_64:typedef int16_t int_fast16_t;
    760 // X86_64:typedef uint16_t uint_fast16_t;
    761 //
    762 // X86_64:typedef signed char int8_t;
    763 // X86_64:typedef unsigned char uint8_t;
    764 // X86_64:typedef int8_t int_least8_t;
    765 // X86_64:typedef uint8_t uint_least8_t;
    766 // X86_64:typedef int8_t int_fast8_t;
    767 // X86_64:typedef uint8_t uint_fast8_t;
    768 //
    769 // X86_64:typedef int64_t intptr_t;
    770 // X86_64:typedef uint64_t uintptr_t;
    771 //
    772 // X86_64:typedef long int intmax_t;
    773 // X86_64:typedef long unsigned int uintmax_t;
    774 //
    775 // X86_64:INT8_MAX_ 127
    776 // X86_64:INT8_MIN_ (-127 -1)
    777 // X86_64:UINT8_MAX_ 255
    778 // X86_64:INT_LEAST8_MIN_ (-127 -1)
    779 // X86_64:INT_LEAST8_MAX_ 127
    780 // X86_64:UINT_LEAST8_MAX_ 255
    781 // X86_64:INT_FAST8_MIN_ (-127 -1)
    782 // X86_64:INT_FAST8_MAX_ 127
    783 // X86_64:UINT_FAST8_MAX_ 255
    784 //
    785 // X86_64:INT16_MAX_ 32767
    786 // X86_64:INT16_MIN_ (-32767 -1)
    787 // X86_64:UINT16_MAX_ 65535
    788 // X86_64:INT_LEAST16_MIN_ (-32767 -1)
    789 // X86_64:INT_LEAST16_MAX_ 32767
    790 // X86_64:UINT_LEAST16_MAX_ 65535
    791 // X86_64:INT_FAST16_MIN_ (-32767 -1)
    792 // X86_64:INT_FAST16_MAX_ 32767
    793 // X86_64:UINT_FAST16_MAX_ 65535
    794 //
    795 // X86_64:INT32_MAX_ 2147483647
    796 // X86_64:INT32_MIN_ (-2147483647 -1)
    797 // X86_64:UINT32_MAX_ 4294967295U
    798 // X86_64:INT_LEAST32_MIN_ (-2147483647 -1)
    799 // X86_64:INT_LEAST32_MAX_ 2147483647
    800 // X86_64:UINT_LEAST32_MAX_ 4294967295U
    801 // X86_64:INT_FAST32_MIN_ (-2147483647 -1)
    802 // X86_64:INT_FAST32_MAX_ 2147483647
    803 // X86_64:UINT_FAST32_MAX_ 4294967295U
    804 //
    805 // X86_64:INT64_MAX_ 9223372036854775807L
    806 // X86_64:INT64_MIN_ (-9223372036854775807L -1)
    807 // X86_64:UINT64_MAX_ 18446744073709551615UL
    808 // X86_64:INT_LEAST64_MIN_ (-9223372036854775807L -1)
    809 // X86_64:INT_LEAST64_MAX_ 9223372036854775807L
    810 // X86_64:UINT_LEAST64_MAX_ 18446744073709551615UL
    811 // X86_64:INT_FAST64_MIN_ (-9223372036854775807L -1)
    812 // X86_64:INT_FAST64_MAX_ 9223372036854775807L
    813 // X86_64:UINT_FAST64_MAX_ 18446744073709551615UL
    814 //
    815 // X86_64:INTPTR_MIN_ (-9223372036854775807L -1)
    816 // X86_64:INTPTR_MAX_ 9223372036854775807L
    817 // X86_64:UINTPTR_MAX_ 18446744073709551615UL
    818 // X86_64:PTRDIFF_MIN_ (-9223372036854775807L -1)
    819 // X86_64:PTRDIFF_MAX_ 9223372036854775807L
    820 // X86_64:SIZE_MAX_ 18446744073709551615UL
    821 //
    822 // X86_64:INTMAX_MIN_ (-9223372036854775807L -1)
    823 // X86_64:INTMAX_MAX_ 9223372036854775807L
    824 // X86_64:UINTMAX_MAX_ 18446744073709551615UL
    825 //
    826 // X86_64:SIG_ATOMIC_MIN_ (-2147483647 -1)
    827 // X86_64:SIG_ATOMIC_MAX_ 2147483647
    828 // X86_64:WINT_MIN_ (-2147483647 -1)
    829 // X86_64:WINT_MAX_ 2147483647
    830 //
    831 // X86_64:WCHAR_MAX_ 2147483647
    832 // X86_64:WCHAR_MIN_ (-2147483647 -1)
    833 //
    834 // X86_64:INT8_C_(0) 0
    835 // X86_64:UINT8_C_(0) 0U
    836 // X86_64:INT16_C_(0) 0
    837 // X86_64:UINT16_C_(0) 0U
    838 // X86_64:INT32_C_(0) 0
    839 // X86_64:UINT32_C_(0) 0U
    840 // X86_64:INT64_C_(0) 0L
    841 // X86_64:UINT64_C_(0) 0UL
    842 //
    843 // X86_64:INTMAX_C_(0) 0L
    844 // X86_64:UINTMAX_C_(0) 0UL
    845 //
    846 //
    847 // RUN: %clang_cc1 -E -ffreestanding -triple=x86_64-pc-linux-gnu %s | FileCheck -check-prefix X86_64_LINUX %s
    848 //
    849 // X86_64_LINUX:WINT_MIN_ 0U
    850 // X86_64_LINUX:WINT_MAX_ 4294967295U
    851 //
    852 //
    853 // RUN: %clang_cc1 -E -ffreestanding -triple=i386-mingw32 %s | FileCheck -check-prefix I386_MINGW32 %s
    854 //
    855 // I386_MINGW32:WCHAR_MAX_ 65535U
    856 // I386_MINGW32:WCHAR_MIN_ 0U
    857 //
    858 //
    859 // stdint.h forms several macro definitions by pasting together identifiers
    860 // to form names (eg. int32_t is formed from int ## 32 ## _t). The following
    861 // case tests that these joining operations are performed correctly even if
    862 // the identifiers used in the operations (int, uint, _t, INT, UINT, _MIN,
    863 // _MAX, and _C(v)) are themselves macros.
    864 //
    865 // 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
    866 // JOIN:typedef int32_t intptr_t;
    867 // JOIN:typedef uint32_t uintptr_t;
    868 // JOIN:typedef __INTMAX_TYPE__ intmax_t;
    869 // JOIN:typedef __UINTMAX_TYPE__ uintmax_t;
    870 // JOIN:INTPTR_MIN_ (-2147483647 -1)
    871 // JOIN:INTPTR_MAX_ 2147483647
    872 // JOIN:UINTPTR_MAX_ 4294967295U
    873 // JOIN:PTRDIFF_MIN_ (-2147483647 -1)
    874 // JOIN:PTRDIFF_MAX_ 2147483647
    875 // JOIN:SIZE_MAX_ 4294967295U
    876 // JOIN:INTMAX_MIN_ (-9223372036854775807LL -1)
    877 // JOIN:INTMAX_MAX_ 9223372036854775807LL
    878 // JOIN:UINTMAX_MAX_ 18446744073709551615ULL
    879 // JOIN:SIG_ATOMIC_MIN_ (-2147483647 -1)
    880 // JOIN:SIG_ATOMIC_MAX_ 2147483647
    881 // JOIN:WINT_MIN_ (-2147483647 -1)
    882 // JOIN:WINT_MAX_ 2147483647
    883 // JOIN:WCHAR_MAX_ 2147483647
    884 // JOIN:WCHAR_MIN_ (-2147483647 -1)
    885 // JOIN:INTMAX_C_(0) 0LL
    886 // JOIN:UINTMAX_C_(0) 0ULL
    887 
    888 #include <stdint.h>
    889 
    890 INT8_MAX_ INT8_MAX
    891 INT8_MIN_ INT8_MIN
    892 UINT8_MAX_ UINT8_MAX
    893 INT_LEAST8_MIN_ INT_LEAST8_MIN
    894 INT_LEAST8_MAX_ INT_LEAST8_MAX
    895 UINT_LEAST8_MAX_ UINT_LEAST8_MAX
    896 INT_FAST8_MIN_ INT_FAST8_MIN
    897 INT_FAST8_MAX_ INT_FAST8_MAX
    898 UINT_FAST8_MAX_ UINT_FAST8_MAX
    899 
    900 INT16_MAX_ INT16_MAX
    901 INT16_MIN_ INT16_MIN
    902 UINT16_MAX_ UINT16_MAX
    903 INT_LEAST16_MIN_ INT_LEAST16_MIN
    904 INT_LEAST16_MAX_ INT_LEAST16_MAX
    905 UINT_LEAST16_MAX_ UINT_LEAST16_MAX
    906 INT_FAST16_MIN_ INT_FAST16_MIN
    907 INT_FAST16_MAX_ INT_FAST16_MAX
    908 UINT_FAST16_MAX_ UINT_FAST16_MAX
    909 
    910 INT32_MAX_ INT32_MAX
    911 INT32_MIN_ INT32_MIN
    912 UINT32_MAX_ UINT32_MAX
    913 INT_LEAST32_MIN_ INT_LEAST32_MIN
    914 INT_LEAST32_MAX_ INT_LEAST32_MAX
    915 UINT_LEAST32_MAX_ UINT_LEAST32_MAX
    916 INT_FAST32_MIN_ INT_FAST32_MIN
    917 INT_FAST32_MAX_ INT_FAST32_MAX
    918 UINT_FAST32_MAX_ UINT_FAST32_MAX
    919 
    920 INT64_MAX_ INT64_MAX
    921 INT64_MIN_ INT64_MIN
    922 UINT64_MAX_ UINT64_MAX
    923 INT_LEAST64_MIN_ INT_LEAST64_MIN
    924 INT_LEAST64_MAX_ INT_LEAST64_MAX
    925 UINT_LEAST64_MAX_ UINT_LEAST64_MAX
    926 INT_FAST64_MIN_ INT_FAST64_MIN
    927 INT_FAST64_MAX_ INT_FAST64_MAX
    928 UINT_FAST64_MAX_ UINT_FAST64_MAX
    929 
    930 INTPTR_MIN_ INTPTR_MIN
    931 INTPTR_MAX_ INTPTR_MAX
    932 UINTPTR_MAX_ UINTPTR_MAX
    933 PTRDIFF_MIN_ PTRDIFF_MIN
    934 PTRDIFF_MAX_ PTRDIFF_MAX
    935 SIZE_MAX_ SIZE_MAX
    936 
    937 INTMAX_MIN_ INTMAX_MIN
    938 INTMAX_MAX_ INTMAX_MAX
    939 UINTMAX_MAX_ UINTMAX_MAX
    940 
    941 SIG_ATOMIC_MIN_ SIG_ATOMIC_MIN
    942 SIG_ATOMIC_MAX_ SIG_ATOMIC_MAX
    943 WINT_MIN_ WINT_MIN
    944 WINT_MAX_ WINT_MAX
    945 
    946 WCHAR_MAX_ WCHAR_MAX
    947 WCHAR_MIN_ WCHAR_MIN
    948 
    949 INT8_C_(0) INT8_C(0)
    950 UINT8_C_(0) UINT8_C(0)
    951 INT16_C_(0) INT16_C(0)
    952 UINT16_C_(0) UINT16_C(0)
    953 INT32_C_(0) INT32_C(0)
    954 UINT32_C_(0) UINT32_C(0)
    955 INT64_C_(0) INT64_C(0)
    956 UINT64_C_(0) UINT64_C(0)
    957 
    958 INTMAX_C_(0) INTMAX_C(0)
    959 UINTMAX_C_(0) UINTMAX_C(0)
    960