libstdc++: Fix ranges::join_view::_Iterator::operator-> [LWG 3500]
authorPatrick Palka <ppalka@redhat.com>
Wed, 18 Nov 2020 15:23:57 +0000 (10:23 -0500)
committerPatrick Palka <ppalka@redhat.com>
Wed, 18 Nov 2020 15:23:57 +0000 (10:23 -0500)
commitd4a788c7174496aca5fbe3e2b617a5a62e32c209
tree988ff5e550a14c05a8ec1f20e84f82bf6dae5bf1
parent2f2709e691148160e4f88090eaf48d3e4915b0e4
libstdc++: Fix ranges::join_view::_Iterator::operator-> [LWG 3500]

This applies the proposed resolution of LWG 3500, which corrects the
return type and constraints of this member function to use the right
iterator type.  Additionally, a nearby local variable is uglified.

libstdc++-v3/ChangeLog:

* include/std/ranges (join_view::_Iterator::_M_satisfy): Uglify
local variable inner.
(join_view::_Iterator::operator->): Use _Inner_iter instead of
_Outer_iter in the function signature as per LWG 3500.
* testsuite/std/ranges/adaptors/join.cc (test08): Test it.
libstdc++-v3/include/std/ranges
libstdc++-v3/testsuite/std/ranges/adaptors/join.cc