Name |
Last commit
|
Last update |
---|---|---|
.. | ||
24061-map.cc | ||
57619.cc | ||
83709.cc | ||
array_syntax.cc | ||
array_syntax_move.cc | ||
dr2354.cc | ||
map_range.cc | ||
map_single.cc | ||
map_single_move-1.cc | ||
map_single_move-2.cc |
re PR libstdc++/83709 (Inserting duplicates into an unordered associative containers causes the container to invalidate iterators) 2018-01-09 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/83709 * include/bits/hashtable_policy.h (__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if __first != __last. (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New. (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)): Add false_type parameter. (_Insert_base::insert): Adapt. * include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)): Adapt. (_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)): Add __n_elt parameter, defaulted to 1. (_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash policy _M_need_rehash. (_Hashtable::_M_merge_unique): Pass target number of elements to add to produce only 1 rehash if necessary. * testsuite/23_containers/unordered_map/insert/83709.cc: New. * testsuite/23_containers/unordered_set/insert/83709.cc: New. From-SVN: r256396
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
24061-map.cc | Loading commit data... | |
57619.cc | Loading commit data... | |
83709.cc | Loading commit data... | |
array_syntax.cc | Loading commit data... | |
array_syntax_move.cc | Loading commit data... | |
dr2354.cc | Loading commit data... | |
map_range.cc | Loading commit data... | |
map_single.cc | Loading commit data... | |
map_single_move-1.cc | Loading commit data... | |
map_single_move-2.cc | Loading commit data... |