[PATCH] libstdc++: Implement LWG 3555 changes to transform/elements_view

Patrick Palka ppalka@redhat.com
Fri Jun 18 04:00:10 GMT 2021


libstdc++-v3/ChangeLog:

	* include/std/ranges (transform_view::_Iterator::_S_iter_concept):
	Consider _Base instead of _Vp as per LWG 3555.
	(elements_view::_Iterator::_S_iter_concept): Likewise.
---
 libstdc++-v3/include/std/ranges | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/libstdc++-v3/include/std/ranges b/libstdc++-v3/include/std/ranges
index f93a880ff8a..bf85b1629f0 100644
--- a/libstdc++-v3/include/std/ranges
+++ b/libstdc++-v3/include/std/ranges
@@ -1613,11 +1613,11 @@ namespace views::__adaptor
 	  static auto
 	  _S_iter_concept()
 	  {
-	    if constexpr (random_access_range<_Vp>)
+	    if constexpr (random_access_range<_Base>)
 	      return random_access_iterator_tag{};
-	    else if constexpr (bidirectional_range<_Vp>)
+	    else if constexpr (bidirectional_range<_Base>)
 	      return bidirectional_iterator_tag{};
-	    else if constexpr (forward_range<_Vp>)
+	    else if constexpr (forward_range<_Base>)
 	      return forward_iterator_tag{};
 	    else
 	      return input_iterator_tag{};
@@ -3659,11 +3659,11 @@ namespace views::__adaptor
 	  static auto
 	  _S_iter_concept()
 	  {
-	    if constexpr (random_access_range<_Vp>)
+	    if constexpr (random_access_range<_Base>)
 	      return random_access_iterator_tag{};
-	    else if constexpr (bidirectional_range<_Vp>)
+	    else if constexpr (bidirectional_range<_Base>)
 	      return bidirectional_iterator_tag{};
-	    else if constexpr (forward_range<_Vp>)
+	    else if constexpr (forward_range<_Base>)
 	      return forward_iterator_tag{};
 	    else
 	      return input_iterator_tag{};
-- 
2.32.0.93.g670b81a890



More information about the Gcc-patches mailing list