gcc/libstdc++-v3/testsuite
Jonathan Wakely 4484945c53
libstdc++: Fix std::unordered_set::emplace optimization [PR117686]
The __is_key_type specialization that matches a pair<key_type, T>
argument is intended for std::unordered_map, not for
std::unordered_set<std::pair<K,T>>.

This uses a pair<const Args&...> as the template argument for
__is_key_type, so that it won't match a set's key_type.

libstdc++-v3/ChangeLog:

	PR libstdc++/117686
	* include/bits/hashtable.h (_Hashtable::_M_emplace_uniq):
	Adjust usage of __is_key_type to avoid false positive.
	* testsuite/23_containers/unordered_set/insert/117686.cc:
	New test.
2024-11-20 06:44:43 +00:00
..
17_intro
18_support
19_diagnostics
20_util
21_strings
22_locale libstdc++: Make _GLIBCXX_NODISCARD work for C++11 and C++14 2024-11-14 17:00:40 +00:00
23_containers libstdc++: Fix std::unordered_set::emplace optimization [PR117686] 2024-11-20 06:44:43 +00:00
24_iterators libstdc++: Add missing constraint to operator+ for std::move_iterator 2024-11-14 15:39:03 +00:00
25_algorithms libstdc++: Make equal and is_permutation short-circuit (LWG 3560) 2024-11-14 20:01:25 +00:00
26_numerics
27_io libstdc++: Make _GLIBCXX_NODISCARD work for C++11 and C++14 2024-11-14 17:00:40 +00:00
28_regex
29_atomics
30_threads
abi
backward
config
data
decimal
experimental
ext libstdc++: Make _GLIBCXX_NODISCARD work for C++11 and C++14 2024-11-14 17:00:40 +00:00
lib testsuite: move dg-test cleanup code from gcc-dg.exp to its own file 2024-11-18 16:49:04 -05:00
libstdc++-abi
libstdc++-dg
libstdc++-prettyprinters
libstdc++-xmethods
performance
special_functions
std libstdc++: Implement LWG 3563 changes to keys_view and values_view 2024-11-14 13:27:41 -05:00
tr1
tr2
util
Makefile.am
Makefile.in