@@ -78,38 +78,24 @@ __lower_bound_onesided(_Iter __first, _Sent __last, const _Type& __value, _Comp&
7878 return __first;
7979}
8080
81- template <class _AlgPolicy , class _InputIter , class _Sent , class _Type , class _Proj , class _Comp >
82- _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _InputIter __lower_bound (
83- _InputIter __first, _Sent __last, const _Type& __value, _Comp& __comp, _Proj& __proj, std::input_iterator_tag) {
84- return std::__lower_bound_onesided<_AlgPolicy>(__first, __last, __value, __comp, __proj);
85- }
86-
8781template <class _AlgPolicy , class _RandIter , class _Sent , class _Type , class _Proj , class _Comp >
8882_LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _RandIter __lower_bound (
8983 _RandIter __first,
9084 _Sent __last,
9185 const _Type& __value,
9286 _Comp& __comp,
93- _Proj& __proj,
94- std::random_access_iterator_tag) {
87+ _Proj& __proj) {
9588 const auto __dist = _IterOps<_AlgPolicy>::distance (__first, __last);
9689 return std::__lower_bound_bisecting<_AlgPolicy>(__first, __value, __dist, __comp, __proj);
9790}
9891
99- template <class _AlgPolicy , class _Iter , class _Sent , class _Type , class _Proj , class _Comp >
100- _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _Iter
101- __lower_bound (_Iter __first, _Sent __last, const _Type& __value, _Comp&& __comp, _Proj&& __proj) {
102- return std::__lower_bound<_AlgPolicy>(
103- __first, __last, __value, __comp, __proj, typename _IterOps<_AlgPolicy>::template __iterator_category<_Iter>());
104- }
105-
10692template <class _ForwardIterator , class _Tp , class _Compare >
10793_LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20
10894_ForwardIterator lower_bound (_ForwardIterator __first, _ForwardIterator __last, const _Tp& __value, _Compare __comp) {
10995 static_assert (__is_callable<_Compare, decltype (*__first), const _Tp&>::value,
11096 " The comparator has to be callable" );
11197 auto __proj = std::__identity ();
112- return std::__lower_bound<_ClassicAlgPolicy>(__first, __last, __value, std::move ( __comp), std::move ( __proj) );
98+ return std::__lower_bound<_ClassicAlgPolicy>(__first, __last, __value, __comp, __proj);
11399}
114100
115101template <class _ForwardIterator , class _Tp >
0 commit comments