libstdc++: Add missing P0896 changes to <iterator>
authorPatrick Palka <ppalka@redhat.com>
Fri, 2 Oct 2020 14:51:31 +0000 (10:51 -0400)
committerPatrick Palka <ppalka@redhat.com>
Fri, 2 Oct 2020 14:51:31 +0000 (10:51 -0400)
commit080a23bce12fa3f25860631f019777f728d2ef11
tree0578968c2bb325e176b4a07a3e3d67030ea37d12
parent251950d899bc3c18b5775fe9fe20bebbdc8d15cb
libstdc++: Add missing P0896 changes to <iterator>

I noticed that the following changes from this paper were not yet
implemented.

libstdc++-v3/ChangeLog:

* include/bits/stl_iterator.h (reverse_iterator::iter_move):
Define for C++20 as per P0896.
(reverse_iterator::iter_swap): Likewise.
(move_iterator::operator*): Apply P0896 changes for C++20.
(move_iterator::operator[]): Likewise.
* testsuite/24_iterators/reverse_iterator/cust.cc: New test.
libstdc++-v3/include/bits/stl_iterator.h
libstdc++-v3/testsuite/24_iterators/reverse_iterator/cust.cc [new file with mode: 0644]