From b5f5d1b36edbcd7d923f2e2653e54e52637c715b Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Thu, 28 Jul 2022 20:55:51 +0100 Subject: [PATCH] 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. --- 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 9cd262cd1d9..003cebbec83 100644 --- a/libstdc++-v3/include/bits/stl_iterator.h +++ b/libstdc++-v3/include/bits/stl_iterator.h @@ -2058,7 +2058,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);