https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95322
--- Comment #17 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Patrick Palka <ppa...@gcc.gnu.org>: https://gcc.gnu.org/g:e066821b6f6b7332c7a67981f7b33c9ba0ccaee7 commit r11-3834-ge066821b6f6b7332c7a67981f7b33c9ba0ccaee7 Author: Patrick Palka <ppa...@redhat.com> Date: Mon Oct 12 13:46:21 2020 -0400 libstdc++: Apply proposed resolution for LWG 3449 [PR95322] Now that the frontend bug PR96805 is fixed, we can cleanly apply the proposed resolution for this issue. This slightly deviates from the proposed resolution by declaring _CI a member of take_view instead of take_view::_Sentinel, since it doesn't depend on anything within _Sentinel anymore. libstdc++-v3/ChangeLog: PR libstdc++/95322 * include/std/ranges (take_view::_CI): Define this alias template as per LWG 3449 and remove ... (take_view::_Sentinel::_CI): ... this type alias. (take_view::_Sentinel::operator==): Adjust use of _CI accordingly. Define a second overload that accepts an iterator of the opposite constness as per LWG 3449. (take_while_view::_Sentinel::operator==): Likewise. * testsuite/std/ranges/adaptors/95322.cc: Add tests for LWG 3449.