gcc/libstdc++-v3
Jonathan Wakely 260a5334ee libstdc++: Improve std::regex_error::what() strings
This replaces the vague "regex_error" for std::regex_error::what() with
a string that corresponds to the error_type enum passed to the
constructor. This allows us to remove many of the strings passed to
__throw_regex_error, because the default string is at least as good.
When a string argument to __throw_regex_error is kept it should add some
context-specific detail absent from the default string.

Also remove full stops (periods) from the end of those strings, to make
it easier to include them in logs and other output. I've left them
starting with an upper-case letter, which is consistent with strerror
output for (at least) Glibc, Solaris and BSD. I'm ambivalent whether
that's the right choice.

This also adds the missing noreturn attribute to __throw_regex_error.

libstdc++-v3/ChangeLog:

	* include/bits/regex_compiler.tcc: Adjust all calls to
	__throw_regex_error.
	* include/bits/regex_error.h (__throw_regex_error): Add noreturn
	attribute.
	* include/bits/regex_scanner.tcc: Likewise.
	* src/c++11/regex.cc (desc): New helper function.
	(regex_error::regex_error(error_type)): Use desc to get a string
	corresponding to the error code.
2022-01-05 13:47:00 +00:00
..
config Update copyright years. 2022-01-03 10:42:10 +01:00
doc Update copyright years. 2022-01-03 10:42:10 +01:00
include libstdc++: Improve std::regex_error::what() strings 2022-01-05 13:47:00 +00:00
libsupc++ Update copyright years. 2022-01-03 10:42:10 +01:00
po Update copyright years. 2022-01-03 10:42:10 +01:00
python Update copyright years. 2022-01-03 10:42:10 +01:00
scripts Update copyright years. 2022-01-03 10:42:10 +01:00
src libstdc++: Improve std::regex_error::what() strings 2022-01-05 13:47:00 +00:00
testsuite Update copyright years. 2022-01-03 10:42:10 +01:00
acinclude.m4 libstdc++: Fix definition of _GLIBCXX_NO_SLEEP config macro 2021-12-10 14:05:46 +00:00
aclocal.m4
ChangeLog Rotate ChangeLog files - step 2 - remove 2021 entries from ChangeLog files. 2022-01-03 10:23:34 +01:00
ChangeLog-1998
ChangeLog-1999
ChangeLog-2000
ChangeLog-2001
ChangeLog-2002
ChangeLog-2003
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015
ChangeLog-2016
ChangeLog-2017
ChangeLog-2018
ChangeLog-2019
ChangeLog-2020 libstdc++: Fix typo in ChangeLog-2020 2021-01-13 11:02:13 +00:00
ChangeLog-2021 Rotate ChangeLog files - part 1 - add ChangeLog-2021. 2022-01-03 10:18:16 +01:00
config.h.in libstdc++: Fix definition of _GLIBCXX_NO_SLEEP config macro 2021-12-10 14:05:46 +00:00
configure libstdc++: Fix definition of _GLIBCXX_NO_SLEEP config macro 2021-12-10 14:05:46 +00:00
configure.ac libstdc++: Support getentropy and arc4random in std::random_device 2021-11-09 14:40:33 +00:00
configure.host Scope libstdc++ configuration for vxworks to all versions 2020-10-22 16:40:57 +00:00
crossconfig.m4 libstdc++: Check for TLS support on mingw cross-compilers 2021-09-15 09:49:33 +01:00
fragment.am libstdc++: Add C++ runtime support for new 128-bit long double format 2020-12-16 23:25:01 +00:00
linkage.m4
Makefile.am Update copyright years. 2022-01-03 10:42:10 +01:00
Makefile.in libstdc++: Add C++ runtime support for new 128-bit long double format 2020-12-16 23:25:01 +00:00
README

file: libstdc++-v3/README

New users may wish to point their web browsers to the file
index.html in the 'doc/html' subdirectory.  It contains brief
building instructions and notes on how to configure the library in
interesting ways.