Fix for pri and scn formats
This commit is contained in:
parent
9074b9b8ad
commit
892cfcb7c2
@ -1,3 +1,13 @@
|
||||
2015-08-27 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
||||
|
||||
* libc/include/sys/_intsup.h: Defined new __INTxx, __FASTxx and
|
||||
__LEASTxx macro's to hold information regarding the respective types
|
||||
print and scan formats.
|
||||
* libc/include/inttypes.h: Defined LEAST and FAST specific PRI and SCN
|
||||
macro's as these are not always the same as the INT variants. Used the
|
||||
new __INTxx, __FASTxx and __LEASTxx macro's in their corresponding PRI
|
||||
and SCN macros.
|
||||
|
||||
2015-08-07 Stefan Wallentowitz <stefan.wallentowitz@tum.de>
|
||||
|
||||
* libc/sys/or1k/mlock.c: Fix exception enable saving
|
||||
|
@ -23,7 +23,9 @@
|
||||
#define __STRINGIFY(a) #a
|
||||
|
||||
/* 8-bit types */
|
||||
#define __PRI8(x) __STRINGIFY(x)
|
||||
#define __PRI8(x) __INT8 __STRINGIFY(x)
|
||||
#define __PRI8LEAST(x) __LEAST8 __STRINGIFY(x)
|
||||
#define __PRI8FAST(x) __FAST8 __STRINGIFY(x)
|
||||
|
||||
/* NOTICE: scanning 8-bit types requires use of the hh specifier
|
||||
* which is only supported on newlib platforms that
|
||||
@ -36,7 +38,9 @@
|
||||
*/
|
||||
|
||||
#if defined(_WANT_IO_C99_FORMATS)
|
||||
#define __SCN8(x) __STRINGIFY(hh##x)
|
||||
#define __SCN8(x) __INT8 __STRINGIFY(x)
|
||||
#define __SCN8LEAST(x) __LEAST8 __STRINGIFY(x)
|
||||
#define __SCN8FAST(x) __FAST8 __STRINGIFY(x)
|
||||
#endif /* _WANT_IO_C99_FORMATS */
|
||||
|
||||
|
||||
@ -59,45 +63,49 @@
|
||||
#endif /* _WANT_IO_C99_FORMATS */
|
||||
|
||||
|
||||
#define PRIdLEAST8 __PRI8(d)
|
||||
#define PRIiLEAST8 __PRI8(i)
|
||||
#define PRIoLEAST8 __PRI8(o)
|
||||
#define PRIuLEAST8 __PRI8(u)
|
||||
#define PRIxLEAST8 __PRI8(x)
|
||||
#define PRIXLEAST8 __PRI8(X)
|
||||
#define PRIdLEAST8 __PRI8LEAST(d)
|
||||
#define PRIiLEAST8 __PRI8LEAST(i)
|
||||
#define PRIoLEAST8 __PRI8LEAST(o)
|
||||
#define PRIuLEAST8 __PRI8LEAST(u)
|
||||
#define PRIxLEAST8 __PRI8LEAST(x)
|
||||
#define PRIXLEAST8 __PRI8LEAST(X)
|
||||
|
||||
/* Macros below are only enabled for a newlib built with C99 I/O format support. */
|
||||
#if defined(_WANT_IO_C99_FORMATS)
|
||||
|
||||
#define SCNdLEAST8 __SCN8(d)
|
||||
#define SCNiLEAST8 __SCN8(i)
|
||||
#define SCNoLEAST8 __SCN8(o)
|
||||
#define SCNuLEAST8 __SCN8(u)
|
||||
#define SCNxLEAST8 __SCN8(x)
|
||||
#define SCNdLEAST8 __SCN8LEAST(d)
|
||||
#define SCNiLEAST8 __SCN8LEAST(i)
|
||||
#define SCNoLEAST8 __SCN8LEAST(o)
|
||||
#define SCNuLEAST8 __SCN8LEAST(u)
|
||||
#define SCNxLEAST8 __SCN8LEAST(x)
|
||||
|
||||
#endif /* _WANT_IO_C99_FORMATS */
|
||||
|
||||
#define PRIdFAST8 __PRI8(d)
|
||||
#define PRIiFAST8 __PRI8(i)
|
||||
#define PRIoFAST8 __PRI8(o)
|
||||
#define PRIuFAST8 __PRI8(u)
|
||||
#define PRIxFAST8 __PRI8(x)
|
||||
#define PRIXFAST8 __PRI8(X)
|
||||
#define PRIdFAST8 __PRI8FAST(d)
|
||||
#define PRIiFAST8 __PRI8FAST(i)
|
||||
#define PRIoFAST8 __PRI8FAST(o)
|
||||
#define PRIuFAST8 __PRI8FAST(u)
|
||||
#define PRIxFAST8 __PRI8FAST(x)
|
||||
#define PRIXFAST8 __PRI8FAST(X)
|
||||
|
||||
/* Macros below are only enabled for a newlib built with C99 I/O format support. */
|
||||
#if defined(_WANT_IO_C99_FORMATS)
|
||||
|
||||
#define SCNdFAST8 __SCN8(d)
|
||||
#define SCNiFAST8 __SCN8(i)
|
||||
#define SCNoFAST8 __SCN8(o)
|
||||
#define SCNuFAST8 __SCN8(u)
|
||||
#define SCNxFAST8 __SCN8(x)
|
||||
#define SCNdFAST8 __SCN8FAST(d)
|
||||
#define SCNiFAST8 __SCN8FAST(i)
|
||||
#define SCNoFAST8 __SCN8FAST(o)
|
||||
#define SCNuFAST8 __SCN8FAST(u)
|
||||
#define SCNxFAST8 __SCN8FAST(x)
|
||||
|
||||
#endif /* _WANT_IO_C99_FORMATS */
|
||||
|
||||
/* 16-bit types */
|
||||
#define __PRI16(x) __STRINGIFY(x)
|
||||
#define __SCN16(x) __STRINGIFY(h##x)
|
||||
#define __PRI16(x) __INT16 __STRINGIFY(x)
|
||||
#define __PRI16LEAST(x) __LEAST16 __STRINGIFY(x)
|
||||
#define __PRI16FAST(x) __FAST16 __STRINGIFY(x)
|
||||
#define __SCN16(x) __INT16 __STRINGIFY(x)
|
||||
#define __SCN16LEAST(x) __LEAST16 __STRINGIFY(x)
|
||||
#define __SCN16FAST(x) __FAST16 __STRINGIFY(x)
|
||||
|
||||
|
||||
#define PRId16 __PRI16(d)
|
||||
@ -114,41 +122,40 @@
|
||||
#define SCNx16 __SCN16(x)
|
||||
|
||||
|
||||
#define PRIdLEAST16 __PRI16(d)
|
||||
#define PRIiLEAST16 __PRI16(i)
|
||||
#define PRIoLEAST16 __PRI16(o)
|
||||
#define PRIuLEAST16 __PRI16(u)
|
||||
#define PRIxLEAST16 __PRI16(x)
|
||||
#define PRIXLEAST16 __PRI16(X)
|
||||
#define PRIdLEAST16 __PRI16LEAST(d)
|
||||
#define PRIiLEAST16 __PRI16LEAST(i)
|
||||
#define PRIoLEAST16 __PRI16LEAST(o)
|
||||
#define PRIuLEAST16 __PRI16LEAST(u)
|
||||
#define PRIxLEAST16 __PRI16LEAST(x)
|
||||
#define PRIXLEAST16 __PRI16LEAST(X)
|
||||
|
||||
#define SCNdLEAST16 __SCN16(d)
|
||||
#define SCNiLEAST16 __SCN16(i)
|
||||
#define SCNoLEAST16 __SCN16(o)
|
||||
#define SCNuLEAST16 __SCN16(u)
|
||||
#define SCNxLEAST16 __SCN16(x)
|
||||
#define SCNdLEAST16 __SCN16LEAST(d)
|
||||
#define SCNiLEAST16 __SCN16LEAST(i)
|
||||
#define SCNoLEAST16 __SCN16LEAST(o)
|
||||
#define SCNuLEAST16 __SCN16LEAST(u)
|
||||
#define SCNxLEAST16 __SCN16LEAST(x)
|
||||
|
||||
|
||||
#define PRIdFAST16 __PRI16(d)
|
||||
#define PRIiFAST16 __PRI16(i)
|
||||
#define PRIoFAST16 __PRI16(o)
|
||||
#define PRIuFAST16 __PRI16(u)
|
||||
#define PRIxFAST16 __PRI16(x)
|
||||
#define PRIXFAST16 __PRI16(X)
|
||||
#define PRIdFAST16 __PRI16FAST(d)
|
||||
#define PRIiFAST16 __PRI16FAST(i)
|
||||
#define PRIoFAST16 __PRI16FAST(o)
|
||||
#define PRIuFAST16 __PRI16FAST(u)
|
||||
#define PRIxFAST16 __PRI16FAST(x)
|
||||
#define PRIXFAST16 __PRI16FAST(X)
|
||||
|
||||
#define SCNdFAST16 __SCN16(d)
|
||||
#define SCNiFAST16 __SCN16(i)
|
||||
#define SCNoFAST16 __SCN16(o)
|
||||
#define SCNuFAST16 __SCN16(u)
|
||||
#define SCNxFAST16 __SCN16(x)
|
||||
#define SCNdFAST16 __SCN16FAST(d)
|
||||
#define SCNiFAST16 __SCN16FAST(i)
|
||||
#define SCNoFAST16 __SCN16FAST(o)
|
||||
#define SCNuFAST16 __SCN16FAST(u)
|
||||
#define SCNxFAST16 __SCN16FAST(x)
|
||||
|
||||
/* 32-bit types */
|
||||
#if defined (_INT32_EQ_LONG)
|
||||
#define __PRI32(x) __STRINGIFY(l##x)
|
||||
#define __SCN32(x) __STRINGIFY(l##x)
|
||||
#else
|
||||
#define __PRI32(x) __STRINGIFY(x)
|
||||
#define __SCN32(x) __STRINGIFY(x)
|
||||
#endif
|
||||
#define __PRI32(x) __INT32 __STRINGIFY(x)
|
||||
#define __SCN32(x) __INT32 __STRINGIFY(x)
|
||||
#define __PRI32LEAST(x) __LEAST32 __STRINGIFY(x)
|
||||
#define __SCN32LEAST(x) __LEAST32 __STRINGIFY(x)
|
||||
#define __PRI32FAST(x) __FAST32 __STRINGIFY(x)
|
||||
#define __SCN32FAST(x) __FAST32 __STRINGIFY(x)
|
||||
|
||||
#define PRId32 __PRI32(d)
|
||||
#define PRIi32 __PRI32(i)
|
||||
@ -164,46 +171,44 @@
|
||||
#define SCNx32 __SCN32(x)
|
||||
|
||||
|
||||
#define PRIdLEAST32 __PRI32(d)
|
||||
#define PRIiLEAST32 __PRI32(i)
|
||||
#define PRIoLEAST32 __PRI32(o)
|
||||
#define PRIuLEAST32 __PRI32(u)
|
||||
#define PRIxLEAST32 __PRI32(x)
|
||||
#define PRIXLEAST32 __PRI32(X)
|
||||
#define PRIdLEAST32 __PRI32LEAST(d)
|
||||
#define PRIiLEAST32 __PRI32LEAST(i)
|
||||
#define PRIoLEAST32 __PRI32LEAST(o)
|
||||
#define PRIuLEAST32 __PRI32LEAST(u)
|
||||
#define PRIxLEAST32 __PRI32LEAST(x)
|
||||
#define PRIXLEAST32 __PRI32LEAST(X)
|
||||
|
||||
#define SCNdLEAST32 __SCN32(d)
|
||||
#define SCNiLEAST32 __SCN32(i)
|
||||
#define SCNoLEAST32 __SCN32(o)
|
||||
#define SCNuLEAST32 __SCN32(u)
|
||||
#define SCNxLEAST32 __SCN32(x)
|
||||
#define SCNdLEAST32 __SCN32LEAST(d)
|
||||
#define SCNiLEAST32 __SCN32LEAST(i)
|
||||
#define SCNoLEAST32 __SCN32LEAST(o)
|
||||
#define SCNuLEAST32 __SCN32LEAST(u)
|
||||
#define SCNxLEAST32 __SCN32LEAST(x)
|
||||
|
||||
|
||||
#define PRIdFAST32 __PRI32(d)
|
||||
#define PRIiFAST32 __PRI32(i)
|
||||
#define PRIoFAST32 __PRI32(o)
|
||||
#define PRIuFAST32 __PRI32(u)
|
||||
#define PRIxFAST32 __PRI32(x)
|
||||
#define PRIXFAST32 __PRI32(X)
|
||||
#define PRIdFAST32 __PRI32FAST(d)
|
||||
#define PRIiFAST32 __PRI32FAST(i)
|
||||
#define PRIoFAST32 __PRI32FAST(o)
|
||||
#define PRIuFAST32 __PRI32FAST(u)
|
||||
#define PRIxFAST32 __PRI32FAST(x)
|
||||
#define PRIXFAST32 __PRI32FAST(X)
|
||||
|
||||
#define SCNdFAST32 __SCN32(d)
|
||||
#define SCNiFAST32 __SCN32(i)
|
||||
#define SCNoFAST32 __SCN32(o)
|
||||
#define SCNuFAST32 __SCN32(u)
|
||||
#define SCNxFAST32 __SCN32(x)
|
||||
#define SCNdFAST32 __SCN32FAST(d)
|
||||
#define SCNiFAST32 __SCN32FAST(i)
|
||||
#define SCNoFAST32 __SCN32FAST(o)
|
||||
#define SCNuFAST32 __SCN32FAST(u)
|
||||
#define SCNxFAST32 __SCN32FAST(x)
|
||||
|
||||
|
||||
/* 64-bit types */
|
||||
#if __have_long64
|
||||
#define __PRI64(x) __STRINGIFY(l##x)
|
||||
#define __SCN64(x) __STRINGIFY(l##x)
|
||||
#elif __have_longlong64
|
||||
#define __PRI64(x) __STRINGIFY(ll##x)
|
||||
#define __SCN64(x) __STRINGIFY(ll##x)
|
||||
#else
|
||||
#define __PRI64(x) __STRINGIFY(x)
|
||||
#define __SCN64(x) __STRINGIFY(x)
|
||||
#endif
|
||||
#define __PRI64(x) __INT64 __STRINGIFY(x)
|
||||
#define __SCN64(x) __INT64 __STRINGIFY(x)
|
||||
|
||||
#define __PRI64LEAST(x) __LEAST64 __STRINGIFY(x)
|
||||
#define __SCN64LEAST(x) __LEAST64 __STRINGIFY(x)
|
||||
#define __PRI64FAST(x) __FAST64 __STRINGIFY(x)
|
||||
#define __SCN64FAST(x) __FAST64 __STRINGIFY(x)
|
||||
|
||||
#if __int64_t_defined
|
||||
#define PRId64 __PRI64(d)
|
||||
#define PRIi64 __PRI64(i)
|
||||
#define PRIo64 __PRI64(o)
|
||||
@ -216,34 +221,36 @@
|
||||
#define SCNo64 __SCN64(o)
|
||||
#define SCNu64 __SCN64(u)
|
||||
#define SCNx64 __SCN64(x)
|
||||
#endif
|
||||
|
||||
#if __int64_t_defined
|
||||
#define PRIdLEAST64 __PRI64(d)
|
||||
#define PRIiLEAST64 __PRI64(i)
|
||||
#define PRIoLEAST64 __PRI64(o)
|
||||
#define PRIuLEAST64 __PRI64(u)
|
||||
#define PRIxLEAST64 __PRI64(x)
|
||||
#define PRIXLEAST64 __PRI64(X)
|
||||
#if __int_least64_t_defined
|
||||
#define PRIdLEAST64 __PRI64LEAST(d)
|
||||
#define PRIiLEAST64 __PRI64LEAST(i)
|
||||
#define PRIoLEAST64 __PRI64LEAST(o)
|
||||
#define PRIuLEAST64 __PRI64LEAST(u)
|
||||
#define PRIxLEAST64 __PRI64LEAST(x)
|
||||
#define PRIXLEAST64 __PRI64LEAST(X)
|
||||
|
||||
#define SCNdLEAST64 __SCN64(d)
|
||||
#define SCNiLEAST64 __SCN64(i)
|
||||
#define SCNoLEAST64 __SCN64(o)
|
||||
#define SCNuLEAST64 __SCN64(u)
|
||||
#define SCNxLEAST64 __SCN64(x)
|
||||
#define SCNdLEAST64 __SCN64LEAST(d)
|
||||
#define SCNiLEAST64 __SCN64LEAST(i)
|
||||
#define SCNoLEAST64 __SCN64LEAST(o)
|
||||
#define SCNuLEAST64 __SCN64LEAST(u)
|
||||
#define SCNxLEAST64 __SCN64LEAST(x)
|
||||
#endif
|
||||
|
||||
#if __int_fast64_t_defined
|
||||
#define PRIdFAST64 __PRI64FAST(d)
|
||||
#define PRIiFAST64 __PRI64FAST(i)
|
||||
#define PRIoFAST64 __PRI64FAST(o)
|
||||
#define PRIuFAST64 __PRI64FAST(u)
|
||||
#define PRIxFAST64 __PRI64FAST(x)
|
||||
#define PRIXFAST64 __PRI64FAST(X)
|
||||
|
||||
#define PRIdFAST64 __PRI64(d)
|
||||
#define PRIiFAST64 __PRI64(i)
|
||||
#define PRIoFAST64 __PRI64(o)
|
||||
#define PRIuFAST64 __PRI64(u)
|
||||
#define PRIxFAST64 __PRI64(x)
|
||||
#define PRIXFAST64 __PRI64(X)
|
||||
|
||||
#define SCNdFAST64 __SCN64(d)
|
||||
#define SCNiFAST64 __SCN64(i)
|
||||
#define SCNoFAST64 __SCN64(o)
|
||||
#define SCNuFAST64 __SCN64(u)
|
||||
#define SCNxFAST64 __SCN64(x)
|
||||
#define SCNdFAST64 __SCN64FAST(d)
|
||||
#define SCNiFAST64 __SCN64FAST(i)
|
||||
#define SCNoFAST64 __SCN64FAST(o)
|
||||
#define SCNuFAST64 __SCN64FAST(u)
|
||||
#define SCNxFAST64 __SCN64FAST(x)
|
||||
#endif
|
||||
|
||||
/* max-bit types */
|
||||
|
@ -33,39 +33,168 @@
|
||||
#define __have_long32 1
|
||||
#endif
|
||||
|
||||
/* Determine how intptr_t and int32_t are defined by gcc for this target. This
|
||||
is used to determine the correct printf() constant in inttypes.h and other
|
||||
constants in stdint.h. */
|
||||
/* Determine how intptr_t and intN_t fastN_t and leastN_t are defined by gcc
|
||||
for this target. This is used to determine the correct printf() constant in
|
||||
inttypes.h and other constants in stdint.h.
|
||||
So we end up with
|
||||
?(signed|unsigned) char == 0
|
||||
?(signed|unsigned) short == 1
|
||||
?(signed|unsigned) int == 2
|
||||
?(signed|unsigned) short int == 3
|
||||
?(signed|unsigned) long == 4
|
||||
?(signed|unsigned) long int == 6
|
||||
?(signed|unsigned) long long == 8
|
||||
?(signed|unsigned) long long int == 10
|
||||
*/
|
||||
#pragma push_macro("signed")
|
||||
#pragma push_macro("unsigned")
|
||||
#pragma push_macro("char")
|
||||
#pragma push_macro("short")
|
||||
#pragma push_macro("int")
|
||||
#pragma push_macro("long")
|
||||
#undef signed
|
||||
#undef unsigned
|
||||
#undef char
|
||||
#undef short
|
||||
#undef int
|
||||
#undef long
|
||||
#define signed +0
|
||||
#define int +0
|
||||
#define long +1
|
||||
#if __INTPTR_TYPE__ == 2
|
||||
#define unsigned +0
|
||||
#define char +0
|
||||
#define short +1
|
||||
#define int +2
|
||||
#define long +4
|
||||
#if (__INTPTR_TYPE__ == 8 || __INTPTR_TYPE__ == 10)
|
||||
#define _INTPTR_EQ_LONGLONG
|
||||
#elif __INTPTR_TYPE__ == 1
|
||||
#elif (__INTPTR_TYPE__ == 4 || __INTPTR_TYPE__ == 6)
|
||||
#define _INTPTR_EQ_LONG
|
||||
#elif __INTPTR_TYPE__ == 0
|
||||
#elif __INTPTR_TYPE__ == 2
|
||||
/* Nothing to define because intptr_t is safe to print as an int. */
|
||||
#else
|
||||
#error "Unable to determine type definition of intptr_t"
|
||||
#endif
|
||||
#if __INT32_TYPE__ == 1
|
||||
#if (__INT32_TYPE__ == 4 || __INT32_TYPE__ == 6)
|
||||
#define _INT32_EQ_LONG
|
||||
#elif __INT32_TYPE__ == 0
|
||||
#elif __INT32_TYPE__ == 2
|
||||
/* Nothing to define because int32_t is safe to print as an int. */
|
||||
#else
|
||||
#error "Unable to determine type definition of int32_t"
|
||||
#endif
|
||||
#undef long
|
||||
#undef int
|
||||
|
||||
#if (__INT8_TYPE__ == 0)
|
||||
#define __INT8 "hh"
|
||||
#elif (__INT8_TYPE__ == 1 || __INT8_TYPE__ == 3)
|
||||
#define __INT8 "h"
|
||||
#elif (__INT8_TYPE__ == 2)
|
||||
#define __INT8
|
||||
#elif (__INT8_TYPE__ == 4 || __INT8_TYPE__ == 6)
|
||||
#define __INT8 "l"
|
||||
#elif (__INT8_TYPE__ == 8 || __INT8_TYPE__ == 10)
|
||||
#define __INT8 "ll"
|
||||
#endif
|
||||
#if (__INT16_TYPE__ == 1 || __INT16_TYPE__ == 3)
|
||||
#define __INT16 "h"
|
||||
#elif (__INT16_TYPE__ == 2)
|
||||
#define __INT16
|
||||
#elif (__INT16_TYPE__ == 4 || __INT16_TYPE__ == 6)
|
||||
#define __INT16 "l"
|
||||
#elif (__INT16_TYPE__ == 8 || __INT16_TYPE__ == 10)
|
||||
#define __INT16 "ll"
|
||||
#endif
|
||||
#if (__INT32_TYPE__ == 2)
|
||||
#define __INT32
|
||||
#elif (__INT32_TYPE__ == 4 || __INT32_TYPE__ == 6)
|
||||
#define __INT32 "l"
|
||||
#elif (__INT32_TYPE__ == 8 || __INT32_TYPE__ == 10)
|
||||
#define __INT32 "ll"
|
||||
#endif
|
||||
#if (__INT64_TYPE__ == 2)
|
||||
#define __INT64
|
||||
#elif (__INT64_TYPE__ == 4 || __INT64_TYPE__ == 6)
|
||||
#define __INT64 "l"
|
||||
#elif (__INT64_TYPE__ == 8 || __INT64_TYPE__ == 10)
|
||||
#define __INT64 "ll"
|
||||
#endif
|
||||
#if (__INT_FAST8_TYPE__ == 0)
|
||||
#define __FAST8 "hh"
|
||||
#elif (__INT_FAST8_TYPE__ == 1 || __INT_FAST8_TYPE__ == 3)
|
||||
#define __FAST8 "h"
|
||||
#elif (__INT_FAST8_TYPE__ == 2)
|
||||
#define __FAST8
|
||||
#elif (__INT_FAST8_TYPE__ == 4 || __INT_FAST8_TYPE__ == 6)
|
||||
#define __FAST8 "l"
|
||||
#elif (__INT_FAST8_TYPE__ == 8 || __INT_FAST8_TYPE__ == 10)
|
||||
#define __FAST8 "ll"
|
||||
#endif
|
||||
#if (__INT_FAST16_TYPE__ == 1 || __INT_FAST16_TYPE__ == 3)
|
||||
#define __FAST16 "h"
|
||||
#elif (__INT_FAST16_TYPE__ == 2)
|
||||
#define __FAST16
|
||||
#elif (__INT_FAST16_TYPE__ == 4 || __INT_FAST16_TYPE__ == 6)
|
||||
#define __FAST16 "l"
|
||||
#elif (__INT_FAST16_TYPE__ == 8 || __INT_FAST16_TYPE__ == 10)
|
||||
#define __FAST16 "ll"
|
||||
#endif
|
||||
#if (__INT_FAST32_TYPE__ == 2)
|
||||
#define __FAST32
|
||||
#elif (__INT_FAST32_TYPE__ == 4 || __INT_FAST32_TYPE__ == 6)
|
||||
#define __FAST32 "l"
|
||||
#elif (__INT_FAST32_TYPE__ == 8 || __INT_FAST32_TYPE__ == 10)
|
||||
#define __FAST32 "ll"
|
||||
#endif
|
||||
#if (__INT_FAST64_TYPE__ == 2)
|
||||
#define __FAST64
|
||||
#elif (__INT_FAST64_TYPE__ == 4 || __INT_FAST64_TYPE__ == 6)
|
||||
#define __FAST64 "l"
|
||||
#elif (__INT_FAST64_TYPE__ == 8 || __INT_FAST64_TYPE__ == 10)
|
||||
#define __FAST64 "ll"
|
||||
#endif
|
||||
|
||||
#if (__INT_LEAST8_TYPE__ == 0)
|
||||
#define __LEAST8 "hh"
|
||||
#elif (__INT_LEAST8_TYPE__ == 1 || __INT_LEAST8_TYPE__ == 3)
|
||||
#define __LEAST8 "h"
|
||||
#elif (__INT_LEAST8_TYPE__ == 2)
|
||||
#define __LEAST8
|
||||
#elif (__INT_LEAST8_TYPE__ == 4 || __INT_LEAST8_TYPE__ == 6)
|
||||
#define __LEAST8 "l"
|
||||
#elif (__INT_LEAST8_TYPE__ == 8 || __INT_LEAST8_TYPE__ == 10)
|
||||
#define __LEAST8 "ll"
|
||||
#endif
|
||||
#if (__INT_LEAST16_TYPE__ == 1 || __INT_LEAST16_TYPE__ == 3)
|
||||
#define __LEAST16 "h"
|
||||
#elif (__INT_LEAST16_TYPE__ == 2)
|
||||
#define __LEAST16
|
||||
#elif (__INT_LEAST16_TYPE__ == 4 || __INT_LEAST16_TYPE__ == 6)
|
||||
#define __LEAST16 "l"
|
||||
#elif (__INT_LEAST16_TYPE__ == 8 || __INT_LEAST16_TYPE__ == 10)
|
||||
#define __LEAST16 "ll"
|
||||
#endif
|
||||
#if (__INT_LEAST32_TYPE__ == 2)
|
||||
#define __LEAST32
|
||||
#elif (__INT_LEAST32_TYPE__ == 4 || __INT_LEAST32_TYPE__ == 6)
|
||||
#define __LEAST32 "l"
|
||||
#elif (__INT_LEAST32_TYPE__ == 8 || __INT_LEAST32_TYPE__ == 10)
|
||||
#define __LEAST32 "ll"
|
||||
#endif
|
||||
#if (__INT_LEAST64_TYPE__ == 2)
|
||||
#define __LEAST64
|
||||
#elif (__INT_LEAST64_TYPE__ == 4 || __INT_LEAST64_TYPE__ == 6)
|
||||
#define __LEAST64 "l"
|
||||
#elif (__INT_LEAST64_TYPE__ == 8 || __INT_LEAST64_TYPE__ == 10)
|
||||
#define __LEAST64 "ll"
|
||||
#endif
|
||||
#undef signed
|
||||
#undef unsigned
|
||||
#undef char
|
||||
#undef short
|
||||
#undef int
|
||||
#undef long
|
||||
#pragma pop_macro("signed")
|
||||
#pragma pop_macro("unsigned")
|
||||
#pragma pop_macro("char")
|
||||
#pragma pop_macro("short")
|
||||
#pragma pop_macro("int")
|
||||
#pragma pop_macro("long")
|
||||
#pragma pop_macro("long")
|
||||
|
||||
#endif /* _SYS__INTSUP_H */
|
||||
|
Loading…
x
Reference in New Issue
Block a user