[libcxx-commits] [libcxx] [libc++] Remove redundant `_LIBCPP_HIDE_FROM_ABI` from detail headers a-c (PR #201722)
via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Jun 8 02:14:53 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libcxx
Author: Nikolas Klauser (philnik777)
<details>
<summary>Changes</summary>
This is the first bulk-removal patch of `_LIBCPP_HIDE_FROM_ABI`. While
this is something we could do over time, actively removing the redundant
annotations significanly improves readability, and QoI.
This happens in a few patches to keep the size somewhat manageable.
---
Patch is 793.14 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/201722.diff
284 Files Affected:
- (modified) libcxx/include/__algorithm/adjacent_find.h (+3-3)
- (modified) libcxx/include/__algorithm/all_of.h (+2-3)
- (modified) libcxx/include/__algorithm/any_of.h (+2-3)
- (modified) libcxx/include/__algorithm/binary_search.h (+2-2)
- (modified) libcxx/include/__algorithm/clamp.h (+2-2)
- (modified) libcxx/include/__algorithm/comp.h (+2-2)
- (modified) libcxx/include/__algorithm/comp_ref_type.h (+7-7)
- (modified) libcxx/include/__algorithm/copy.h (+9-10)
- (modified) libcxx/include/__algorithm/copy_backward.h (+10-10)
- (modified) libcxx/include/__algorithm/copy_if.h (+2-2)
- (modified) libcxx/include/__algorithm/copy_move_common.h (+4-4)
- (modified) libcxx/include/__algorithm/copy_n.h (+4-6)
- (modified) libcxx/include/__algorithm/count.h (+4-4)
- (modified) libcxx/include/__algorithm/count_if.h (+2-3)
- (modified) libcxx/include/__algorithm/equal.h (+10-10)
- (modified) libcxx/include/__algorithm/equal_range.h (+3-3)
- (modified) libcxx/include/__algorithm/fill.h (+3-4)
- (modified) libcxx/include/__algorithm/fill_n.h (+3-5)
- (modified) libcxx/include/__algorithm/find.h (+9-12)
- (modified) libcxx/include/__algorithm/find_end.h (+6-6)
- (modified) libcxx/include/__algorithm/find_first_of.h (+3-3)
- (modified) libcxx/include/__algorithm/find_if.h (+2-3)
- (modified) libcxx/include/__algorithm/find_if_not.h (+2-3)
- (modified) libcxx/include/__algorithm/find_segment_if.h (+1-1)
- (modified) libcxx/include/__algorithm/for_each.h (+2-3)
- (modified) libcxx/include/__algorithm/for_each_n.h (+2-3)
- (modified) libcxx/include/__algorithm/for_each_n_segment.h (+1-1)
- (modified) libcxx/include/__algorithm/for_each_segment.h (+2-2)
- (modified) libcxx/include/__algorithm/generate.h (+1-1)
- (modified) libcxx/include/__algorithm/generate_n.h (+2-2)
- (modified) libcxx/include/__algorithm/half_positive.h (+2-2)
- (modified) libcxx/include/__algorithm/in_found_result.h (+2-2)
- (modified) libcxx/include/__algorithm/in_fun_result.h (+2-2)
- (modified) libcxx/include/__algorithm/in_in_out_result.h (+2-2)
- (modified) libcxx/include/__algorithm/in_in_result.h (+2-2)
- (modified) libcxx/include/__algorithm/in_out_out_result.h (+2-2)
- (modified) libcxx/include/__algorithm/in_out_result.h (+2-2)
- (modified) libcxx/include/__algorithm/includes.h (+3-3)
- (modified) libcxx/include/__algorithm/inplace_merge.h (+9-9)
- (modified) libcxx/include/__algorithm/is_heap.h (+2-2)
- (modified) libcxx/include/__algorithm/is_heap_until.h (+3-3)
- (modified) libcxx/include/__algorithm/is_partitioned.h (+1-1)
- (modified) libcxx/include/__algorithm/is_permutation.h (+9-9)
- (modified) libcxx/include/__algorithm/is_sorted.h (+2-2)
- (modified) libcxx/include/__algorithm/is_sorted_until.h (+3-3)
- (modified) libcxx/include/__algorithm/iter_swap.h (+1-1)
- (modified) libcxx/include/__algorithm/iterator_operations.h (+16-18)
- (modified) libcxx/include/__algorithm/lexicographical_compare.h (+4-4)
- (modified) libcxx/include/__algorithm/lexicographical_compare_three_way.h (+4-4)
- (modified) libcxx/include/__algorithm/lower_bound.h (+5-5)
- (modified) libcxx/include/__algorithm/make_heap.h (+3-4)
- (modified) libcxx/include/__algorithm/make_projected.h (+6-7)
- (modified) libcxx/include/__algorithm/max.h (+4-5)
- (modified) libcxx/include/__algorithm/max_element.h (+3-3)
- (modified) libcxx/include/__algorithm/merge.h (+3-3)
- (modified) libcxx/include/__algorithm/min.h (+4-5)
- (modified) libcxx/include/__algorithm/min_element.h (+4-5)
- (modified) libcxx/include/__algorithm/min_max_result.h (+2-2)
- (modified) libcxx/include/__algorithm/minmax.h (+5-6)
- (modified) libcxx/include/__algorithm/minmax_element.h (+5-6)
- (modified) libcxx/include/__algorithm/mismatch.h (+12-12)
- (modified) libcxx/include/__algorithm/move.h (+8-8)
- (modified) libcxx/include/__algorithm/move_backward.h (+8-8)
- (modified) libcxx/include/__algorithm/next_permutation.h (+3-3)
- (modified) libcxx/include/__algorithm/none_of.h (+1-1)
- (modified) libcxx/include/__algorithm/nth_element.h (+5-5)
- (modified) libcxx/include/__algorithm/out_value_result.h (+2-2)
- (modified) libcxx/include/__algorithm/partial_sort.h (+4-4)
- (modified) libcxx/include/__algorithm/partial_sort_copy.h (+3-4)
- (modified) libcxx/include/__algorithm/partition.h (+4-4)
- (modified) libcxx/include/__algorithm/partition_copy.h (+1-1)
- (modified) libcxx/include/__algorithm/partition_point.h (+1-1)
- (modified) libcxx/include/__algorithm/pop_heap.h (+3-4)
- (modified) libcxx/include/__algorithm/prev_permutation.h (+3-3)
- (modified) libcxx/include/__algorithm/pstl.h (+67-80)
- (modified) libcxx/include/__algorithm/push_heap.h (+4-5)
- (modified) libcxx/include/__algorithm/radix_sort.h (+19-19)
- (modified) libcxx/include/__algorithm/ranges_adjacent_find.h (+2-3)
- (modified) libcxx/include/__algorithm/ranges_all_of.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_any_of.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_binary_search.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_clamp.h (+1-1)
- (modified) libcxx/include/__algorithm/ranges_contains.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_contains_subrange.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_copy.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_copy_backward.h (+2-3)
- (modified) libcxx/include/__algorithm/ranges_copy_if.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_copy_n.h (+1-2)
- (modified) libcxx/include/__algorithm/ranges_count.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_count_if.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_ends_with.h (+5-5)
- (modified) libcxx/include/__algorithm/ranges_equal.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_equal_range.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_fill.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_fill_n.h (+1-2)
- (modified) libcxx/include/__algorithm/ranges_find.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_find_end.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_find_first_of.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_find_if.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_find_if_not.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_find_last.h (+10-11)
- (modified) libcxx/include/__algorithm/ranges_fold.h (+14-15)
- (modified) libcxx/include/__algorithm/ranges_for_each.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_for_each_n.h (+1-1)
- (modified) libcxx/include/__algorithm/ranges_generate.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_generate_n.h (+1-2)
- (modified) libcxx/include/__algorithm/ranges_includes.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_inplace_merge.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_is_heap.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_is_heap_until.h (+3-5)
- (modified) libcxx/include/__algorithm/ranges_is_partitioned.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_is_permutation.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_is_sorted.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_is_sorted_until.h (+3-5)
- (modified) libcxx/include/__algorithm/ranges_lexicographical_compare.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_lower_bound.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_make_heap.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_max.h (+3-5)
- (modified) libcxx/include/__algorithm/ranges_max_element.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_merge.h (+3-5)
- (modified) libcxx/include/__algorithm/ranges_min.h (+3-5)
- (modified) libcxx/include/__algorithm/ranges_min_element.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_minmax.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_minmax_element.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_mismatch.h (+3-4)
- (modified) libcxx/include/__algorithm/ranges_move.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_move_backward.h (+2-3)
- (modified) libcxx/include/__algorithm/ranges_next_permutation.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_none_of.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_nth_element.h (+3-5)
- (modified) libcxx/include/__algorithm/ranges_partial_sort.h (+3-4)
- (modified) libcxx/include/__algorithm/ranges_partial_sort_copy.h (+2-3)
- (modified) libcxx/include/__algorithm/ranges_partition.h (+3-5)
- (modified) libcxx/include/__algorithm/ranges_partition_copy.h (+5-5)
- (modified) libcxx/include/__algorithm/ranges_partition_point.h (+3-5)
- (modified) libcxx/include/__algorithm/ranges_pop_heap.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_prev_permutation.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_push_heap.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_remove.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_remove_copy.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_remove_copy_if.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_remove_if.h (+3-4)
- (modified) libcxx/include/__algorithm/ranges_replace.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_replace_copy.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_replace_copy_if.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_replace_if.h (+3-4)
- (modified) libcxx/include/__algorithm/ranges_reverse.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_reverse_copy.h (+2-3)
- (modified) libcxx/include/__algorithm/ranges_rotate.h (+3-4)
- (modified) libcxx/include/__algorithm/ranges_rotate_copy.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_sample.h (+2-3)
- (modified) libcxx/include/__algorithm/ranges_search.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_search_n.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_set_difference.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_set_intersection.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_set_symmetric_difference.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_set_union.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_shift_left.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_shift_right.h (+2-4)
- (modified) libcxx/include/__algorithm/ranges_shuffle.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_sort.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_sort_heap.h (+3-6)
- (modified) libcxx/include/__algorithm/ranges_stable_partition.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_stable_sort.h (+3-3)
- (modified) libcxx/include/__algorithm/ranges_starts_with.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_swap_ranges.h (+2-3)
- (modified) libcxx/include/__algorithm/ranges_transform.h (+6-8)
- (modified) libcxx/include/__algorithm/ranges_unique.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_unique_copy.h (+2-2)
- (modified) libcxx/include/__algorithm/ranges_upper_bound.h (+2-2)
- (modified) libcxx/include/__algorithm/remove.h (+1-1)
- (modified) libcxx/include/__algorithm/remove_copy.h (+1-1)
- (modified) libcxx/include/__algorithm/remove_copy_if.h (+1-1)
- (modified) libcxx/include/__algorithm/remove_if.h (+1-1)
- (modified) libcxx/include/__algorithm/replace.h (+1-1)
- (modified) libcxx/include/__algorithm/replace_copy.h (+1-1)
- (modified) libcxx/include/__algorithm/replace_copy_if.h (+1-1)
- (modified) libcxx/include/__algorithm/replace_if.h (+1-1)
- (modified) libcxx/include/__algorithm/reverse.h (+4-5)
- (modified) libcxx/include/__algorithm/reverse_copy.h (+1-1)
- (modified) libcxx/include/__algorithm/rotate.h (+10-12)
- (modified) libcxx/include/__algorithm/rotate_copy.h (+1-1)
- (modified) libcxx/include/__algorithm/sample.h (+21-21)
- (modified) libcxx/include/__algorithm/search.h (+8-8)
- (modified) libcxx/include/__algorithm/search_n.h (+7-7)
- (modified) libcxx/include/__algorithm/set_difference.h (+3-5)
- (modified) libcxx/include/__algorithm/set_intersection.h (+10-13)
- (modified) libcxx/include/__algorithm/set_symmetric_difference.h (+4-4)
- (modified) libcxx/include/__algorithm/set_union.h (+4-5)
- (modified) libcxx/include/__algorithm/shift_left.h (+2-2)
- (modified) libcxx/include/__algorithm/shift_right.h (+2-2)
- (modified) libcxx/include/__algorithm/sift_down.h (+2-2)
- (modified) libcxx/include/__algorithm/simd_utils.h (+9-10)
- (modified) libcxx/include/__algorithm/sort.h (+31-34)
- (modified) libcxx/include/__algorithm/sort_heap.h (+3-4)
- (modified) libcxx/include/__algorithm/stable_partition.h (+5-5)
- (modified) libcxx/include/__algorithm/stable_sort.h (+8-9)
- (modified) libcxx/include/__algorithm/swap_ranges.h (+3-5)
- (modified) libcxx/include/__algorithm/three_way_comp_ref_type.h (+4-4)
- (modified) libcxx/include/__algorithm/transform.h (+2-2)
- (modified) libcxx/include/__algorithm/uniform_random_bit_generator_adaptor.h (+4-4)
- (modified) libcxx/include/__algorithm/unique.h (+3-3)
- (modified) libcxx/include/__algorithm/unique_copy.h (+5-5)
- (modified) libcxx/include/__algorithm/unwrap_iter.h (+6-8)
- (modified) libcxx/include/__algorithm/unwrap_range.h (+4-4)
- (modified) libcxx/include/__algorithm/upper_bound.h (+3-3)
- (modified) libcxx/include/__atomic/atomic.h (+159-186)
- (modified) libcxx/include/__atomic/atomic_flag.h (+38-54)
- (modified) libcxx/include/__atomic/atomic_ref.h (+56-62)
- (modified) libcxx/include/__atomic/atomic_sync.h (+14-14)
- (modified) libcxx/include/__atomic/atomic_sync_timed.h (+3-3)
- (modified) libcxx/include/__atomic/atomic_waitable_traits.h (+1-1)
- (modified) libcxx/include/__atomic/fence.h (+2-2)
- (modified) libcxx/include/__atomic/floating_point_helper.h (+2-2)
- (modified) libcxx/include/__atomic/kill_dependency.h (+1-1)
- (modified) libcxx/include/__atomic/support.h (+2-2)
- (modified) libcxx/include/__atomic/support/c11.h (+35-55)
- (modified) libcxx/include/__atomic/support/gcc.h (+29-46)
- (modified) libcxx/include/__atomic/to_gcc_order.h (+2-2)
- (modified) libcxx/include/__bit/bit_cast.h (+2-2)
- (modified) libcxx/include/__bit/bit_ceil.h (+2-2)
- (modified) libcxx/include/__bit/bit_floor.h (+1-1)
- (modified) libcxx/include/__bit/bit_log2.h (+1-1)
- (modified) libcxx/include/__bit/bit_width.h (+1-1)
- (modified) libcxx/include/__bit/blsr.h (+3-7)
- (modified) libcxx/include/__bit/byteswap.h (+1-1)
- (modified) libcxx/include/__bit/countl.h (+3-3)
- (modified) libcxx/include/__bit/countr.h (+3-3)
- (modified) libcxx/include/__bit/has_single_bit.h (+1-1)
- (modified) libcxx/include/__bit/invert_if.h (+1-1)
- (modified) libcxx/include/__bit/popcount.h (+2-2)
- (modified) libcxx/include/__bit/rotate.h (+2-2)
- (modified) libcxx/include/__charconv/chars_format.h (+7-9)
- (modified) libcxx/include/__charconv/from_chars_floating_point.h (+3-4)
- (modified) libcxx/include/__charconv/from_chars_integral.h (+11-11)
- (modified) libcxx/include/__charconv/from_chars_result.h (+2-2)
- (modified) libcxx/include/__charconv/to_chars_base_10.h (+16-19)
- (modified) libcxx/include/__charconv/to_chars_integral.h (+25-32)
- (modified) libcxx/include/__charconv/to_chars_result.h (+3-3)
- (modified) libcxx/include/__charconv/traits.h (+15-29)
- (modified) libcxx/include/__chrono/convert_to_timespec.h (+1-1)
- (modified) libcxx/include/__chrono/convert_to_tm.h (+6-6)
- (modified) libcxx/include/__chrono/day.h (+18-25)
- (modified) libcxx/include/__chrono/duration.h (+62-78)
- (modified) libcxx/include/__chrono/exception.h (+10-10)
- (modified) libcxx/include/__chrono/formatter.h (+47-51)
- (modified) libcxx/include/__chrono/gps_clock.h (+3-4)
- (modified) libcxx/include/__chrono/hh_mm_ss.h (+16-20)
- (modified) libcxx/include/__chrono/leap_second.h (+18-21)
- (modified) libcxx/include/__chrono/literals.h (+2-2)
- (modified) libcxx/include/__chrono/month.h (+18-21)
- (modified) libcxx/include/__chrono/month_weekday.h (+20-36)
- (modified) libcxx/include/__chrono/monthday.h (+23-29)
- (modified) libcxx/include/__chrono/ostream.h (+28-52)
- (modified) libcxx/include/__chrono/parser_std_format_spec.h (+19-24)
- (modified) libcxx/include/__chrono/statically_widen.h (+2-2)
- (modified) libcxx/include/__chrono/tai_clock.h (+3-4)
- (modified) libcxx/include/__chrono/time_point.h (+35-47)
- (modified) libcxx/include/__chrono/time_zone_link.h (+7-7)
- (modified) libcxx/include/__chrono/utc_clock.h (+5-8)
- (modified) libcxx/include/__chrono/weekday.h (+37-50)
- (modified) libcxx/include/__chrono/year.h (+24-30)
- (modified) libcxx/include/__chrono/year_month.h (+24-33)
- (modified) libcxx/include/__chrono/year_month_day.h (+72-104)
- (modified) libcxx/include/__chrono/year_month_weekday.h (+71-97)
- (modified) libcxx/include/__chrono/zoned_time.h (+33-39)
- (modified) libcxx/include/__compare/common_comparison_category.h (+3-4)
- (modified) libcxx/include/__compare/compare_partial_order_fallback.h (+8-7)
- (modified) libcxx/include/__compare/compare_strong_order_fallback.h (+7-6)
- (modified) libcxx/include/__compare/compare_three_way.h (+1-1)
- (modified) libcxx/include/__compare/compare_three_way_result.h (+2-2)
- (modified) libcxx/include/__compare/compare_weak_order_fallback.h (+3-3)
- (modified) libcxx/include/__compare/is_eq.h (+6-6)
- (modified) libcxx/include/__compare/ordering.h (+43-89)
- (modified) libcxx/include/__compare/partial_order.h (+4-4)
- (modified) libcxx/include/__compare/strong_order.h (+4-4)
- (modified) libcxx/include/__compare/synth_three_way.h (+1-1)
- (modified) libcxx/include/__compare/weak_order.h (+5-5)
- (modified) libcxx/include/__concepts/swappable.h (+3-4)
- (modified) libcxx/include/__condition_variable/condition_variable.h (+11-15)
- (modified) libcxx/include/__coroutine/coroutine_handle.h (+26-29)
- (modified) libcxx/include/__coroutine/noop_coroutine_handle.h (+12-16)
- (modified) libcxx/include/__coroutine/trivial_awaitables.h (+6-6)
- (modified) libcxx/include/__cstddef/byte.h (+12-18)
``````````diff
diff --git a/libcxx/include/__algorithm/adjacent_find.h b/libcxx/include/__algorithm/adjacent_find.h
index 2508250d8796c..d5f343402c909 100644
--- a/libcxx/include/__algorithm/adjacent_find.h
+++ b/libcxx/include/__algorithm/adjacent_find.h
@@ -26,7 +26,7 @@ _LIBCPP_PUSH_MACROS
_LIBCPP_BEGIN_NAMESPACE_STD
template <class _Iter, class _Sent, class _Pred, class _Proj>
-[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _Iter
+[[__nodiscard__]] _LIBCPP_CONSTEXPR_SINCE_CXX20 _Iter
__adjacent_find(_Iter __first, _Sent __last, _Pred& __pred, _Proj& __proj) {
if (__first == __last)
return __first;
@@ -41,14 +41,14 @@ __adjacent_find(_Iter __first, _Sent __last, _Pred& __pred, _Proj& __proj) {
}
template <class _ForwardIterator, class _BinaryPredicate>
-[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _ForwardIterator
+[[__nodiscard__]] inline _LIBCPP_CONSTEXPR_SINCE_CXX20 _ForwardIterator
adjacent_find(_ForwardIterator __first, _ForwardIterator __last, _BinaryPredicate __pred) {
__identity __proj;
return std::__adjacent_find(std::move(__first), std::move(__last), __pred, __proj);
}
template <class _ForwardIterator>
-[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _ForwardIterator
+[[__nodiscard__]] inline _LIBCPP_CONSTEXPR_SINCE_CXX20 _ForwardIterator
adjacent_find(_ForwardIterator __first, _ForwardIterator __last) {
return std::adjacent_find(std::move(__first), std::move(__last), __equal_to());
}
diff --git a/libcxx/include/__algorithm/all_of.h b/libcxx/include/__algorithm/all_of.h
index 9bdb20a0d7b2f..c96077f1afb2e 100644
--- a/libcxx/include/__algorithm/all_of.h
+++ b/libcxx/include/__algorithm/all_of.h
@@ -27,15 +27,14 @@ _LIBCPP_PUSH_MACROS
_LIBCPP_BEGIN_NAMESPACE_STD
template <class _Iter, class _Sent, class _Proj, class _Pred>
-_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 bool
-__all_of(_Iter __first, _Sent __last, _Pred& __pred, _Proj& __proj) {
+_LIBCPP_CONSTEXPR_SINCE_CXX14 bool __all_of(_Iter __first, _Sent __last, _Pred& __pred, _Proj& __proj) {
using _Ref = decltype(std::__invoke(__proj, *__first));
auto __negated_pred = [&__pred](_Ref __arg) -> bool { return !std::__invoke(__pred, std::forward<_Ref>(__arg)); };
return !std::__any_of(std::move(__first), std::move(__last), __negated_pred, __proj);
}
template <class _InputIterator, class _Predicate>
-[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
+[[__nodiscard__]] inline _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
all_of(_InputIterator __first, _InputIterator __last, _Predicate __pred) {
__identity __proj;
return std::__all_of(__first, __last, __pred, __proj);
diff --git a/libcxx/include/__algorithm/any_of.h b/libcxx/include/__algorithm/any_of.h
index 4b6eb94517286..47692e4cf6ab5 100644
--- a/libcxx/include/__algorithm/any_of.h
+++ b/libcxx/include/__algorithm/any_of.h
@@ -21,8 +21,7 @@
_LIBCPP_BEGIN_NAMESPACE_STD
template <class _Iter, class _Sent, class _Proj, class _Pred>
-_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 bool
-__any_of(_Iter __first, _Sent __last, _Pred& __pred, _Proj& __proj) {
+_LIBCPP_CONSTEXPR_SINCE_CXX14 bool __any_of(_Iter __first, _Sent __last, _Pred& __pred, _Proj& __proj) {
for (; __first != __last; ++__first) {
if (std::__invoke(__pred, std::__invoke(__proj, *__first)))
return true;
@@ -31,7 +30,7 @@ __any_of(_Iter __first, _Sent __last, _Pred& __pred, _Proj& __proj) {
}
template <class _InputIterator, class _Predicate>
-[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
+[[__nodiscard__]] inline _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
any_of(_InputIterator __first, _InputIterator __last, _Predicate __pred) {
__identity __proj;
return std::__any_of(__first, __last, __pred, __proj);
diff --git a/libcxx/include/__algorithm/binary_search.h b/libcxx/include/__algorithm/binary_search.h
index 4940059f285cd..1c11a21cc30ee 100644
--- a/libcxx/include/__algorithm/binary_search.h
+++ b/libcxx/include/__algorithm/binary_search.h
@@ -21,14 +21,14 @@
_LIBCPP_BEGIN_NAMESPACE_STD
template <class _ForwardIterator, class _Tp, class _Compare>
-[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
+[[__nodiscard__]] inline _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
binary_search(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __value, _Compare __comp) {
__first = std::lower_bound<_ForwardIterator, _Tp, __comp_ref_type<_Compare> >(__first, __last, __value, __comp);
return __first != __last && !__comp(__value, *__first);
}
template <class _ForwardIterator, class _Tp>
-[[__nodiscard__]] inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
+[[__nodiscard__]] inline _LIBCPP_CONSTEXPR_SINCE_CXX20 bool
binary_search(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __value) {
return std::binary_search(__first, __last, __value, __less<>());
}
diff --git a/libcxx/include/__algorithm/clamp.h b/libcxx/include/__algorithm/clamp.h
index 1a5a3d0744be9..a2b94232d1307 100644
--- a/libcxx/include/__algorithm/clamp.h
+++ b/libcxx/include/__algorithm/clamp.h
@@ -21,7 +21,7 @@ _LIBCPP_BEGIN_NAMESPACE_STD
#if _LIBCPP_STD_VER >= 17
template <class _Tp, class _Compare>
-[[nodiscard]] inline _LIBCPP_HIDE_FROM_ABI constexpr const _Tp&
+[[nodiscard]] inline constexpr const _Tp&
clamp(_LIBCPP_LIFETIMEBOUND const _Tp& __v,
_LIBCPP_LIFETIMEBOUND const _Tp& __lo,
_LIBCPP_LIFETIMEBOUND const _Tp& __hi,
@@ -31,7 +31,7 @@ clamp(_LIBCPP_LIFETIMEBOUND const _Tp& __v,
}
template <class _Tp>
-[[nodiscard]] inline _LIBCPP_HIDE_FROM_ABI constexpr const _Tp&
+[[nodiscard]] inline constexpr const _Tp&
clamp(_LIBCPP_LIFETIMEBOUND const _Tp& __v,
_LIBCPP_LIFETIMEBOUND const _Tp& __lo,
_LIBCPP_LIFETIMEBOUND const _Tp& __hi) {
diff --git a/libcxx/include/__algorithm/comp.h b/libcxx/include/__algorithm/comp.h
index 38e2fb9f5e744..b8f2e367d231b 100644
--- a/libcxx/include/__algorithm/comp.h
+++ b/libcxx/include/__algorithm/comp.h
@@ -22,7 +22,7 @@ _LIBCPP_BEGIN_NAMESPACE_STD
struct __equal_to {
template <class _T1, class _T2>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 bool operator()(const _T1& __x, const _T2& __y) const {
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 bool operator()(const _T1& __x, const _T2& __y) const {
return __x == __y;
}
};
@@ -38,7 +38,7 @@ struct __less {};
template <>
struct __less<void, void> {
template <class _Tp, class _Up>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 bool operator()(const _Tp& __lhs, const _Up& __rhs) const {
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 bool operator()(const _Tp& __lhs, const _Up& __rhs) const {
return __lhs < __rhs;
}
};
diff --git a/libcxx/include/__algorithm/comp_ref_type.h b/libcxx/include/__algorithm/comp_ref_type.h
index 6a9d5cef26719..1fd1922aeabd5 100644
--- a/libcxx/include/__algorithm/comp_ref_type.h
+++ b/libcxx/include/__algorithm/comp_ref_type.h
@@ -22,10 +22,10 @@ _LIBCPP_BEGIN_NAMESPACE_STD
template <class _Compare>
struct __debug_less {
_Compare& __comp_;
- _LIBCPP_CONSTEXPR_SINCE_CXX14 _LIBCPP_HIDE_FROM_ABI __debug_less(_Compare& __c) : __comp_(__c) {}
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __debug_less(_Compare& __c) : __comp_(__c) {}
template <class _Tp, class _Up>
- _LIBCPP_CONSTEXPR_SINCE_CXX14 _LIBCPP_HIDE_FROM_ABI bool operator()(const _Tp& __x, const _Up& __y) {
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 bool operator()(const _Tp& __x, const _Up& __y) {
bool __r = __comp_(__x, __y);
if (__r)
__do_compare_assert(0, __y, __x);
@@ -33,7 +33,7 @@ struct __debug_less {
}
template <class _Tp, class _Up>
- _LIBCPP_CONSTEXPR_SINCE_CXX14 _LIBCPP_HIDE_FROM_ABI bool operator()(_Tp& __x, _Up& __y) {
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 bool operator()(_Tp& __x, _Up& __y) {
bool __r = __comp_(__x, __y);
if (__r)
__do_compare_assert(0, __y, __x);
@@ -41,16 +41,16 @@ struct __debug_less {
}
template <class _LHS, class _RHS>
- _LIBCPP_CONSTEXPR_SINCE_CXX14 inline
- _LIBCPP_HIDE_FROM_ABI decltype((void)std::declval<_Compare&>()(std::declval<_LHS&>(), std::declval<_RHS&>()))
- __do_compare_assert(int, _LHS& __l, _RHS& __r) {
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 inline decltype((void)std::declval<_Compare&>()(
+ std::declval<_LHS&>(), std::declval<_RHS&>()))
+ __do_compare_assert(int, _LHS& __l, _RHS& __r) {
_LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(!__comp_(__l, __r), "Comparator does not induce a strict weak ordering");
(void)__l;
(void)__r;
}
template <class _LHS, class _RHS>
- _LIBCPP_CONSTEXPR_SINCE_CXX14 inline _LIBCPP_HIDE_FROM_ABI void __do_compare_assert(long, _LHS&, _RHS&) {}
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 inline void __do_compare_assert(long, _LHS&, _RHS&) {}
};
// Pass the comparator by lvalue reference. Or in the debug mode, using a debugging wrapper that stores a reference.
diff --git a/libcxx/include/__algorithm/copy.h b/libcxx/include/__algorithm/copy.h
index 711cb644462cb..699fd9da08e4b 100644
--- a/libcxx/include/__algorithm/copy.h
+++ b/libcxx/include/__algorithm/copy.h
@@ -31,12 +31,11 @@ _LIBCPP_PUSH_MACROS
_LIBCPP_BEGIN_NAMESPACE_STD
template <class _InputIterator, class _OutputIterator>
-inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _OutputIterator
+inline _LIBCPP_CONSTEXPR_SINCE_CXX20 _OutputIterator
copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result);
template <class _InIter, class _Sent, class _OutIter>
-inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
- __copy(_InIter, _Sent, _OutIter);
+inline _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter> __copy(_InIter, _Sent, _OutIter);
struct __copy_impl {
template <class _InIter,
@@ -46,7 +45,7 @@ struct __copy_impl {
__iterator_pair<_InIter, _Sent>,
__single_iterator<_OutIter> >::__has_algorithm,
int> = 0>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
operator()(_InIter __first, _Sent __last, _OutIter __result) const {
while (__first != __last) {
*__result = *__first;
@@ -64,14 +63,14 @@ struct __copy_impl {
__iterator_pair<_InIter, _Sent>,
__single_iterator<_OutIter> >::__has_algorithm,
int> = 0>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 static __in_out_result<_InIter, _OutIter>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 static __in_out_result<_InIter, _OutIter>
operator()(_InIter __first, _Sent __last, _OutIter __result) {
return __specialized_algorithm<_Algorithm::__copy, __iterator_pair<_InIter, _Sent>, __single_iterator<_OutIter> >()(
std::move(__first), std::move(__last), std::move(__result));
}
template <class _InIter, class _OutIter, __enable_if_t<__is_segmented_iterator_v<_InIter>, int> = 0>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
operator()(_InIter __first, _InIter __last, _OutIter __result) const {
using __local_iterator = typename __segmented_iterator_traits<_InIter>::__local_iterator;
std::__for_each_segment(__first, __last, [&__result](__local_iterator __lfirst, __local_iterator __llast) {
@@ -85,7 +84,7 @@ struct __copy_impl {
__enable_if_t<__has_random_access_iterator_category<_InIter>::value &&
!__is_segmented_iterator_v<_InIter> && __is_segmented_iterator_v<_OutIter>,
int> = 0>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
operator()(_InIter __first, _InIter __last, _OutIter __result) const {
using _Traits = __segmented_iterator_traits<_OutIter>;
using _DiffT =
@@ -111,20 +110,20 @@ struct __copy_impl {
// At this point, the iterators have been unwrapped so any `contiguous_iterator` has been unwrapped to a pointer.
template <class _In, class _Out, __enable_if_t<__can_lower_copy_assignment_to_memmove<_In, _Out>::value, int> = 0>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_In*, _Out*>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_In*, _Out*>
operator()(_In* __first, _In* __last, _Out* __result) const {
return std::__copy_trivial_impl(__first, __last, __result);
}
};
template <class _InIter, class _Sent, class _OutIter>
-__in_out_result<_InIter, _OutIter> inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14
+__in_out_result<_InIter, _OutIter> inline _LIBCPP_CONSTEXPR_SINCE_CXX14
__copy(_InIter __first, _Sent __last, _OutIter __result) {
return std::__copy_move_unwrap_iters<__copy_impl>(std::move(__first), std::move(__last), std::move(__result));
}
template <class _InputIterator, class _OutputIterator>
-_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _OutputIterator
+_LIBCPP_CONSTEXPR_SINCE_CXX20 _OutputIterator
copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result) {
return std::__copy(__first, __last, __result).__out_;
}
diff --git a/libcxx/include/__algorithm/copy_backward.h b/libcxx/include/__algorithm/copy_backward.h
index 15c213a4c5dec..5389628fb2566 100644
--- a/libcxx/include/__algorithm/copy_backward.h
+++ b/libcxx/include/__algorithm/copy_backward.h
@@ -35,11 +35,11 @@ _LIBCPP_PUSH_MACROS
_LIBCPP_BEGIN_NAMESPACE_STD
template <class _AlgPolicy, class _InIter, class _Sent, class _OutIter>
-_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 __in_out_result<_InIter, _OutIter>
+_LIBCPP_CONSTEXPR_SINCE_CXX20 __in_out_result<_InIter, _OutIter>
__copy_backward(_InIter __first, _Sent __last, _OutIter __result);
template <class _Cp, bool _IsConst>
-_LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI __bit_iterator<_Cp, false> __copy_backward_aligned(
+_LIBCPP_CONSTEXPR_SINCE_CXX20 __bit_iterator<_Cp, false> __copy_backward_aligned(
__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last, __bit_iterator<_Cp, false> __result) {
using _In = __bit_iterator<_Cp, _IsConst>;
using difference_type = typename _In::difference_type;
@@ -81,7 +81,7 @@ _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI __bit_iterator<_Cp, false> _
}
template <class _Cp, bool _IsConst>
-_LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI __bit_iterator<_Cp, false> __copy_backward_unaligned(
+_LIBCPP_CONSTEXPR_SINCE_CXX20 __bit_iterator<_Cp, false> __copy_backward_unaligned(
__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last, __bit_iterator<_Cp, false> __result) {
using _In = __bit_iterator<_Cp, _IsConst>;
using difference_type = typename _In::difference_type;
@@ -159,7 +159,7 @@ _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI __bit_iterator<_Cp, false> _
template <class _AlgPolicy>
struct __copy_backward_impl {
template <class _InIter, class _Sent, class _OutIter>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
operator()(_InIter __first, _Sent __last, _OutIter __result) const {
auto __last_iter = _IterOps<_AlgPolicy>::next(__first, __last);
auto __original_last_iter = __last_iter;
@@ -172,7 +172,7 @@ struct __copy_backward_impl {
}
template <class _InIter, class _OutIter, __enable_if_t<__is_segmented_iterator_v<_InIter>, int> = 0>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
operator()(_InIter __first, _InIter __last, _OutIter __result) const {
using __local_iterator = typename __segmented_iterator_traits<_InIter>::__local_iterator;
std::__for_each_segment_backward(__first, __last, [&__result](__local_iterator __lfirst, __local_iterator __llast) {
@@ -186,7 +186,7 @@ struct __copy_backward_impl {
__enable_if_t<__has_random_access_iterator_category<_InIter>::value &&
!__is_segmented_iterator_v<_InIter> && __is_segmented_iterator_v<_OutIter>,
int> = 0>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
operator()(_InIter __first, _InIter __last, _OutIter __result) const {
using _Traits = __segmented_iterator_traits<_OutIter>;
auto __orig_last = __last;
@@ -214,7 +214,7 @@ struct __copy_backward_impl {
}
template <class _Cp, bool _IsConst>
- _LIBCPP_HIDE_FROM_ABI
+
_LIBCPP_CONSTEXPR_SINCE_CXX20 __in_out_result<__bit_iterator<_Cp, _IsConst>, __bit_iterator<_Cp, false> >
operator()(__bit_iterator<_Cp, _IsConst> __first,
__bit_iterator<_Cp, _IsConst> __last,
@@ -226,21 +226,21 @@ struct __copy_backward_impl {
// At this point, the iterators have been unwrapped so any `contiguous_iterator` has been unwrapped to a pointer.
template <class _In, class _Out, __enable_if_t<__can_lower_copy_assignment_to_memmove<_In, _Out>::value, int> = 0>
- _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_In*, _Out*>
+ _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_In*, _Out*>
operator()(_In* __first, _In* __last, _Out* __result) const {
return std::__copy_backward_trivial_impl(__first, __last, __result);
}
};
template <class _AlgPolicy, class _BidirectionalIterator1, class _Sentinel, class _BidirectionalIterator2>
-_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 __in_out_result<_BidirectionalIterator1, _BidirectionalIterator2>
+_LIBCPP_CONSTEXPR_SINCE_CXX20 __in_out_result<_BidirectionalIterator1, _BidirectionalIterator2>
__copy_backward(_BidirectionalIterator1 __first, _Sentinel __last, _BidirectionalIterator2 __result) {
return std::__copy_move_unwrap_iters<__copy_backward_impl<_AlgPolicy> >(
std::move(__first), std::move(__last), std::move(__result));
}
template <class _BidirectionalIterator1, class _BidirectionalIterator2>
-inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _BidirectionalIterator2
+inline _LIBCPP_CONSTEXPR_SINCE_CXX20 _BidirectionalIterator2
copy_backward(_BidirectionalIterator1 __first, _BidirectionalIterator1 __last, _BidirectionalIterator2 __result) {
static_assert(std::is_copy_constructible<_BidirectionalIterator1>::value &&
std::is_copy_constructible<_BidirectionalIterator1>::value,
diff --git a/libcxx/include/__algorithm/copy_if.h b/libcxx/include/__algorithm/copy_if.h
index 7bbfaa37ff95d..59bb1a91b919f 100644
--- a/libcxx/include/__algorithm/copy_if.h
+++ b/libcxx/include/__algorithm/copy_if.h
@@ -26,7 +26,7 @@ _LIBCPP_PUSH_MACROS
_LIBCPP_BEGIN_NAMESPACE_STD
template <class _InIter, class _Sent, class _OutIter, class _Proj, class _Pred>
-_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
+_LIBCPP_CONSTEXPR_SINCE_CXX14 __in_out_result<_InIter, _OutIter>
__copy_if(_InIter __first, _Sent __last, _OutIter __result, _Pred& __pred, _Proj& __proj) {
for (; __first != __last; ++__first) {
if (std::__invoke(__pred, std::__invoke(__proj, *__first))) {
@@ -38,7 +38,7 @@ __copy_if(_InIter __first, _Sent __last, _OutIter __result, _Pred& __pred, _Proj
}
template <class _InputIterator, class _OutputIterator, class _Predicate>
-inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _OutputIterator
+inline _LIBCPP_CONSTEXPR_SINCE_CXX20 _OutputIterator
copy_if(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _Predicate __pred) {
__identity __proj;
return std::__copy_if(__first, __last, __result, __pred, __proj).__out_;
diff --git a/libcxx/include/__algorithm/copy_move_common.h b/libcxx/include/__algorithm/copy_move_common.h
index 85723a7ebe587..eef4dcc162acd 100644
--- a/libcxx/include/__algorithm/copy_move_common.h
+++ b/libcxx/include/__algorithm/copy_move_common.h
@@ -54,7 +54,7 @@ ...
[truncated]
``````````
</details>
https://github.com/llvm/llvm-project/pull/201722
More information about the libcxx-commits
mailing list