[gcc r11-9127] libstdc++: Implement LWG 3553 changes to split_view

Patrick Palka ppalka@gcc.gnu.org
Tue Oct 12 18:09:06 GMT 2021


https://gcc.gnu.org/g:01e1cadac23f71472a0633cec03f6471cf4686aa

commit r11-9127-g01e1cadac23f71472a0633cec03f6471cf4686aa
Author: Patrick Palka <ppalka@redhat.com>
Date:   Fri Jun 18 20:50:22 2021 -0400

    libstdc++: Implement LWG 3553 changes to split_view
    
    libstdc++-v3/ChangeLog:
    
            * include/std/ranges (split_view::_OuterIter::value_type::begin):
            Remove the non-const overload, and remove the copyable constraint
            on the const overload as per LWG 3553.
    
    (cherry picked from commit 15736576df739fdcc5e795961dae30c7b0c87967)

Diff:
---
 libstdc++-v3/include/std/ranges | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/libstdc++-v3/include/std/ranges b/libstdc++-v3/include/std/ranges
index b237db6d39b..aebe1b90076 100644
--- a/libstdc++-v3/include/std/ranges
+++ b/libstdc++-v3/include/std/ranges
@@ -2867,14 +2867,8 @@ namespace views::__adaptor
 
 	    constexpr _InnerIter<_Const>
 	    begin() const
-	      requires copyable<_OuterIter>
 	    { return _InnerIter<_Const>{_M_i}; }
 
-	    constexpr _InnerIter<_Const>
-	    begin()
-	      requires (!copyable<_OuterIter>)
-	    { return _InnerIter<_Const>{std::move(_M_i)}; }
-
 	    constexpr default_sentinel_t
 	    end() const
 	    { return default_sentinel; }


More information about the Gcc-cvs mailing list