Loading...
include/stdint.h Libc-1044.1.2 Libc-825.26
--- Libc/Libc-1044.1.2/include/stdint.h
+++ Libc/Libc-825.26/include/stdint.h
@@ -15,15 +15,45 @@
 /* from ISO/IEC 988:1999 spec */
 
 /* 7.18.1.1 Exact-width integer types */
-#include <sys/_types/_int8_t.h>
-#include <sys/_types/_int16_t.h>
-#include <sys/_types/_int32_t.h>
-#include <sys/_types/_int64_t.h>
-
-#include <_types/_uint8_t.h>
-#include <_types/_uint16_t.h>
-#include <_types/_uint32_t.h>
-#include <_types/_uint64_t.h>
+#ifndef _INT8_T
+#define _INT8_T
+typedef signed char           int8_t;
+#endif /*_INT8_T */
+
+#ifndef _INT16_T
+#define _INT16_T
+typedef short                int16_t;
+#endif /* _INT16_T */
+
+#ifndef _INT32_T
+#define _INT32_T
+typedef int                  int32_t;
+#endif /* _INT32_T */
+
+#ifndef _INT64_T
+#define _INT64_T
+typedef long long            int64_t;
+#endif /* _INT64_T */
+
+#ifndef _UINT8_T
+#define _UINT8_T
+typedef unsigned char         uint8_t;
+#endif /*_UINT8_T */
+
+#ifndef _UINT16_T
+#define _UINT16_T
+typedef unsigned short       uint16_t;
+#endif /* _UINT16_T */
+
+#ifndef _UINT32_T
+#define _UINT32_T
+typedef unsigned int         uint32_t;
+#endif /* _UINT32_T */
+
+#ifndef _UINT64_T
+#define _UINT64_T
+typedef unsigned long long   uint64_t;
+#endif /* _UINT64_T */
 
 /* 7.18.1.2 Minimum-width integer types */
 typedef int8_t           int_least8_t;
@@ -49,14 +79,35 @@
 
 /* 7.18.1.4 Integer types capable of holding object pointers */
 
-#include <sys/_types.h>
-#include <sys/_types/_intptr_t.h>
-#include <sys/_types/_uintptr_t.h>
+#ifndef _INTPTR_T
+#define _INTPTR_T
+typedef long   intptr_t;
+#endif /* _INTPTR_T */
+
+#ifndef _UINTPTR_T
+#define _UINTPTR_T
+typedef unsigned long   uintptr_t;
+#endif /* _UINTPTR_T */
 
 
 /* 7.18.1.5 Greatest-width integer types */
-#include <_types/_intmax_t.h>
-#include <_types/_uintmax_t.h>
+#ifndef _INTMAX_T
+#define _INTMAX_T
+#ifdef __INTMAX_TYPE__
+typedef __INTMAX_TYPE__             intmax_t;
+#else /* __INTMAX_TYPE__ */
+typedef long long                intmax_t;
+#endif /* __INTMAX_TYPE__ */
+#endif /* _INTMAX_T */
+
+#ifndef _UINTMAX_T
+#define _UINTMAX_T
+#ifdef __UINTMAX_TYPE__
+typedef __UINTMAX_TYPE__             uintmax_t;
+#else /* __UINTMAX_TYPE__ */
+typedef unsigned long long      uintmax_t;
+#endif /* __UINTMAX_TYPE__ */
+#endif /* _UINTMAX_T */
 
 /* 7.18.2 Limits of specified-width integer types:
  *   These #defines specify the minimum and maximum limits
@@ -149,14 +200,14 @@
 #define PTRDIFF_MAX       INT32_MAX
 #endif
 
+/* We have no sig_atomic_t yet, so no SIG_ATOMIC_{MIN,MAX}.
+   Should end up being {-127,127} or {0,255} ... or bigger.
+   My bet would be on one of {U}INT32_{MIN,MAX}. */
+
 #if __WORDSIZE == 64
 #define SIZE_MAX	  UINT64_MAX
 #else
 #define SIZE_MAX          UINT32_MAX
-#endif
-
-#if defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1
-#define RSIZE_MAX         (SIZE_MAX >> 1)
 #endif
 
 #ifndef WCHAR_MAX
@@ -196,12 +247,7 @@
 #define UINT32_C(v)  (v ## U)
 #define UINT64_C(v)  (v ## ULL)
 
-#ifdef __LP64__
-#define INTMAX_C(v)  (v ## L)
-#define UINTMAX_C(v) (v ## UL)
-#else
 #define INTMAX_C(v)  (v ## LL)
 #define UINTMAX_C(v) (v ## ULL)
-#endif
 
 #endif /* _STDINT_H_ */