1/* 2 * stdint.h 3 */ 4 5#ifndef _STDINT_H 6#define _STDINT_H 7 8#include <bitsize/stdint.h> 9 10typedef int8_t int_least8_t; 11typedef int16_t int_least16_t; 12typedef int32_t int_least32_t; 13typedef int64_t int_least64_t; 14 15typedef uint8_t uint_least8_t; 16typedef uint16_t uint_least16_t; 17typedef uint32_t uint_least32_t; 18typedef uint64_t uint_least64_t; 19 20typedef int8_t int_fast8_t; 21typedef int64_t int_fast64_t; 22 23typedef uint8_t uint_fast8_t; 24typedef uint64_t uint_fast64_t; 25 26typedef int64_t intmax_t; 27typedef uint64_t uintmax_t; 28 29#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) 30 31#define INT8_MIN (-128) 32#define INT16_MIN (-32768) 33#define INT32_MIN (-2147483647-1) 34#define INT64_MIN (__INT64_C(-9223372036854775807)-1) 35 36#define INT8_MAX (127) 37#define INT16_MAX (32767) 38#define INT32_MAX (2147483647) 39#define INT64_MAX (__INT64_C(9223372036854775807)) 40 41#define UINT8_MAX (255U) 42#define UINT16_MAX (65535U) 43#define UINT32_MAX (4294967295U) 44#define UINT64_MAX (__UINT64_C(18446744073709551615)) 45 46#define INT_LEAST8_MIN INT8_MIN 47#define INT_LEAST16_MIN INT16_MIN 48#define INT_LEAST32_MIN INT32_MIN 49#define INT_LEAST64_MIN INT64_MIN 50 51#define INT_LEAST8_MAX INT8_MAX 52#define INT_LEAST16_MAX INT16_MAX 53#define INT_LEAST32_MAX INT32_MAX 54#define INT_LEAST64_MAX INT64_MAX 55 56#define UINT_LEAST8_MAX UINT8_MAX 57#define UINT_LEAST16_MAX UINT16_MAX 58#define UINT_LEAST32_MAX UINT32_MAX 59#define UINT_LEAST64_MAX UINT64_MAX 60 61#define INT_FAST8_MIN INT8_MIN 62#define INT_FAST64_MIN INT64_MIN 63 64#define INT_FAST8_MAX INT8_MAX 65#define INT_FAST64_MAX INT64_MAX 66 67#define UINT_FAST8_MAX UINT8_MAX 68#define UINT_FAST64_MAX UINT64_MAX 69 70#define INTMAX_MIN INT64_MIN 71#define INTMAX_MAX INT64_MAX 72#define UINTMAX_MAX UINT64_MAX 73 74#include <bitsize/stdintlimits.h> 75 76#endif 77 78#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) 79 80#define INT8_C(c) c 81#define INT16_C(c) c 82#define INT32_C(c) c 83#define INT64_C(c) __INT64_C(c) 84 85#define UINT8_C(c) c ## U 86#define UINT16_C(c) c ## U 87#define UINT32_C(c) c ## U 88#define UINT64_C(c) __UINT64_C(c) 89 90#define INT_LEAST8_C(c) INT8_C(c) 91#define INT_LEAST16_C(c) INT16_C(c) 92#define INT_LEAST32_C(c) INT32_C(c) 93#define INT_LEAST64_C(c) INT64_C(c) 94 95#define UINT_LEAST8_C(c) UINT8_C(c) 96#define UINT_LEAST16_C(c) UINT16_C(c) 97#define UINT_LEAST32_C(c) UINT32_C(c) 98#define UINT_LEAST64_C(c) UINT64_C(c) 99 100#define INT_FAST8_C(c) INT8_C(c) 101#define INT_FAST64_C(c) INT64_C(c) 102 103#define UINT_FAST8_C(c) UINT8_C(c) 104#define UINT_FAST64_C(c) UINT64_C(c) 105 106#define INTMAX_C(c) INT64_C(c) 107#define UINTMAX_C(c) UINT64_C(c) 108 109#include <bitsize/stdintconst.h> 110 111#endif 112 113/* Keep the kernel from trying to define these types... */ 114#define __BIT_TYPES_DEFINED__ 115 116#endif /* _STDINT_H */ 117