#define NEAR
#endif
- #if WINPR_HAVE_STDINT_H
- #define __int8 int8_t
- #define __uint8 uint8_t
- #define __int16 int16_t
- #define __uint16 uint16_t
- #define __int32 int32_t
- #define __uint32 uint32_t
- #define __int64 int64_t
- #define __uint64 uint64_t
+ #ifdef WINPR_HAVE_STDINT_H
+ typedef int8_t __int8;
+ typedef uint8_t __uint8;
+ typedef int16_t __int16;
+ typedef uint16_t __uint16;
+ typedef int32_t __int32;
+ typedef uint32_t __uint32;
+ typedef int64_t __int64;
+ typedef uint64_t __uint64;
#else
- #define __int8 char
- #define __uint8 unsigned char
- #define __int16 short
- #define __uint16 unsigned short
- #define __int32 int
- #define __uint32 unsigned int
- #define __int64 long long
- #define __uint64 unsigned long long
+ #if UCHAR_MAX == 0xFF
+ typedef signed char __int8;
+ typedef unsigned char __uint8;
+ #else
+ #error "8-bit type not configured"
+ #endif
+ #if USHRT_MAX == 0xFFFF
+ typedef short __int16;
+ typedef unsigned short __uint16;
+ #elif UINT_MAX == 0xFFFF
+ typedef int __int16;
+ typedef unsigned int __uint16;
+ #error "16-bit type not configured"
+ #endif
+ #if UINT_MAX == 0xFFFFFFFF
+ typedef int __int32;
+ typedef unsigned int __uint32;
+ #elif ULONG_MAX == 0xFFFFFFFF
+ typedef long __int32;
+ typedef unsigned long __uint32;
+ #else
+ #error "32-bit type not configured"
+ #endif
+ #if ULONG_MAX == 0xFFFFFFFFFFFFFFFF
+ typedef long __int64;
+ typedef unsigned long __uint64;
+ #elif ULLONG_MAX == 0xFFFFFFFFFFFFFFFF
+ typedef long long __int64;
+ typedef unsigned long long __uint64;
+ #else
+ #error "64-bit type not configured"
#endif
+ #endif /* WINPR_HAVE_STDINT_H */
- #if WINPR_HAVE_STDINT_H
+ #ifdef WINPR_HAVE_STDINT_H
-#if __ILP64__ || __LP64__
+#if defined(__ILP64__) || defined(__LP64__)
#define __int3264 int64_t
#define __uint3264 uint64_t
#else