https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91012
--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> --- Author: redi Date: Thu Jun 27 09:42:39 2019 New Revision: 272739 URL: https://gcc.gnu.org/viewcvs?rev=272739&root=gcc&view=rev Log: PR libstdc++/91012 fixfilesystem_error::what() string When I refactored the filesystem_error code I changed it to only use the constructor parameter in the what() string, instead of the string returned by system_error::what(). That meant it no longer included the description of the error_code that system_error adds. This restores the previous behaivour, as encouraged by the standard ("Implementations should include the system_error::what() string and the pathnames of path1 and path2 in the native format in the returned string"). PR libstdc++/91012 * src/c++17/fs_path.cc (filesystem_error::_Impl): Use a string_view for the what_arg parameters. (filesystem_error::filesystem_error): Pass system_error::what() to the _Impl constructor. * testsuite/27_io/filesystem/filesystem_error/cons.cc: Ensure that filesystem_error::what() contains system_error::what(). Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/src/c++17/fs_path.cc trunk/libstdc++-v3/testsuite/27_io/filesystem/filesystem_error/cons.cc