[Bug libstdc++/95322] std::list | take | transform, expression does not work cbegin() == end()

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Oct 21 01:57:38 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95322

--- Comment #18 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Patrick Palka
<ppalka@gcc.gnu.org>:

https://gcc.gnu.org/g:574ab3c85bb393e0ed0171b96eb42e0dd1e91de4

commit r10-8927-g574ab3c85bb393e0ed0171b96eb42e0dd1e91de4
Author: Patrick Palka <ppalka@redhat.com>
Date:   Wed Aug 26 21:51:48 2020 -0400

    libstdc++: Implement remaining piece of LWG 3448

    Almost all of the proposed resolution for LWG 3448 is already
    implemented; the only part left is to adjust the return type of
    transform_view::sentinel::operator-.

    libstdc++-v3/ChangeLog:

            PR libstdc++/95322
            * include/std/ranges (transform_view::sentinel::__distance_from):
            Give this a deduced return type.
            (transform_view::sentinel::operator-): Adjust the return type so
            that it's based on the constness of the iterator rather than
            that of the sentinel.
            * testsuite/std/ranges/adaptors/95322.cc: Refer to LWG 3488.

    (cherry picked from commit 3ae0cd94abc15e33dc06ca7a5f76f14b1d74129f)


More information about the Gcc-bugs mailing list