breakage.
#if defined(__GNUC__) && !defined(__STRICT_ANSI__) || __STDC_VERSION__ >= 199901
#define __LONG_LONG_SUPPORTED 1
-#define __L64 1
#endif
/* This should be defined as restrict when a C99 compiler is used. */
typedef i8_t int8_t;
typedef i16_t int16_t;
typedef i32_t int32_t;
-#if _WORD_SIZE > 2 && __L64
+#if defined(__LONG_LONG_SUPPORTED)
+typedef long long int64_t;
+#elif _WORD_SIZE > 2 && __L64
typedef i64_t int64_t;
#endif
typedef u8_t uint8_t;
typedef u16_t uint16_t;
typedef u32_t uint32_t;
-#if _WORD_SIZE > 2 && __L64
+#if defined(__LONG_LONG_SUPPORTED)
+typedef unsigned long long uint64_t;
+#elif _WORD_SIZE > 2 && __L64
typedef u64_t uint64_t;
#endif
typedef short i16_t; /* 16 bit signed type */
typedef long i32_t; /* 32 bit signed type */
-#ifdef __LONG_LONG_SUPPORTED
-typedef unsigned long long u64_t; /* 64 bit type */
-typedef long long i64_t; /* 64 bit signed type */
-#else
typedef struct { u32_t _[2]; } u64_t;
-#endif
/* The following types are needed because MINIX uses K&R style function
* definitions (for maximum portability). When a short, such as dev_t, is