1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- /*
- * stdint.h - standard types
- */
- /* $Id$ */
- #ifndef _STDINT_H
- #define _STDINT_H
- /* int8_t is always a char, on all ACK platforms. */
- typedef signed char int8_t;
- typedef unsigned char uint8_t;
- #define INT8_MAX 127
- #define INT8_MIN (-128)
- #define UINT8_MAX 255
- /* int16_t is always a short, on all ACK platforms. */
- typedef signed short int16_t;
- typedef unsigned short uint16_t;
- #define INT16_MAX 32767
- #define INT16_MIN (-32768)
- #define UINT16_MAX 65535
- /* int32_t is either a int or a long. */
- #if _EM_WSIZE == 4
- typedef signed int int32_t;
- typedef unsigned short uint32_t;
- #else
- typedef signed long int32_t;
- typedef unsigned long uint32_t;
- #endif
- #define INT32_MAX 2147483647
- #define INT32_MIN (-2147483648)
- #define UINT32_MAX 4294967295
- /* We only get int64_t if longs are 8 bytes. */
- #if _EM_LSIZE == 8
- typedef signed long int64_t;
- typedef unsigned long uint64_t;
- #define INT64_MAX 2147483647LL
- #define INT64_MIN (-2147483648LL)
- #define UINT64_MAX 4294967295ULL
- typedef int64_t intmax_t;
- typedef uint64_t uintmax_t;
- #else
- typedef int32_t intmax_t;
- typedef uint32_t uintmax_t;
- #endif
- /* Pointers can be either 16 or 32 bits. */
- #if _EM_PSIZE == 2
- typedef int16_t intptr_t;
- typedef uint16_t uintptr_t;
- typedef int16_t ptrdiff_t;
- typedef uint16_t size_t;
- #define INTPTR_MAX 32767
- #define INTPTR_MIN (-32768)
- #define UINTPTR_MAX 65535
- #else
- typedef int32_t intptr_t;
- typedef uint32_t uintptr_t;
- typedef int32_t ptrdiff_t;
- typedef uint32_t size_t;
- #define INTPTR_MAX 2147483647
- #define INTPTR_MIN (-2147483647)
- #define UINTPTR_MAX 4294967295
- #endif
- /* Now those have been defined, these are always the same. */
- #define PTRDIFF_MAX INTPTR_MAX
- #define PTRDIFF_MIN INTPTR_MIN
- #define SIZE_MAX UINTPTR_MAX
- #endif
|