summaryrefslogtreecommitdiff
path: root/repo/devel/llvm/libcxx-musl.patch
diff options
context:
space:
mode:
authordavidovski <david@davidovski.xyz>2022-05-18 23:40:38 +0100
committerdavidovski <david@davidovski.xyz>2022-05-18 23:40:38 +0100
commit0b977787374349328a21af0deade30d534cf3978 (patch)
tree3c2be28ef9a6f74a36f21cd48a34cb06b3080960 /repo/devel/llvm/libcxx-musl.patch
parentdccab9b94dcfc5e040647210ba22b9cc4bddc742 (diff)
fixed gcc loader/linker errors
Diffstat (limited to 'repo/devel/llvm/libcxx-musl.patch')
-rw-r--r--repo/devel/llvm/libcxx-musl.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/repo/devel/llvm/libcxx-musl.patch b/repo/devel/llvm/libcxx-musl.patch
new file mode 100644
index 0000000..bbd31ff
--- /dev/null
+++ b/repo/devel/llvm/libcxx-musl.patch
@@ -0,0 +1,26 @@
+--- a/libcxx/include/locale
++++ b/libcxx/include/locale
+@@ -742,7 +742,11 @@ __num_get_signed_integral(const char* __a, const char* __a_end,
+ typename remove_reference<decltype(errno)>::type __save_errno = errno;
+ errno = 0;
+ char *__p2;
++#if defined(__linux__) && !defined(__GLIBC__)
++ long long __ll = strtoll(__a, &__p2, __base);
++#else
+ long long __ll = strtoll_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE);
++#endif
+ typename remove_reference<decltype(errno)>::type __current_errno = errno;
+ if (__current_errno == 0)
+ errno = __save_errno;
+@@ -782,7 +786,11 @@ __num_get_unsigned_integral(const char* __a, const char* __a_end,
+ typename remove_reference<decltype(errno)>::type __save_errno = errno;
+ errno = 0;
+ char *__p2;
++#if defined(__linux__) && !defined(__GLIBC__)
++ unsigned long long __ll = strtoull(__a, &__p2, __base);
++#else
+ unsigned long long __ll = strtoull_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE);
++#endif
+ typename remove_reference<decltype(errno)>::type __current_errno = errno;
+ if (__current_errno == 0)
+ errno = __save_errno;