gcc/libstdc++-v3/include/bits
Jonathan Wakely 9f9c0549dd libstdc++: Fix regression in hash containers
A recent change altered the layout of EBO-helper base classes, resulting
in an ambiguity when the hash function and equality predicate are the
same type.

This modifies the type of one of the base classes, so that we don't get
two base classes of the same type.

libstdc++-v3/ChangeLog:

	* include/bits/hashtable_policy.h (_Hash_code_base): Change
	index of _Hashtable_ebo_helper base class.
	* testsuite/23_containers/unordered_map/dup_types.cc: New test.
2020-08-26 17:44:23 +01:00
..
algorithmfwd.h Update copyright years. 2020-01-01 12:51:42 +01:00
alloc_traits.h libstdc++: Avoid errors in allocator's noexcept-specifier (PR 89510) 2020-04-30 16:01:43 +01:00
allocated_ptr.h Update copyright years. 2020-01-01 12:51:42 +01:00
allocator.h libstdc++: Avoid errors in allocator's noexcept-specifier (PR 89510) 2020-04-30 16:01:43 +01:00
atomic_base.h libstdc++: Strip cv-qualifiers in std::atomic<FP> (PR 95282) 2020-06-16 22:34:55 +01:00
atomic_futex.h Update copyright years. 2020-01-01 12:51:42 +01:00
basic_ios.h Update copyright years. 2020-01-01 12:51:42 +01:00
basic_ios.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
basic_string.h libstdc++: Make self-move well-defined for containers [PR 85828] 2020-08-12 20:36:00 +01:00
basic_string.tcc libstdc++: Check __cpp_exceptions in basic_string::reserve() 2020-08-10 12:02:18 +01:00
boost_concept_check.h libstdc++: Make _GLIBCXX_CONCEPT_CHECKS more constexpr-friendly 2020-02-27 10:52:28 +00:00
c++0x_warning.h Update copyright years. 2020-01-01 12:51:42 +01:00
c++config libstdc++: Mention new macros in comments 2020-08-19 14:51:32 +01:00
char_traits.h libstdc++: Update value of __cpp_lib_constexpr_char_traits for C++20 2020-06-15 14:31:26 +01:00
charconv.h Update copyright years. 2020-01-01 12:51:42 +01:00
codecvt.h Update copyright years. 2020-01-01 12:51:42 +01:00
concept_check.h Update copyright years. 2020-01-01 12:51:42 +01:00
cpp_type_traits.h libstdc++: Fix comment on __memcpyable 2020-03-04 15:35:20 +00:00
deque.tcc libstdc++: Extend memcmp optimization in std::lexicographical_compare 2020-06-10 17:48:56 +01:00
enable_special_members.h Update copyright years. 2020-01-01 12:51:42 +01:00
erase_if.h libstdc++: Update __cpp_lib_erase_if macro (P1115R3) 2020-02-15 10:25:23 +00:00
forward_list.h libstdc++: Add comparison operators to sequence containers 2020-04-17 23:41:04 +01:00
forward_list.tcc libstdc++: Implement DR 526 on [forward_]list remove_if/unique [PR 91620] 2020-08-11 21:30:05 +02:00
fs_dir.h libstdc++: Fix -Wmismatched-tags warnings (PR 96063) 2020-07-06 17:12:29 +01:00
fs_fwd.h libstdc++: Add comparison operators to std::filesystem types 2020-04-15 21:01:42 +01:00
fs_ops.h Update copyright years. 2020-01-01 12:51:42 +01:00
fs_path.h libstdc++: Fix filesystem::u8path for mingw targets (PR 95392) 2020-06-02 00:07:05 +01:00
fstream.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
functexcept.h Update copyright years. 2020-01-01 12:51:42 +01:00
functional_hash.h Update copyright years. 2020-01-01 12:51:42 +01:00
gslice_array.h Update copyright years. 2020-01-01 12:51:42 +01:00
gslice.h Update copyright years. 2020-01-01 12:51:42 +01:00
hashtable_policy.h libstdc++: Fix regression in hash containers 2020-08-26 17:44:23 +01:00
hashtable.h libstdc++: Rename _Hashtable _H1, _H2 and _Hash template parameters 2020-08-26 07:58:46 +02:00
indirect_array.h Update copyright years. 2020-01-01 12:51:42 +01:00
invoke.h Update copyright years. 2020-01-01 12:51:42 +01:00
ios_base.h libstdc++: Add deprecated attributes to old iostream members 2020-08-19 12:13:23 +01:00
istream.tcc libstdc++: Do not set eofbit eagerly in operator>>(istream&, char(&)[N]) 2020-08-06 19:23:14 +01:00
iterator_concepts.h libstdc++: Fix std::indirectly_readable ambiguity [LWG 3446] 2020-08-24 16:18:31 +01:00
list.tcc libstdc++: Implement DR 526 on [forward_]list remove_if/unique [PR 91620] 2020-08-11 21:30:05 +02:00
locale_classes.h libstdc++: Add comparison operators to types from Utilities clause 2020-04-15 19:47:48 +01:00
locale_classes.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
locale_conv.h Update copyright years. 2020-01-01 12:51:42 +01:00
locale_facets_nonio.h Update copyright years. 2020-01-01 12:51:42 +01:00
locale_facets_nonio.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
locale_facets.h Update copyright years. 2020-01-01 12:51:42 +01:00
locale_facets.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
localefwd.h libstdc++: Fix -Wmismatched-tags warnings (PR 96063) 2020-07-06 17:12:29 +01:00
mask_array.h Update copyright years. 2020-01-01 12:51:42 +01:00
max_size_type.h libstdc++: integer-class types as per [iterator.concept.winc] 2020-08-19 09:12:55 -04:00
memoryfwd.h Update copyright years. 2020-01-01 12:51:42 +01:00
move.h Update copyright years. 2020-01-01 12:51:42 +01:00
node_handle.h libstdc++: Rename _Hashtable _H1, _H2 and _Hash template parameters 2020-08-26 07:58:46 +02:00
ostream_insert.h Update copyright years. 2020-01-01 12:51:42 +01:00
ostream.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
parse_numbers.h libstdc++: Replace __int_limits with __numeric_traits_integer 2020-07-07 23:36:29 +01:00
postypes.h Update copyright years. 2020-01-01 12:51:42 +01:00
predefined_ops.h Update copyright years. 2020-01-01 12:51:42 +01:00
ptr_traits.h libstdc++: Add missing feature test macros 2020-04-22 22:54:34 +01:00
quoted_string.h Update copyright years. 2020-01-01 12:51:42 +01:00
random.h libstdc++: Reduce header dependencies for C++20 (PR 92546) 2020-02-17 15:43:43 +00:00
random.tcc libstdc++: Fix undefined behaviour in random dist serialization (PR93205) 2020-01-09 16:50:51 +00:00
range_access.h libstdc++: Make make-unsigned-like-t<__int128> work [PR 96042] 2020-08-19 20:36:10 +01:00
range_cmp.h libstdc++: Define __cpp_lib_ranges macro for C++20 2020-03-27 23:26:03 +00:00
ranges_algo.h libstdc++: Fix some ranges algos optimizations [PR95578] 2020-06-10 17:37:53 -04:00
ranges_algobase.h libstdc++: Fix some ranges algos optimizations [PR95578] 2020-06-10 17:37:53 -04:00
ranges_uninitialized.h libstdc++: Move-only input iterator support in <memory> algorithms (LWG 3355) 2020-03-03 22:44:39 -05:00
refwrap.h libstdc++: Avoid using sizeof with function types (PR 93470) 2020-01-28 13:24:09 +00:00
regex_automaton.h Update copyright years. 2020-01-01 12:51:42 +01:00
regex_automaton.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
regex_compiler.h Update copyright years. 2020-01-01 12:51:42 +01:00
regex_compiler.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
regex_constants.h Update copyright years. 2020-01-01 12:51:42 +01:00
regex_error.h Update copyright years. 2020-01-01 12:51:42 +01:00
regex_executor.h Update copyright years. 2020-01-01 12:51:42 +01:00
regex_executor.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
regex_scanner.h Update copyright years. 2020-01-01 12:51:42 +01:00
regex_scanner.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
regex.h libstdc++: Fix -Wmismatched-tags warnings (PR 96063) 2020-07-06 17:12:29 +01:00
regex.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
shared_ptr_atomic.h Update copyright years. 2020-01-01 12:51:42 +01:00
shared_ptr_base.h libstdc++: Add comparison operators to std::shared_ptr (PR 94562) 2020-04-14 21:54:55 +01:00
shared_ptr.h libstdc++: Add comparison operators to std::shared_ptr (PR 94562) 2020-04-14 21:54:55 +01:00
slice_array.h libstdc++: Add comparison operators to types from Numerics clause 2020-04-08 16:51:59 +01:00
specfun.h Update copyright years. 2020-01-01 12:51:42 +01:00
sstream.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
std_abs.h Update copyright years. 2020-01-01 12:51:42 +01:00
std_function.h libstdc++: Define all std::function members inline 2020-06-19 14:37:52 +01:00
std_mutex.h Update copyright years. 2020-01-01 12:51:42 +01:00
stl_algo.h libstdc++: std::includes performance tweak 2020-06-19 13:03:45 +01:00
stl_algobase.h libstdc++: Fix warnings with -Wsystem-headers 2020-06-24 12:34:17 +01:00
stl_bvector.h libstdc++: Fix and improve std::vector<bool> implementation. 2020-07-31 23:18:51 +02:00
stl_construct.h libstdc++: Fix regression in std::_Construct (PR 94831) 2020-04-28 23:39:38 +01:00
stl_deque.h libstdc++: Make self-move well-defined for containers [PR 85828] 2020-08-12 20:36:00 +01:00
stl_function.h Update copyright years. 2020-01-01 12:51:42 +01:00
stl_heap.h Update copyright years. 2020-01-01 12:51:42 +01:00
stl_iterator_base_funcs.h Update copyright years. 2020-01-01 12:51:42 +01:00
stl_iterator_base_types.h libstdc++: Define __cpp_lib_ranges macro for C++20 2020-03-27 23:26:03 +00:00
stl_iterator.h libstdc++: Implement LWG 561 for std::inserter 2020-08-10 12:09:59 +01:00
stl_list.h libstdc++: Make self-move well-defined for containers [PR 85828] 2020-08-12 20:36:00 +01:00
stl_map.h libstdc++: Fix -Wmismatched-tags warnings (PR 96063) 2020-07-06 17:12:29 +01:00
stl_multimap.h libstdc++: Fix -Wmismatched-tags warnings (PR 96063) 2020-07-06 17:12:29 +01:00
stl_multiset.h libstdc++: Fix -Wmismatched-tags warnings (PR 96063) 2020-07-06 17:12:29 +01:00
stl_numeric.h libstdc++: P1645R1 constexpr for <numeric> algorithms 2020-02-26 10:23:17 -05:00
stl_pair.h libstdc++: Remove redundant std:: qualification 2020-06-19 15:02:54 +01:00
stl_queue.h libstdc++: Define operator<=> for std::stack and std::queue 2020-04-19 21:30:15 +01:00
stl_raw_storage_iter.h Update copyright years. 2020-01-01 12:51:42 +01:00
stl_relops.h Update copyright years. 2020-01-01 12:51:42 +01:00
stl_set.h libstdc++: Fix -Wmismatched-tags warnings (PR 96063) 2020-07-06 17:12:29 +01:00
stl_stack.h libstdc++: Define operator<=> for std::stack and std::queue 2020-04-19 21:30:15 +01:00
stl_tempbuf.h Update copyright years. 2020-01-01 12:51:42 +01:00
stl_tree.h libstdc++: Remove deprecated comparison operators for RB trees 2020-08-19 17:04:49 +01:00
stl_uninitialized.h libstdc++: Fix some -Wsystem-headers warnings (PR 95765) 2020-06-19 18:20:05 +01:00
stl_vector.h libstdc++: Add comparison operators to sequence containers 2020-04-17 23:41:04 +01:00
stream_iterator.h libstdc++: Fix compilation with released versions of Clang 2020-03-18 12:55:29 +00:00
streambuf_iterator.h libstdc++: Specialize copy/copy_n for istreambuf_iterator and deque iterators 2020-06-04 22:27:47 +02:00
streambuf.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
string_view.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
stringfwd.h Update copyright years. 2020-01-01 12:51:42 +01:00
uniform_int_dist.h libstdc++: Reduce header dependencies for C++20 (PR 92546) 2020-02-17 15:43:43 +00:00
unique_lock.h Update copyright years. 2020-01-01 12:51:42 +01:00
unique_ptr.h libstdc++: Implement operator<< for std::unique_ptr (LWG 2948) 2020-06-08 21:21:31 +01:00
unordered_map.h libstdc++: Fix unordered containers move constructors noexcept qualification 2020-07-29 11:26:42 +02:00
unordered_set.h libstdc++: Fix unordered containers move constructors noexcept qualification 2020-07-29 11:26:42 +02:00
uses_allocator.h Update copyright years. 2020-01-01 12:51:42 +01:00
valarray_after.h Update copyright years. 2020-01-01 12:51:42 +01:00
valarray_array.h Update copyright years. 2020-01-01 12:51:42 +01:00
valarray_array.tcc Update copyright years. 2020-01-01 12:51:42 +01:00
valarray_before.h Update copyright years. 2020-01-01 12:51:42 +01:00
vector.tcc Update copyright years. 2020-01-01 12:51:42 +01:00