aboutsummaryrefslogtreecommitdiff
path: root/lib/libcxx/src/algorithm.cpp
diff options
context:
space:
mode:
authorAlex Rønne Petersen <alex@alexrp.com>2025-02-05 10:50:09 +0100
committerAlex Rønne Petersen <alex@alexrp.com>2025-04-04 06:08:09 +0200
commit156ab8750056c3ff440af0937806d8cdb2623816 (patch)
tree26956c58e4d169279885ab94d479f8b9f4285872 /lib/libcxx/src/algorithm.cpp
parent7ab01c9a42fa0262d67d9ff1a0ecde24fb7031e7 (diff)
downloadzig-156ab8750056c3ff440af0937806d8cdb2623816.tar.gz
zig-156ab8750056c3ff440af0937806d8cdb2623816.zip
libcxx: Update to Clang 20.
See: * https://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc/77319 * https://discourse.llvm.org/t/rfc-project-hand-in-hand-llvm-libc-libc-code-sharing/77701 We're dropping support for C++03 for Zig due to the first change; it would be insane to ship 1018 duplicate header files just for this outdated use case. As a result of the second change, I had to bring in a subset of the headers from llvm-libc since libc++ now depends on these. Hopefully we can continue to get away with not copying the entirety of llvm-libc.
Diffstat (limited to 'lib/libcxx/src/algorithm.cpp')
-rw-r--r--lib/libcxx/src/algorithm.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/libcxx/src/algorithm.cpp b/lib/libcxx/src/algorithm.cpp
index af9d60a8e2..d388fee5f9 100644
--- a/lib/libcxx/src/algorithm.cpp
+++ b/lib/libcxx/src/algorithm.cpp
@@ -21,13 +21,12 @@ void __sort(RandomAccessIterator first, RandomAccessIterator last, Comp comp) {
std::__introsort<_ClassicAlgPolicy,
ranges::less,
RandomAccessIterator,
- __use_branchless_sort<ranges::less, RandomAccessIterator>::value>(
- first, last, ranges::less{}, depth_limit);
+ __use_branchless_sort<ranges::less, RandomAccessIterator>>(first, last, ranges::less{}, depth_limit);
}
// clang-format off
template void __sort<__less<char>&, char*>(char*, char*, __less<char>&);
-#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
+#if _LIBCPP_HAS_WIDE_CHARACTERS
template void __sort<__less<wchar_t>&, wchar_t*>(wchar_t*, wchar_t*, __less<wchar_t>&);
#endif
template void __sort<__less<signed char>&, signed char*>(signed char*, signed char*, __less<signed char>&);