[gcc r12-8660] libstdc++: Tweak common_iterator::operator-> return type [PR104443]

Jonathan Wakely redi@gcc.gnu.org
Wed Aug 3 13:47:19 GMT 2022


https://gcc.gnu.org/g:1a9681e60964c7f7ce0892e14745e6dcf6100157

commit r12-8660-g1a9681e60964c7f7ce0892e14745e6dcf6100157
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Thu Jul 28 20:55:51 2022 +0100

    libstdc++: Tweak common_iterator::operator-> return type [PR104443]
    
    This adjusts the return type to match the resolution of LWG 3672. There
    is no functional difference, because decltype(auto) always deduced a
    value anyway, but this makes it simpler and consistent with the working
    draft.
    
    libstdc++-v3/ChangeLog:
    
            PR libstdc++/104443
            * include/bits/stl_iterator.h (common_iterator::operator->):
            Change return type to just auto.
    
    (cherry picked from commit b5f5d1b36edbcd7d923f2e2653e54e52637c715b)

Diff:
---
 libstdc++-v3/include/bits/stl_iterator.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libstdc++-v3/include/bits/stl_iterator.h b/libstdc++-v3/include/bits/stl_iterator.h
index f2b315f30e4..15b9affc4b9 100644
--- a/libstdc++-v3/include/bits/stl_iterator.h
+++ b/libstdc++-v3/include/bits/stl_iterator.h
@@ -2043,7 +2043,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
     }
 
     [[nodiscard]]
-    constexpr decltype(auto)
+    constexpr auto
     operator->() const requires __detail::__common_iter_has_arrow<_It>
     {
       __glibcxx_assert(_M_index == 0);


More information about the Libstdc++-cvs mailing list