gcc/libstdc++-v3/include/debug
Jonathan Wakely 0afb9ebaab libstdc++: Always define typedefs and hash functions for wide strings [PR 98725]
The wstring and wstring_view typedefs should be enabled even if
<wchar.h> isn't supported, because char_traits<wchar_t> works
unconditionally. Similarly, the std::hash specializations for wide
strings do not depend on <wchar.h> support.

Although the primary template works OK for std::char_traits<wchar_t> in
the absence of <wchar.h> support, this patch still defines it as an
explicit specialization for compatibility with declarations that expect
it to be specialized. The explicit specialization just uses the same
__gnu_cxx::char_traits base class as the primary template.

libstdc++-v3/ChangeLog:

	PR libstdc++/98725
	* include/bits/char_traits.h (char_traits<wchar_t>): Define
	explicit specialization unconditionally.
	* include/bits/basic_string.h (hash<wstring>): Define
	unconditionally. Do not check _GLIBCXX_USE_WCHAR_T.
	* include/bits/stringfwd.h (wstring): Likewise.
	* include/debug/string (wstring): Likewise.
	* include/experimental/string_view (experimental::wstring_view)
	(hash<experimental::wstring_view>): Likewise.
	* include/std/string (pmr::wstring, hash<pmr::wstring>):
	Likewise.
	* include/std/string_view (wstring_view, hash<wstring_view>):
	Likewise.
2021-10-09 00:57:49 +01:00
..
array libstdc++: Restore __gnu_debug::array [PR100682] 2021-07-22 13:53:57 +01:00
assertions.h libstdc++: Fix headers that can't be used as header units [PR 99413] 2021-03-10 15:27:41 +00:00
bitset Update copyright years. 2021-01-04 10:26:59 +01:00
debug.h Update copyright years. 2021-01-04 10:26:59 +01:00
deque libstdc++: Implement P1518R2 for container deduction guides 2021-10-04 15:23:28 +01:00
formatter.h libstdc++: [_GLIBCXX_DEBUG] Enhance rendering of assert message 2021-05-26 21:50:17 +02:00
forward_list libstdc++: Fix CTAD for debug sequence containers 2021-08-18 14:26:38 +01:00
functions.h libstdc++: Add std::__conditional_t alias template 2021-10-01 20:34:49 +01:00
helper_functions.h libstdc++: [_GLIBCXX_DEBUG] Fix management of __dp_sign_max_size [PR 99402] 2021-04-09 21:46:35 +02:00
list libstdc++: Implement P1518R2 for container deduction guides 2021-10-04 15:23:28 +01:00
macros.h libstdc++: Use __builtin_unreachable for constexpr assertions [PR 100676] 2021-05-20 20:49:57 +01:00
map Update copyright years. 2021-01-04 10:26:59 +01:00
map.h libstdc++: Implement P1518R2 for container deduction guides 2021-10-04 15:23:28 +01:00
multimap.h libstdc++: Implement P1518R2 for container deduction guides 2021-10-04 15:23:28 +01:00
multiset.h libstdc++: Implement P1518R2 for container deduction guides 2021-10-04 15:23:28 +01:00
safe_base.h Update copyright years. 2021-01-04 10:26:59 +01:00
safe_container.h libstdc++: [_GLIBCXX_DEBUG] Avoid allocator operator== when always equal 2021-08-09 20:44:58 +02:00
safe_iterator.h libstdc++: Add [[nodiscard]] to sequence containers 2021-08-04 12:54:29 +01:00
safe_iterator.tcc libstdc++: [_GLIBCXX_DEBUG] Fix management of __dp_sign_max_size [PR 99402] 2021-04-09 21:46:35 +02:00
safe_local_iterator.h libstdc++: Implement N3644 for _GLIBCXX_DEBUG iterators 2021-01-14 19:23:54 +01:00
safe_local_iterator.tcc Update copyright years. 2021-01-04 10:26:59 +01:00
safe_sequence.h Update copyright years. 2021-01-04 10:26:59 +01:00
safe_sequence.tcc Update copyright years. 2021-01-04 10:26:59 +01:00
safe_unordered_base.h Update copyright years. 2021-01-04 10:26:59 +01:00
safe_unordered_container.h Update copyright years. 2021-01-04 10:26:59 +01:00
safe_unordered_container.tcc Update copyright years. 2021-01-04 10:26:59 +01:00
set Update copyright years. 2021-01-04 10:26:59 +01:00
set.h libstdc++: Implement P1518R2 for container deduction guides 2021-10-04 15:23:28 +01:00
stl_iterator.h libstdc++: [_GLIBCXX_DEBUG] Fix management of __dp_sign_max_size [PR 99402] 2021-04-09 21:46:35 +02:00
string libstdc++: Always define typedefs and hash functions for wide strings [PR 98725] 2021-10-09 00:57:49 +01:00
unordered_map libstdc++: Add unordered containers heterogeneous lookup 2021-02-09 21:56:27 +01:00
unordered_set libstdc++: Add unordered containers heterogeneous lookup 2021-02-09 21:56:27 +01:00
vector libstdc++: Implement P1518R2 for container deduction guides 2021-10-04 15:23:28 +01:00