diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2007-04-10 09:43:06 +0000 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2007-04-10 09:43:06 +0000 |
commit | af7780e0b3f27a574b007be6ac7a273d14f6b76a (patch) | |
tree | b1698401c2c8b696b9e1effecdbf6c5705fa08c1 /firmware/include/inttypes.h | |
parent | 13c111aaece4d2bd06c41a55aee4abcb256a2774 (diff) |
More complete sized integer definitions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13092 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/include/inttypes.h')
-rw-r--r-- | firmware/include/inttypes.h | 84 |
1 files changed, 66 insertions, 18 deletions
diff --git a/firmware/include/inttypes.h b/firmware/include/inttypes.h index e23e1da960..3737490a81 100644 --- a/firmware/include/inttypes.h +++ b/firmware/include/inttypes.h @@ -17,41 +17,89 @@ * ****************************************************************************/ -#ifndef __INTTYPES_H__ -#define __INTTYPES_H__ +#ifndef __INTTYPES_H__ +#define __INTTYPES_H__ #include <limits.h> /* 8 bit */ -#define int8_t signed char -#define uint8_t unsigned char +#define INT8_MIN SCHAR_MIN +#define INT8_MAX SCHAR_MAX +#define UINT8_MAX UCHAR_MAX +#define int8_t signed char +#define uint8_t unsigned char /* 16 bit */ #if USHRT_MAX == 0xffff -#define int16_t short -#define uint16_t unsigned short + +#define INT16_MIN SHRT_MIN +#define INT16_MAX SHRT_MAX +#define UINT16_MAX USHRT_MAX +#define int16_t short +#define uint16_t unsigned short + #endif /* 32 bit */ #if ULONG_MAX == 0xfffffffful -#define int32_t long -#define uint32_t unsigned long -#define intptr_t long -#define uintptr_t unsigned long + +#define INT32_MIN LONG_MIN +#define INT32_MAX LONG_MAX +#define UINT32_MAX ULONG_MAX +#define int32_t long +#define uint32_t unsigned long + +#define INTPTR_MIN LONG_MIN +#define INTPTR_MAX LONG_MAX +#define UINTPTR_MAX ULONG_MAX +#define intptr_t long +#define uintptr_t unsigned long + #elif UINT_MAX == 0xffffffffu -#define int32_t int -#define uint32_t unsigned int + +#define INT32_MIN INT_MIN +#define INT32_MAX INT_MAX +#define UINT32_MAX UINT_MAX +#define int32_t int +#define uint32_t unsigned int + #endif /* 64 bit */ +#ifndef LLONG_MIN +#define LLONG_MIN ((long long)9223372036854775808ull) +#endif + +#ifndef LLONG_MAX +#define LLONG_MAX 9223372036854775807ll +#endif + +#ifndef ULLONG_MAX +#define ULLONG_MAX 18446744073709551615ull +#endif + #if ULONG_MAX == 0xffffffffffffffffull -#define int64_t long -#define uint64_t unsigned long -#define intptr_t long -#define uintptr_t unsigned long + +#define INT64_MIN LONG_MIN +#define INT64_MAX LONG_MAX +#define UINT64_MAX ULONG_MAX +#define int64_t long +#define uint64_t unsigned long + +#define INTPTR_MIN LONG_MIN +#define INTPTR_MAX LONG_MAX +#define UINTPTR_MAX ULONG_MAX +#define intptr_t long +#define uintptr_t unsigned long + #else -#define int64_t long long -#define uint64_t unsigned long long + +#define INT64_MIN LLONG_MIN +#define INT64_MAX LLONG_MAX +#define UINT64_MAX ULLONG_MAX +#define int64_t long long +#define uint64_t unsigned long long + #endif #endif /* __INTTYPES_H__ */ |