diff options
author | Neal H. Walfield <neal@gnu.org> | 2009-01-18 02:04:37 +0100 |
---|---|---|
committer | Neal H. Walfield <neal@gnu.org> | 2009-01-18 02:19:40 +0100 |
commit | 6c4e52ff849c34ac9ae2fd97bf7e5e56396f6138 (patch) | |
tree | 0d644bd89b9b839bdfc3c270a34f6e00e9f5771e /newlib/patches/08-new-newlib-libc-include-inttypes-h.patch | |
parent | 22ad815c903185d35a8a8b14355479d36c70239a (diff) |
Add usable <inttypes.h> files.
libc-parts/
2009-01-18 Neal H. Walfield <neal@gnu.org>
* inttypes.h: New file.
newlib/
2009-01-18 Neal H. Walfield <neal@gnu.org>
* patches/08-new-newlib-libc-include-inttypes-h.patch: New file.
* Makefile.am (patch_files): Add
08-new-newlib-libc-include-inttypes-h.patch.
Diffstat (limited to 'newlib/patches/08-new-newlib-libc-include-inttypes-h.patch')
-rw-r--r-- | newlib/patches/08-new-newlib-libc-include-inttypes-h.patch | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/newlib/patches/08-new-newlib-libc-include-inttypes-h.patch b/newlib/patches/08-new-newlib-libc-include-inttypes-h.patch new file mode 100644 index 0000000..9f3810c --- /dev/null +++ b/newlib/patches/08-new-newlib-libc-include-inttypes-h.patch @@ -0,0 +1,97 @@ +#! /bin/sh +patch -p1 -f $* < $0 +exit $? + +Bug fix. Wrong printf format specifier for standard types on systems +with 64-bit longs and long longs. + +diff -c newlib/newlib/libc/include/inttypes.h.orig newlib/newlib/libc/include/inttypes.h +--- newlib/newlib/libc/include/inttypes.h.orig 2009-01-17 21:26:49.000000000 +0100 ++++ newlib/newlib/libc/include/inttypes.h 2009-01-17 21:41:31.000000000 +0100 +@@ -163,12 +163,12 @@ + + + /* 64-bit types */ +-#if __have_longlong64 +-#define __PRI64(x) __STRINGIFY(ll##x) +-#define __SCN64(x) __STRINGIFY(ll##x) +-#elif __have_long64 ++#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) +@@ -217,12 +217,12 @@ + #endif + + /* max-bit types */ +-#if __have_longlong64 +-#define __PRIMAX(x) __STRINGIFY(ll##x) +-#define __SCNMAX(x) __STRINGIFY(ll##x) +-#elif __have_long64 ++#if __have_long64 + #define __PRIMAX(x) __STRINGIFY(l##x) + #define __SCNMAX(x) __STRINGIFY(l##x) ++#elif __have_longlong64 ++#define __PRIMAX(x) __STRINGIFY(ll##x) ++#define __SCNMAX(x) __STRINGIFY(ll##x) + #else + #define __PRIMAX(x) __STRINGIFY(x) + #define __SCNMAX(x) __STRINGIFY(x) +@@ -242,12 +242,12 @@ + #define SCNxMAX __SCNMAX(x) + + /* ptr types */ +-#if __have_longlong64 +-#define __PRIPTR(x) __STRINGIFY(ll##x) +-#define __SCNPTR(x) __STRINGIFY(ll##x) +-#elif __have_long64 ++#if __have_long64 + #define __PRIPTR(x) __STRINGIFY(l##x) + #define __SCNPTR(x) __STRINGIFY(l##x) ++#elif __have_longlong64 ++#define __PRIPTR(x) __STRINGIFY(ll##x) ++#define __SCNPTR(x) __STRINGIFY(ll##x) + #else + #define __PRIPTR(x) __STRINGIFY(x) + #define __SCNPTR(x) __STRINGIFY(x) + + +diff -c newlib/newlib/libc/include/stdint.h newlib/newlib/libc/include/stdint.h.orig +--- newlib/newlib/libc/include/stdint.h.orig 2006-08-16 23:39:43.000000000 +0200 ++++ newlib/newlib/libc/include/stdint.h 2009-01-17 22:20:26.000000000 +0100 +@@ -375,22 +375,22 @@ + #endif + + #if __int64_t_defined +-#if __have_longlong64 +-#define INT64_C(x) x##LL +-#define UINT64_C(x) x##ULL +-#else ++#if __have_long64 + #define INT64_C(x) x##L + #define UINT64_C(x) x##UL ++#else ++#define INT64_C(x) x##LL ++#define UINT64_C(x) x##ULL + #endif + #endif + + /** Macros for greatest-width integer constant expression */ +-#if __have_longlong64 +-#define INTMAX_C(x) x##LL +-#define UINTMAX_C(x) x##ULL +-#else ++#if __have_long64 + #define INTMAX_C(x) x##L + #define UINTMAX_C(x) x##UL ++#else ++#define INTMAX_C(x) x##LL ++#define UINTMAX_C(x) x##ULL + #endif + + |