diff options
author | Ralf Corsepius <ralf.corsepius@rtems.org> | 2004-10-26 17:11:03 +0000 |
---|---|---|
committer | Ralf Corsepius <ralf.corsepius@rtems.org> | 2004-10-26 17:11:03 +0000 |
commit | eafc34b58b7e4298611aa4550a6daf9675fcca3d (patch) | |
tree | b20f7df2ffbc1b870bf1192a0945019e34cb0403 | |
parent | Remove environ common declaration -- it broke newlib. (diff) | |
download | rtems-eafc34b58b7e4298611aa4550a6daf9675fcca3d.tar.bz2 |
2004-10-26 Ralf Corsepius <ralf_corsepius@rtems.org>
* libcsupport/include/rtems/_inttypes.h: Undefine __PRIN defines.
* libcsupport/include/rtems/_stdint.h: Apply GNUC-limits to GCC >= 3.3, only.
Add _rtems_*_t_defined defines. Add extern "C".
-rw-r--r-- | cpukit/ChangeLog | 6 | ||||
-rw-r--r-- | cpukit/libcsupport/include/rtems/_inttypes.h | 7 | ||||
-rw-r--r-- | cpukit/libcsupport/include/rtems/_stdint.h | 23 |
3 files changed, 33 insertions, 3 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog index e69b88dc9d..304e0c449b 100644 --- a/cpukit/ChangeLog +++ b/cpukit/ChangeLog @@ -1,5 +1,11 @@ 2004-10-26 Ralf Corsepius <ralf_corsepius@rtems.org> + * libcsupport/include/rtems/_inttypes.h: Undefine __PRIN defines. + * libcsupport/include/rtems/_stdint.h: Apply GNUC-limits to GCC >= 3.3, only. + Add _rtems_*_t_defined defines. Add extern "C". + +2004-10-26 Ralf Corsepius <ralf_corsepius@rtems.org> + * libcsupport/include/rtems/_stdint.h: New. * libcsupport/include/rtems/_inttypes.h: New. * libcsupport/Makefile.am: Reflect changes above. diff --git a/cpukit/libcsupport/include/rtems/_inttypes.h b/cpukit/libcsupport/include/rtems/_inttypes.h index b9167e9f95..f74105470b 100644 --- a/cpukit/libcsupport/include/rtems/_inttypes.h +++ b/cpukit/libcsupport/include/rtems/_inttypes.h @@ -26,6 +26,7 @@ #define PRIx8 __PRI8(x) #define PRIX8 __PRI8(X) +#undef __PRI8 /* 16-bit types */ #define __PRI16(x) __STRINGIFY(x) @@ -37,6 +38,8 @@ #define PRIx16 __PRI16(x) #define PRIX16 __PRI16(X) +#undef __PRI16 + /* 32-bit types */ #if defined(__rtems_long32) #define __PRI32(x) __STRINGIFY(l##x) @@ -51,6 +54,7 @@ #define PRIx32 __PRI32(x) #define PRIX32 __PRI32(X) +#undef __PRI32 /* 64-bit types */ #if defined(__rtems_longlong64) @@ -68,4 +72,7 @@ #define PRIx64 __PRI64(x) #define PRIX64 __PRI64(X) +#undef __STRINGIFY +#undef __PRI64 + #endif /* __rtems__inttypes_h */ 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 */ |