gcc/libstdc++-v3/testsuite/23_containers/unordered_map
François Dumont 0f1462579e 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
2018-01-09 21:05:10 +00:00
..
allocator Update copyright years. 2018-01-03 11:03:58 +01:00
cons Update copyright years. 2018-01-03 11:03:58 +01:00
debug Update copyright years. 2018-01-03 11:03:58 +01:00
erase Update copyright years. 2018-01-03 11:03:58 +01:00
hash_policy Update copyright years. 2018-01-03 11:03:58 +01:00
insert re PR libstdc++/83709 (Inserting duplicates into an unordered associative containers causes the container to invalidate iterators) 2018-01-09 21:05:10 +00:00
modifiers Update copyright years. 2018-01-03 11:03:58 +01:00
operations Update copyright years. 2018-01-03 11:03:58 +01:00
operators Update copyright years. 2018-01-03 11:03:58 +01:00
profile Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
requirements Update copyright years. 2018-01-03 11:03:58 +01:00
48101-2_neg.cc Update copyright years. 2018-01-03 11:03:58 +01:00
48101_neg.cc Update copyright years. 2018-01-03 11:03:58 +01:00
55043.cc Update copyright years. 2018-01-03 11:03:58 +01:00
59548.cc Update copyright years. 2018-01-03 11:03:58 +01:00
dr761.cc Update copyright years. 2018-01-03 11:03:58 +01:00
final_hash.cc Update copyright years. 2018-01-03 11:03:58 +01:00
init-list.cc Update copyright years. 2018-01-03 11:03:58 +01:00
observers.cc Update copyright years. 2018-01-03 11:03:58 +01:00
range_access.cc Update copyright years. 2018-01-03 11:03:58 +01:00