]> git.ipfire.org Git - thirdparty/gcc.git/commit
libstdc++: Fix-self element self-assigments when inserting an empty range [PR121313]
authorTomasz Kamiński <tkaminsk@redhat.com>
Thu, 14 Aug 2025 13:20:36 +0000 (15:20 +0200)
committerTomasz Kamiński <tkaminsk@redhat.com>
Tue, 19 Aug 2025 09:35:10 +0000 (11:35 +0200)
commit334324b8936878ea59c3f5750b633b12de894af7
treed9fa11643907d33bb24a6bc2808659098e4fcb6d
parent3fb34411a7994b25e5efb6064ee17556567e0dc0
libstdc++: Fix-self element self-assigments when inserting an empty range [PR121313]

For __n == 0, the elements were self move-assigned by
std::move_backward(__ins, __old_finish - __n, __old_finish).

PR libstdc++/121313

libstdc++-v3/ChangeLog:

* include/bits/vector.tcc (vector::insert_range): Add check for
empty size.
* testsuite/23_containers/vector/modifiers/insert/insert_range.cc:
New tests.

(cherry picked from commit cc54f2f47e63c9d404a44f618cf114ae63e81b40)
libstdc++-v3/include/bits/vector.tcc
libstdc++-v3/testsuite/23_containers/vector/modifiers/insert/insert_range.cc