[Bug libstdc++/59872] [4.9 Regression] Cannot move std::map with move-only mapped_type
redi at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jan 23 17:18:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59872
--- Comment #9 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Thu Jan 23 17:17:04 2014
New Revision: 206994
URL: http://gcc.gnu.org/viewcvs?rev=206994&root=gcc&view=rev
Log:
PR libstdc++/59872
* include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
* include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
Likewise.
* include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
Likewise.
* include/bits/stl_set.h (set::operator=(set&&)): Likewise.
* include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
functions to perform moving or copying of elements from rvalue tree.
(_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
(_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
* testsuite/23_containers/map/59872.cc: New.
* testsuite/23_containers/map/56613.cc: Remove duplicate include.
Added:
trunk/libstdc++-v3/testsuite/23_containers/map/59872.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/stl_map.h
trunk/libstdc++-v3/include/bits/stl_multimap.h
trunk/libstdc++-v3/include/bits/stl_multiset.h
trunk/libstdc++-v3/include/bits/stl_set.h
trunk/libstdc++-v3/include/bits/stl_tree.h
trunk/libstdc++-v3/testsuite/23_containers/map/56613.cc
More information about the Gcc-bugs
mailing list