diff options
Diffstat (limited to 'cpukit/libcsupport/include/rtems/_stdint.h')
-rw-r--r-- | cpukit/libcsupport/include/rtems/_stdint.h | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/cpukit/libcsupport/include/rtems/_stdint.h b/cpukit/libcsupport/include/rtems/_stdint.h index 8f2fc180b5..70705055d8 100644 --- a/cpukit/libcsupport/include/rtems/_stdint.h +++ b/cpukit/libcsupport/include/rtems/_stdint.h @@ -12,7 +12,12 @@ #ifndef __rtems__stdint_h #define __rtems__stdint_h -#ifdef __GNUC__ +#ifdef __cplusplus +extern "C" { +#endif + +#if defined(__GNUC__) && (__GNUC__ >= 3 ) \ + && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ > 2 ) #define __EXP(x) __##x##__ #else #define __EXP(x) x @@ -22,50 +27,62 @@ #if __EXP(SCHAR_MAX) == 0x7f typedef signed char __rtems_int8_t ; typedef unsigned char __rtems_uint8_t ; +#define __rtems_int8_t_defined 1 #endif #if __EXP(INT_MAX) == 0x7fff typedef signed int __rtems_int16_t; typedef unsigned int __rtems_uint16_t; +#define __rtems_int16_t_defined 1 #elif __EXP(SHRT_MAX) == 0x7fff typedef signed short __rtems_int16_t; typedef unsigned short __rtems_uint16_t; +#define __rtems_int16_t_defined 1 #elif __EXP(SCHAR_MAX) == 0x7fff typedef signed char __rtems_int32_t; typedef unsigned char __rtems_uint32_t; +#define __rtems_int16_t_defined 1 #endif #if __EXP(INT_MAX) == 0x7fffffff typedef signed int __rtems_int32_t; typedef unsigned int __rtems_uint32_t; +#define __rtems_int32_t_defined 1 #elif __EXP(LONG_MAX) == 0x7fffffff typedef signed long __rtems_int32_t; typedef unsigned long __rtems_uint32_t; +#define __rtems_int32_t_defined 1 #define __rtems_long32 1 #elif __EXP(SHRT_MAX) == 0x7fffffff typedef signed short __rtems_int32_t; typedef unsigned short __rtems_uint32_t; +#define __rtems_int32_t_defined 1 #elif __EXP(SCHAR_MAX) == 0x7fffffff typedef signed char __rtems_int32_t; typedef unsigned char __rtems_uint32_t; +#define __rtems_int32_t_defined 1 #endif #if __EXP(LONG_MAX) == 0x7fffffffffffffff typedef signed long int __rtems_int64_t; typedef unsigned long int __rtems_uint64_t; +#define __rtems_int64_t_defined 1 #define __rtems_long64 1 #elif __EXP(LONG_LONG_MAX) == 0x7fffffffffffffff typedef signed long int __rtems_int64_t; typedef unsigned long int __rtems_uint64_t; +#define __rtems_int64_t_defined 1 #define __rtems_longlong64 1 #elif __EXP(INT_MAX) == 0x7fffffffffffffff typedef signed int __rtems_int64_t; typedef unsigned int __rtems_uint64_t; +#define __rtems_int64_t_defined 1 #endif #undef __EXP -typedef signed long intptr_t; -typedef unsigned long uintptr_t; +#ifdef __cplusplus +} +#endif #endif /* __rtems__stdint_h */ |