This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r190991 - 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, 05 Sep 2012 19:41:17 -0000
- Subject: r190991 - in /trunk/libstdc++-v3: ChangeLog inc...
Author: fdumont
Date: Wed Sep 5 19:41:16 2012
New Revision: 190991
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190991
Log:
2012-09-05 FranÃois Dumont <fdumont@gcc.gnu.org>
PR libstdc++/54296
* include/bits/hashtable.h (_M_erase(size_type, __node_base*,
__node_type*)): New.
(erase(const_iterator)): Use latter.
(_M_erase(std::true_type, const key_type&)): New, likewise.
(_M_erase(std::false_type, const key_type&)): New. Find all nodes
matching the key before deallocating them so that the key doesn't
get invalidated.
(erase(const key_type&)): Use the new member functions.
* testsuite/23_containers/unordered_map/erase/54296.cc: New.
* testsuite/23_containers/unordered_multimap/erase/54296.cc: New.
Added:
trunk/libstdc++-v3/testsuite/23_containers/unordered_map/erase/54276.cc
trunk/libstdc++-v3/testsuite/23_containers/unordered_multimap/erase/54276.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/hashtable.h