TYPEDEF long ptrdiff_t;
TYPEDEF __builtin_va_list va_list;
+#ifndef __cplusplus
TYPEDEF int wchar_t;
+#endif
TYPEDEF int wint_t;
TYPEDEF int wctrans_t;
TYPEDEF int wctype_t;
-TYPEDEF char int8_t;
-TYPEDEF short int16_t;
-TYPEDEF int int32_t;
-TYPEDEF long int64_t;
+TYPEDEF signed char int8_t;
+TYPEDEF short int16_t;
+TYPEDEF int int32_t;
+TYPEDEF long int64_t;
TYPEDEF unsigned char uint8_t;
TYPEDEF unsigned short uint16_t;
TYPEDEF long intptr_t;
TYPEDEF unsigned long uintptr_t;
+TYPEDEF double float_t;
+TYPEDEF double double_t;
+
TYPEDEF long time_t;
TYPEDEF long suseconds_t;
-STRUCT timeval { time_t tv_sec; int tv_usec; };
+STRUCT timeval { time_t tv_sec; long tv_usec; };
STRUCT timespec { time_t tv_sec; long tv_nsec; };
TYPEDEF int pid_t;