aboutsummaryrefslogtreecommitdiffstats
path: root/unmaintained/libc++/check-for-musl-libcs-max_align_t.patch
blob: 467306949a605d71cd1f55dd0aef41e4116ceda6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
libc++'s stddef.h uses non-standard macros to detect if max_align_t exists,
which break on musl. We reluctantly add musl's non-public macro the list
for now, but this should be fixed more fundamentally.

diff --git a/libcxx/include/stddef.h b/libcxx/include/stddef.h
index 8841bbe..faf8552 100644
--- a/libcxx/include/stddef.h
+++ b/libcxx/include/stddef.h
@@ -53,7 +53,8 @@ using std::nullptr_t;
 }
 
 // Re-use the compiler's <stddef.h> max_align_t where possible.
-#if !defined(__CLANG_MAX_ALIGN_T_DEFINED) && !defined(_GCC_MAX_ALIGN_T)
+#if !defined(__CLANG_MAX_ALIGN_T_DEFINED) && !defined(_GCC_MAX_ALIGN_T) && \
+    !defined(__DEFINED_max_align_t)
 typedef long double max_align_t;
 #endif