zig/lib/libcxx/include/__algorithm
Alex Rønne Petersen 156ab87500
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.
2025-04-04 06:08:09 +02:00
..
adjacent_find.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
all_of.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
any_of.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
binary_search.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
clamp.h libcxx: Update to LLVM 19. 2024-09-19 18:20:21 -07:00
comp.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
comp_ref_type.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
copy_backward.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
copy_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
copy_move_common.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
copy_n.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
count.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
count_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
equal.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
equal_range.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
fill.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
fill_n.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
find.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
find_end.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
find_first_of.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
find_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
find_if_not.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
find_segment_if.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
for_each.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
for_each_n.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
for_each_segment.h libcxx: update to LLVM 17 2023-09-19 09:37:31 -07:00
generate.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
generate_n.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
half_positive.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
in_found_result.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
in_fun_result.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
in_in_out_result.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
in_in_result.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
in_out_out_result.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
in_out_result.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
includes.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
inplace_merge.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
is_heap.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
is_heap_until.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
is_partitioned.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
is_permutation.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
is_sorted.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
is_sorted_until.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
iter_swap.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
iterator_operations.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
lexicographical_compare.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
lexicographical_compare_three_way.h libcxx: Update to LLVM 19. 2024-09-19 18:20:21 -07:00
lower_bound.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
make_heap.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
make_projected.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
max.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
max_element.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
merge.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
min.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
min_element.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
min_max_result.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
minmax.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
minmax_element.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
mismatch.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
move.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
move_backward.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
next_permutation.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
none_of.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
nth_element.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
partial_sort.h libcxx: Update to LLVM 19. 2024-09-19 18:20:21 -07:00
partial_sort_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
partition.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
partition_copy.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
partition_point.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
pop_heap.h libcxx: Update to LLVM 19. 2024-09-19 18:20:21 -07:00
prev_permutation.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
pstl.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
push_heap.h libcxx: Update to LLVM 19. 2024-09-19 18:20:21 -07:00
radix_sort.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_adjacent_find.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_all_of.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_any_of.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_binary_search.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_clamp.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_contains.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_contains_subrange.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_copy_backward.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_copy_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_copy_n.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_count.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_count_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_ends_with.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_equal.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_equal_range.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_fill.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_fill_n.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_find.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_find_end.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_find_first_of.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_find_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_find_if_not.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_find_last.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_fold.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_for_each.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_for_each_n.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_generate.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_generate_n.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_includes.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_inplace_merge.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_is_heap.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_is_heap_until.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_is_partitioned.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_is_permutation.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_is_sorted.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_is_sorted_until.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_iterator_concept.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_lexicographical_compare.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_lower_bound.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_make_heap.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_max.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_max_element.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_merge.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_min.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_min_element.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_minmax.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_minmax_element.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_mismatch.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_move.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_move_backward.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_next_permutation.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_none_of.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_nth_element.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_partial_sort.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_partial_sort_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_partition.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_partition_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_partition_point.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_pop_heap.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_prev_permutation.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_push_heap.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_remove.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_remove_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_remove_copy_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_remove_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_replace.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_replace_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_replace_copy_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_replace_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_reverse.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_reverse_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_rotate.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_rotate_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_sample.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_search.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_search_n.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_set_difference.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_set_intersection.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_set_symmetric_difference.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_set_union.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_shuffle.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_sort.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_sort_heap.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_stable_partition.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_stable_sort.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_starts_with.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_swap_ranges.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_transform.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_unique.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_unique_copy.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
ranges_upper_bound.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
remove.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
remove_copy.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
remove_copy_if.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
remove_if.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
replace.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
replace_copy.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
replace_copy_if.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
replace_if.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
reverse.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
reverse_copy.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
rotate.h libcxx: Update to LLVM 19. 2024-09-19 18:20:21 -07:00
rotate_copy.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
sample.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
search.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
search_n.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
set_difference.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
set_intersection.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
set_symmetric_difference.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
set_union.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
shift_left.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
shift_right.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
shuffle.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
sift_down.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
simd_utils.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
sort.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
sort_heap.h libcxx: Update to LLVM 19. 2024-09-19 18:20:21 -07:00
stable_partition.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
stable_sort.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
swap_ranges.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
three_way_comp_ref_type.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
transform.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
uniform_random_bit_generator_adaptor.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
unique.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
unique_copy.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
unwrap_iter.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00
unwrap_range.h libcxx: update to LLVM 18 2024-05-08 19:37:29 -07:00
upper_bound.h libcxx: Update to Clang 20. 2025-04-04 06:08:09 +02:00