Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/include/machine/_default_types.h')
-rw-r--r--newlib/libc/include/machine/_default_types.h136
1 files changed, 36 insertions, 100 deletions
diff --git a/newlib/libc/include/machine/_default_types.h b/newlib/libc/include/machine/_default_types.h
index 2bd5f64a0..362e07903 100644
--- a/newlib/libc/include/machine/_default_types.h
+++ b/newlib/libc/include/machine/_default_types.h
@@ -5,7 +5,9 @@
#ifndef _MACHINE__DEFAULT_TYPES_H
#define _MACHINE__DEFAULT_TYPES_H
-#include <sys/features.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
/*
* Guess on types by examining *_MIN / *_MAX defines.
@@ -19,25 +21,13 @@
#include <limits.h>
#endif
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#ifdef __INT8_TYPE__
-typedef __INT8_TYPE__ __int8_t;
-typedef __UINT8_TYPE__ __uint8_t;
-#define ___int8_t_defined 1
-#elif __EXP(SCHAR_MAX) == 0x7f
+#if __EXP(SCHAR_MAX) == 0x7f
typedef signed char __int8_t ;
typedef unsigned char __uint8_t ;
#define ___int8_t_defined 1
#endif
-#ifdef __INT16_TYPE__
-typedef __INT16_TYPE__ __int16_t;
-typedef __UINT16_TYPE__ __uint16_t;
-#define ___int16_t_defined 1
-#elif __EXP(INT_MAX) == 0x7fff
+#if __EXP(INT_MAX) == 0x7fff
typedef signed int __int16_t;
typedef unsigned int __uint16_t;
#define ___int16_t_defined 1
@@ -51,11 +41,19 @@ typedef unsigned char __uint16_t;
#define ___int16_t_defined 1
#endif
-#ifdef __INT32_TYPE__
-typedef __INT32_TYPE__ __int32_t;
-typedef __UINT32_TYPE__ __uint32_t;
-#define ___int32_t_defined 1
-#elif __EXP(INT_MAX) == 0x7fffffffL
+#if ___int16_t_defined
+typedef __int16_t __int_least16_t;
+typedef __uint16_t __uint_least16_t;
+#define ___int_least16_t_defined 1
+
+#if !___int8_t_defined
+typedef __int16_t __int_least8_t;
+typedef __uint16_t __uint_least8_t;
+#define ___int_least8_t_defined 1
+#endif
+#endif
+
+#if __EXP(INT_MAX) == 0x7fffffffL
typedef signed int __int32_t;
typedef unsigned int __uint32_t;
#define ___int32_t_defined 1
@@ -73,11 +71,24 @@ typedef unsigned char __uint32_t;
#define ___int32_t_defined 1
#endif
-#ifdef __INT64_TYPE__
-typedef __INT64_TYPE__ __int64_t;
-typedef __UINT64_TYPE__ __uint64_t;
-#define ___int64_t_defined 1
-#elif __EXP(LONG_MAX) > 0x7fffffff
+#if ___int32_t_defined
+typedef __int32_t __int_least32_t;
+typedef __uint32_t __uint_least32_t;
+#define ___int_least32_t_defined 1
+
+#if !___int8_t_defined
+typedef __int32_t __int_least8_t;
+typedef __uint32_t __uint_least8_t;
+#define ___int_least8_t_defined 1
+#endif
+#if !___int16_t_defined
+typedef __int32_t __int_least16_t;
+typedef __uint32_t __uint_least16_t;
+#define ___int_least16_t_defined 1
+#endif
+#endif
+
+#if __EXP(LONG_MAX) > 0x7fffffff
typedef signed long __int64_t;
typedef unsigned long __uint64_t;
#define ___int64_t_defined 1
@@ -100,81 +111,6 @@ typedef unsigned int __uint64_t;
#define ___int64_t_defined 1
#endif
-#ifdef __INT_LEAST8_TYPE__
-typedef __INT_LEAST8_TYPE__ __int_least8_t;
-typedef __UINT_LEAST8_TYPE__ __uint_least8_t;
-#define ___int_least8_t_defined 1
-#elif defined(___int8_t_defined)
-typedef __int8_t __int_least8_t;
-typedef __uint8_t __uint_least8_t;
-#define ___int_least8_t_defined 1
-#elif defined(___int16_t_defined)
-typedef __int16_t __int_least8_t;
-typedef __uint16_t __uint_least8_t;
-#define ___int_least8_t_defined 1
-#elif defined(___int32_t_defined)
-typedef __int32_t __int_least8_t;
-typedef __uint32_t __uint_least8_t;
-#define ___int_least8_t_defined 1
-#elif defined(___int64_t_defined)
-typedef __int64_t __int_least8_t;
-typedef __uint64_t __uint_least8_t;
-#define ___int_least8_t_defined 1
-#endif
-
-#ifdef __INT_LEAST16_TYPE__
-typedef __INT_LEAST16_TYPE__ __int_least16_t;
-typedef __UINT_LEAST16_TYPE__ __uint_least16_t;
-#define ___int_least16_t_defined 1
-#elif defined(___int16_t_defined)
-typedef __int16_t __int_least16_t;
-typedef __uint16_t __uint_least16_t;
-#define ___int_least16_t_defined 1
-#elif defined(___int32_t_defined)
-typedef __int32_t __int_least16_t;
-typedef __uint32_t __uint_least16_t;
-#define ___int_least16_t_defined 1
-#elif defined(___int64_t_defined)
-typedef __int64_t __int_least16_t;
-typedef __uint64_t __uint_least16_t;
-#define ___int_least16_t_defined 1
-#endif
-
-#ifdef __INT_LEAST32_TYPE__
-typedef __INT_LEAST32_TYPE__ __int_least32_t;
-typedef __UINT_LEAST32_TYPE__ __uint_least32_t;
-#define ___int_least32_t_defined 1
-#elif defined(___int32_t_defined)
-typedef __int32_t __int_least32_t;
-typedef __uint32_t __uint_least32_t;
-#define ___int_least32_t_defined 1
-#elif defined(___int64_t_defined)
-typedef __int64_t __int_least32_t;
-typedef __uint64_t __uint_least32_t;
-#define ___int_least32_t_defined 1
-#endif
-
-#ifdef __INT_LEAST64_TYPE__
-typedef __INT_LEAST64_TYPE__ __int_least64_t;
-typedef __UINT_LEAST64_TYPE__ __uint_least64_t;
-#define ___int_least64_t_defined 1
-#elif defined(___int64_t_defined)
-typedef __int64_t __int_least64_t;
-typedef __uint64_t __uint_least64_t;
-#define ___int_least64_t_defined 1
-#endif
-
-#ifdef __INTPTR_TYPE__
-typedef __INTPTR_TYPE__ __intptr_t;
-typedef __UINTPTR_TYPE__ __uintptr_t;
-#elif defined(__PTRDIFF_TYPE__)
-typedef __PTRDIFF_TYPE__ __intptr_t;
-typedef unsigned __PTRDIFF_TYPE__ __uintptr_t;
-#else
-typedef long __intptr_t;
-typedef unsigned long __uintptr_t;
-#endif
-
#undef __EXP
#ifdef __cplusplus