#if !defined(__FreeBSD__)
#if defined(_MSC_VER)
+#ifndef __int8_t_defined
+#define __int8_t_defined
typedef __int8 int8_t;
typedef unsigned __int8 uint8_t;
typedef __int16 int16_t;
typedef unsigned __int32 uint32_t;
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
-
+#endif
#else // _MSC_VER
/* 7.18.1.3. Fastest minimum-width integer types */
+#ifndef _STDINT_H
typedef int32_t int_fast8_t;
typedef uint32_t uint_fast8_t;
typedef int32_t int_fast16_t;
typedef uint32_t uint_fast32_t;
typedef int64_t int_fast64_t;
typedef uint64_t uint_fast64_t;
+#endif
/* 7.18.1.4. Integer types capable of holding object pointers */
/* 7.18.2.1. Limits of exact-width integer types */
+#ifndef _STDINT_H
+
#define INT8_MIN -128
#define INT8_MAX 127
#define UINT8_MAX 255U
#define SIG_ATOMIC_MIN 0
#define SIG_ATOMIC_MAX 127
+#endif /* _STDINT_H */
+
//#define SIZE_MAX (~(size_t)0)
/* wchar_t limits already defined in <stddef.h>. */