23 #ifndef _@GUARD_PREFIX@_STDINT_H
26 @PRAGMA_SYSTEM_HEADER@
34 #define _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H
41 #if defined __ANDROID__ \
42 && defined _SYS_TYPES_H_ && !defined _SSIZE_T_DEFINED_
43 # @INCLUDE_NEXT@ @NEXT_STDINT_H@
55 # if defined __sgi && ! defined __c99
64 # ifndef __STDC_CONSTANT_MACROS
65 # define __STDC_CONSTANT_MACROS 1
67 # ifndef __STDC_LIMIT_MACROS
68 # define __STDC_LIMIT_MACROS 1
77 # @INCLUDE_NEXT@ @NEXT_STDINT_H@
80 #if ! defined _@GUARD_PREFIX@_STDINT_H && ! defined _GL_JUST_INCLUDE_SYSTEM_STDINT_H
81 #define _@GUARD_PREFIX@_STDINT_H
89 #if @HAVE_SYS_TYPES_H@ && ! defined _AIX
90 # include <sys/types.h>
101 # include <inttypes.h>
102 #elif @HAVE_SYS_INTTYPES_H@
105 # include <sys/inttypes.h>
108 #if @HAVE_SYS_BITYPES_H@ && ! defined __BIT_TYPES_DEFINED__
112 # include <sys/bitypes.h>
115 #undef _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H
121 #define _STDINT_MIN(signed, bits, zero) \
122 ((signed) ? (- ((zero) + 1) << ((bits) ? (bits) - 1 : 0)) : (zero))
124 #define _STDINT_MAX(signed, bits, zero) \
126 ? ~ _STDINT_MIN (signed, bits, zero) \
130 ((((zero) + 1) << ((bits) ? (bits) - 1 - (signed) : 0)) - 1) * 2 + 1)
132 #if !GNULIB_defined_stdint_types
143 #define int8_t gl_int8_t
144 #define uint8_t gl_uint8_t
150 #define int16_t gl_int16_t
151 #define uint16_t gl_uint16_t
157 #define int32_t gl_int32_t
158 #define uint32_t gl_uint32_t
171 # if LONG_MAX >> 31 >> 31 == 1
173 typedef long int gl_int64_t;
174 # define int64_t gl_int64_t
176 # elif defined _MSC_VER
178 typedef __int64 gl_int64_t;
179 # define int64_t gl_int64_t
181 # elif @HAVE_LONG_LONG_INT@
183 typedef long long int gl_int64_t;
184 # define int64_t gl_int64_t
192 # if ULONG_MAX >> 31 >> 31 >> 1 == 1
194 typedef unsigned long int gl_uint64_t;
195 # define uint64_t gl_uint64_t
197 # elif defined _MSC_VER
199 typedef unsigned __int64 gl_uint64_t;
200 # define uint64_t gl_uint64_t
202 # elif @HAVE_UNSIGNED_LONG_LONG_INT@
204 typedef unsigned long long int gl_uint64_t;
205 # define uint64_t gl_uint64_t
225 #undef uint_least16_t
227 #undef uint_least32_t
229 #undef uint_least64_t
230 #define int_least8_t int8_t
231 #define uint_least8_t uint8_t
232 #define int_least16_t int16_t
233 #define uint_least16_t uint16_t
234 #define int_least32_t int32_t
235 #define uint_least32_t uint32_t
237 # define int_least64_t int64_t
240 # define uint_least64_t uint64_t
277 #define int_fast8_t gl_int_fast8_t
278 #define uint_fast8_t gl_uint_fast8_t
279 #define int_fast16_t gl_int_fast16_t
280 #define uint_fast16_t gl_uint_fast16_t
281 #define int_fast32_t gl_int_fast32_t
282 #define uint_fast32_t gl_uint_fast32_t
284 # define int_fast64_t int64_t
287 # define uint_fast64_t uint64_t
296 #define intptr_t gl_intptr_t
297 #define uintptr_t gl_uintptr_t
311 # if @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
313 # define intmax_t gl_intmax_t
314 # elif defined GL_INT64_T
315 # define intmax_t int64_t
318 # define intmax_t gl_intmax_t
325 # if @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
327 # define uintmax_t gl_uintmax_t
328 # elif defined GL_UINT64_T
329 # define uintmax_t uint64_t
332 # define uintmax_t gl_uintmax_t
342 #define GNULIB_defined_stdint_types 1
355 #define INT8_MIN (~ INT8_MAX)
357 #define UINT8_MAX 255
362 #define INT16_MIN (~ INT16_MAX)
363 #define INT16_MAX 32767
364 #define UINT16_MAX 65535
369 #define INT32_MIN (~ INT32_MAX)
370 #define INT32_MAX 2147483647
371 #define UINT32_MAX 4294967295U
373 #if defined GL_INT64_T && ! defined INT64_MAX
376 # define INT64_MIN (- INTMAX_C (1) << 63)
377 # define INT64_MAX INTMAX_C (9223372036854775807)
380 #if defined GL_UINT64_T && ! defined UINT64_MAX
381 # define UINT64_MAX UINTMAX_C (18446744073709551615)
390 #undef INT_LEAST8_MIN
391 #undef INT_LEAST8_MAX
392 #undef UINT_LEAST8_MAX
393 #define INT_LEAST8_MIN INT8_MIN
394 #define INT_LEAST8_MAX INT8_MAX
395 #define UINT_LEAST8_MAX UINT8_MAX
397 #undef INT_LEAST16_MIN
398 #undef INT_LEAST16_MAX
399 #undef UINT_LEAST16_MAX
400 #define INT_LEAST16_MIN INT16_MIN
401 #define INT_LEAST16_MAX INT16_MAX
402 #define UINT_LEAST16_MAX UINT16_MAX
404 #undef INT_LEAST32_MIN
405 #undef INT_LEAST32_MAX
406 #undef UINT_LEAST32_MAX
407 #define INT_LEAST32_MIN INT32_MIN
408 #define INT_LEAST32_MAX INT32_MAX
409 #define UINT_LEAST32_MAX UINT32_MAX
411 #undef INT_LEAST64_MIN
412 #undef INT_LEAST64_MAX
414 # define INT_LEAST64_MIN INT64_MIN
415 # define INT_LEAST64_MAX INT64_MAX
418 #undef UINT_LEAST64_MAX
420 # define UINT_LEAST64_MAX UINT64_MAX
431 #undef UINT_FAST8_MAX
432 #define INT_FAST8_MIN SCHAR_MIN
433 #define INT_FAST8_MAX SCHAR_MAX
434 #define UINT_FAST8_MAX UCHAR_MAX
436 #undef INT_FAST16_MIN
437 #undef INT_FAST16_MAX
438 #undef UINT_FAST16_MAX
439 #define INT_FAST16_MIN INT_FAST32_MIN
440 #define INT_FAST16_MAX INT_FAST32_MAX
441 #define UINT_FAST16_MAX UINT_FAST32_MAX
443 #undef INT_FAST32_MIN
444 #undef INT_FAST32_MAX
445 #undef UINT_FAST32_MAX
447 # define INT_FAST32_MIN INT_MIN
448 # define INT_FAST32_MAX INT_MAX
449 # define UINT_FAST32_MAX UINT_MAX
451 # define INT_FAST32_MIN LONG_MIN
452 # define INT_FAST32_MAX LONG_MAX
453 # define UINT_FAST32_MAX ULONG_MAX
456 #undef INT_FAST64_MIN
457 #undef INT_FAST64_MAX
459 # define INT_FAST64_MIN INT64_MIN
460 # define INT_FAST64_MAX INT64_MAX
463 #undef UINT_FAST64_MAX
465 # define UINT_FAST64_MAX UINT64_MAX
473 #define INTPTR_MIN LONG_MIN
474 #define INTPTR_MAX LONG_MAX
475 #define UINTPTR_MAX ULONG_MAX
482 # define INTMAX_MIN INT64_MIN
483 # define INTMAX_MAX INT64_MAX
485 # define INTMAX_MIN INT32_MIN
486 # define INTMAX_MAX INT32_MAX
492 # define UINTMAX_MAX UINT64_MAX
494 # define UINTMAX_MAX UINT32_MAX
503 #if @APPLE_UNIVERSAL_BUILD@
505 # define PTRDIFF_MIN _STDINT_MIN (1, 64, 0l)
506 # define PTRDIFF_MAX _STDINT_MAX (1, 64, 0l)
508 # define PTRDIFF_MIN _STDINT_MIN (1, 32, 0)
509 # define PTRDIFF_MAX _STDINT_MAX (1, 32, 0)
512 # define PTRDIFF_MIN \
513 _STDINT_MIN (1, @BITSIZEOF_PTRDIFF_T@, 0@PTRDIFF_T_SUFFIX@)
514 # define PTRDIFF_MAX \
515 _STDINT_MAX (1, @BITSIZEOF_PTRDIFF_T@, 0@PTRDIFF_T_SUFFIX@)
519 #undef SIG_ATOMIC_MIN
520 #undef SIG_ATOMIC_MAX
521 #define SIG_ATOMIC_MIN \
522 _STDINT_MIN (@HAVE_SIGNED_SIG_ATOMIC_T@, @BITSIZEOF_SIG_ATOMIC_T@, \
523 0@SIG_ATOMIC_T_SUFFIX@)
524 #define SIG_ATOMIC_MAX \
525 _STDINT_MAX (@HAVE_SIGNED_SIG_ATOMIC_T@, @BITSIZEOF_SIG_ATOMIC_T@, \
526 0@SIG_ATOMIC_T_SUFFIX@)
531 #if @APPLE_UNIVERSAL_BUILD@
533 # define SIZE_MAX _STDINT_MAX (0, 64, 0ul)
535 # define SIZE_MAX _STDINT_MAX (0, 32, 0ul)
538 # define SIZE_MAX _STDINT_MAX (0, @BITSIZEOF_SIZE_T@, 0@SIZE_T_SUFFIX@)
547 #if @HAVE_WCHAR_H@ && ! (defined WCHAR_MIN && defined WCHAR_MAX)
553 # define _GL_JUST_INCLUDE_SYSTEM_WCHAR_H
555 # undef _GL_JUST_INCLUDE_SYSTEM_WCHAR_H
560 _STDINT_MIN (@HAVE_SIGNED_WCHAR_T@, @BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@)
562 _STDINT_MAX (@HAVE_SIGNED_WCHAR_T@, @BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@)
568 _STDINT_MIN (@HAVE_SIGNED_WINT_T@, @BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
570 _STDINT_MAX (@HAVE_SIGNED_WINT_T@, @BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
588 #define UINT16_C(x) x
593 #define UINT32_C(x) x ## U
597 #if LONG_MAX >> 31 >> 31 == 1
598 # define INT64_C(x) x##L
599 #elif defined _MSC_VER
600 # define INT64_C(x) x##i64
601 #elif @HAVE_LONG_LONG_INT@
602 # define INT64_C(x) x##LL
604 #if ULONG_MAX >> 31 >> 31 >> 1 == 1
605 # define UINT64_C(x) x##UL
606 #elif defined _MSC_VER
607 # define UINT64_C(x) x##ui64
608 #elif @HAVE_UNSIGNED_LONG_LONG_INT@
609 # define UINT64_C(x) x##ULL
615 # if @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
616 # define INTMAX_C(x) x##LL
617 # elif defined GL_INT64_T
618 # define INTMAX_C(x) INT64_C(x)
620 # define INTMAX_C(x) x##L
625 # if @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
626 # define UINTMAX_C(x) x##ULL
627 # elif defined GL_UINT64_T
628 # define UINTMAX_C(x) UINT64_C(x)
630 # define UINTMAX_C(x) x##UL
gl_int_fast32_t gl_int_fast16_t
int _verify_intmax_size[sizeof(intmax_t)==sizeof(uintmax_t)?1:-1]
unsigned long int gl_uintptr_t
unsigned long int gl_uintmax_t
signed char gl_int_fast8_t
gl_uint_fast32_t gl_uint_fast16_t
unsigned char gl_uint_fast8_t
unsigned long int gl_uint_fast32_t
unsigned short int gl_uint16_t