[PATCH] libstdc++: Don't constrain some enable_borrowed_range specializations
Jonathan Wakely
jwakely@redhat.com
Wed May 5 09:40:38 GMT 2021
On 04/05/21 21:42 -0400, Patrick Palka via Libstdc++ wrote:
>These constraints are already present on the template we're partially
>specilalizing for.
>
>[ This was recently fixed editorially in
>https://github.com/cplusplus/draft/pull/4519 ]
>
>Tested on x86_64-pc-linux-gnu, does this look OK for trunk?
Yes, thanks.
>libstdc++-v3/ChangeLog:
>
> * include/bits/ranges_util.h (enable_borrowed_range<subrange>):
> Remove constraints on this partial specialization.
> * include/std/ranges (enable_borrowed_range<iota_view>):
> Likewise.
>---
> libstdc++-v3/include/bits/ranges_util.h | 3 +--
> libstdc++-v3/include/std/ranges | 2 +-
> 2 files changed, 2 insertions(+), 3 deletions(-)
>
>diff --git a/libstdc++-v3/include/bits/ranges_util.h b/libstdc++-v3/include/bits/ranges_util.h
>index 589886eb157..b73fc121e0f 100644
>--- a/libstdc++-v3/include/bits/ranges_util.h
>+++ b/libstdc++-v3/include/bits/ranges_util.h
>@@ -381,8 +381,7 @@ namespace ranges
> return __r.end();
> }
>
>- template<input_or_output_iterator _It, sentinel_for<_It> _Sent,
>- subrange_kind _Kind>
>+ template<typename _It, typename _Sent, subrange_kind _Kind>
> inline constexpr bool
> enable_borrowed_range<subrange<_It, _Sent, _Kind>> = true;
>
>diff --git a/libstdc++-v3/include/std/ranges b/libstdc++-v3/include/std/ranges
>index f21e08a36e3..2305bd200a5 100644
>--- a/libstdc++-v3/include/std/ranges
>+++ b/libstdc++-v3/include/std/ranges
>@@ -586,7 +586,7 @@ namespace ranges
> == __detail::__is_signed_integer_like<_Bound>))
> iota_view(_Winc, _Bound) -> iota_view<_Winc, _Bound>;
>
>- template<weakly_incrementable _Winc, semiregular _Bound>
>+ template<typename _Winc, typename _Bound>
> inline constexpr bool
> enable_borrowed_range<iota_view<_Winc, _Bound>> = true;
>
>--
>2.31.1.442.g7e39198978
>
More information about the Libstdc++
mailing list