From 700e6332a7fed75fca4515e24263492ff7a83344 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Fri, 26 Apr 2019 16:58:47 +0100 Subject: [PATCH] Remove redundant step in experimental::filesystem::path construction * include/experimental/bits/fs_path.h (path::_S_convert_loc<_InputIterator>): Create const std::string to avoid redundant call to _S_convert_loc with non-const pointers. From-SVN: r270608 --- libstdc++-v3/ChangeLog | 4 ++++ libstdc++-v3/include/experimental/bits/fs_path.h | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 78626838d4f..0f679e3fd89 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,9 @@ 2019-04-26 Jonathan Wakely + * include/experimental/bits/fs_path.h + (path::_S_convert_loc<_InputIterator>): Create const std::string to + avoid redundant call to _S_convert_loc with non-const pointers. + * testsuite/20_util/variant/run.cc: Use a new Hashable type to test hashing, because pmr::string depends on _GLIBCXX_USE_CXX11_ABI==1. * testsuite/21_strings/basic_string/hash/hash.cc diff --git a/libstdc++-v3/include/experimental/bits/fs_path.h b/libstdc++-v3/include/experimental/bits/fs_path.h index ebd5072fc1a..c7b22f29569 100644 --- a/libstdc++-v3/include/experimental/bits/fs_path.h +++ b/libstdc++-v3/include/experimental/bits/fs_path.h @@ -483,7 +483,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CXX11 _S_convert_loc(_InputIterator __src, __null_terminated, const std::locale& __loc) { - std::string __s = _S_string_from_iter(__src); + const std::string __s = _S_string_from_iter(__src); return _S_convert_loc(__s.data(), __s.data() + __s.size(), __loc); } -- 2.30.2