This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r206444 - in /trunk/libstdc++-v3: ChangeLog inc...
- From: fdumont at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 08 Jan 2014 20:57:58 -0000
- Subject: r206444 - in /trunk/libstdc++-v3: ChangeLog inc...
Author: fdumont
Date: Wed Jan 8 20:57:57 2014
New Revision: 206444
URL: http://gcc.gnu.org/viewcvs?rev=206444&root=gcc&view=rev
Log:
2014-01-08 FranÃois Dumont <fdumont@gcc.gnu.org>
* include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
*this allocator instance when building temporary vector instance
so that *this allocator does not get moved.
* include/debug/safe_base.h
(_Safe_sequence_base(_Safe_sequence_base&&)): New.
* include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
move constructor from _Safe_sequence_base.
(__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
safe iterators if the instance is moved.
(__gnu_debug::vector<>::operator=(vector&&)): Likewise.
* testsuite/23_containers/vector/allocator/move.cc (test01): Add
check on a vector iterator.
* testsuite/23_containers/vector/allocator/move_assign.cc
(test02): Likewise.
(test03): New, test with a non-propagating allocator.
* testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
Added:
trunk/libstdc++-v3/testsuite/23_containers/vector/debug/move_assign_neg.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/stl_vector.h
trunk/libstdc++-v3/include/debug/safe_base.h
trunk/libstdc++-v3/include/debug/vector
trunk/libstdc++-v3/testsuite/23_containers/vector/allocator/move.cc
trunk/libstdc++-v3/testsuite/23_containers/vector/allocator/move_assign.cc