From 2b71ca688b0ae14d3a35dab12f1f11a2a6292b7d Mon Sep 17 00:00:00 2001
From: Patrick Palka <ppalka@redhat.com>
Date: Wed, 5 May 2021 12:07:52 -0400
Subject: [PATCH] libstdc++: Don't constrain some enable_borrowed_range
 specializations

These constraints are already present on the template we're partially
specializing for.

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 589886eb1575..b73fc121e0ff 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 f21e08a36e3b..2305bd200a53 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;
 
-- 
GitLab