Files
Jonathan Wakely 96dada386d libstdc++: Fix incorrect noexcept on string::compare overloads [PR123991]
These compare overloads throw when the pos index is out of range, not
only when the const T& parameter throws on conversion to string_view.

Remove the incorrect conditional noexcept-specifier from the two
overloads that can throw.

libstdc++-v3/ChangeLog:

	PR libstdc++/123991
	* include/bits/basic_string.h (compare(size_type, size_type, T)):
	Remove noexcept-specifier.
	(compare(size_type, size_type, T, size_type, size_type)):
	Likewise.
	* include/bits/cow_string.h (compare(size_type, size_type, T)):
	Remove noexcept-specifier.
	(compare(size_type, size_type, T, size_type, size_type)):
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/char/123991.cc:
	New test.
	* testsuite/21_strings/basic_string/operations/compare/wchar_t/123991.cc:
	New test.

Reviewed-by: Nathan Myers <nmyers@redhat.com>
(cherry picked from commit 0912dfcd1e)
2026-02-10 20:19:03 +00:00
..
2025-03-31 12:05:18 +01:00
2023-01-16 11:52:17 +01:00
2023-01-16 11:52:17 +01:00
2023-01-16 11:52:17 +01:00
2023-01-16 11:52:17 +01:00
2023-01-16 11:52:17 +01:00
2023-01-16 11:52:17 +01:00
2023-01-16 11:52:17 +01:00
2023-01-16 11:52:17 +01:00