diff options
Diffstat (limited to 'system/musl/powerpc-wchar_t.patch')
-rw-r--r-- | system/musl/powerpc-wchar_t.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/system/musl/powerpc-wchar_t.patch b/system/musl/powerpc-wchar_t.patch new file mode 100644 index 000000000..62b24a5f1 --- /dev/null +++ b/system/musl/powerpc-wchar_t.patch @@ -0,0 +1,26 @@ +From 0da9cc40f861293db7baba3854b44d73658b168d Mon Sep 17 00:00:00 2001 +From: q66 <daniel@octaforge.org> +Date: Wed, 22 May 2019 13:18:53 +0200 +Subject: [PATCH] properly deal with wchar_t definition on 32-bit powerpc + +Clang defines it to be int, gcc defines it to be long. The old +code results in conflicts when building things with clang. This +same change is already incorporated for i386 in musl upstream, +so apply it to powerpc as well. + +diff --git a/arch/powerpc/bits/alltypes.h.in b/arch/powerpc/bits/alltypes.h.in +--- a/arch/powerpc/bits/alltypes.h.in ++++ b/arch/powerpc/bits/alltypes.h.in +@@ -6,8 +6,12 @@ TYPEDEF __builtin_va_list va_list; + TYPEDEF __builtin_va_list __isoc_va_list; + + #ifndef __cplusplus ++#ifdef __WCHAR_TYPE__ ++TYPEDEF __WCHAR_TYPE__ wchar_t; ++#else + TYPEDEF long wchar_t; + #endif ++#endif + + TYPEDEF float float_t; + TYPEDEF double double_t; |