Using the regex header (like in the code snippet below) with the the options "-std=c++1z -D_GLIBCXX_USE_CXX11_ABI=0" results in an error message. This is a regression introduced between 2018-07-26 and 2018-08-17. =================================== #include <regex> =================================== In file included from /gcc-9/include/c++/9.0.0/string:52, from /gcc-9/include/c++/9.0.0/bitset:47, from /gcc-9/include/c++/9.0.0/regex:39, from bug.cc:1: /gcc-9/include/c++/9.0.0/bits/basic_string.h: In instantiation of 'class std::basic_string<char, std::char_traits<char>, std::pmr::polymorphic_allocator<char> >': /gcc-9/include/c++/9.0.0/regex:77:41: required from here /gcc-9/include/c++/9.0.0/bits/basic_string.h:3103:63: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 3103 | typedef typename _Alloc::template rebind<_CharT>::other _CharT_alloc_type; | ^~~~~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:3116:68: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 3116 | typedef __gnu_cxx::__normal_iterator<pointer, basic_string> iterator; | ^~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:3118:61: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 3118 | const_iterator; | ^~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:3119:53: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 3119 | typedef std::reverse_iterator<const_iterator> const_reverse_iterator; | ^~~~~~~~~~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:3120:52: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 3120 | typedef std::reverse_iterator<iterator> reverse_iterator; | ^~~~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5233:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 5233 | find(const _Tp& __svt, size_type __pos = 0) const | ^~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5311:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 5311 | rfind(const _Tp& __svt, size_type __pos = npos) const | ^~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5395:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 5395 | find_first_of(const _Tp& __svt, size_type __pos = 0) const | ^~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5479:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 5479 | find_last_of(const _Tp& __svt, size_type __pos = npos) const | ^~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5560:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 5560 | find_first_not_of(const _Tp& __svt, size_type __pos = 0) const | ^~~~~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5642:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<char>' 5642 | find_last_not_of(const _Tp& __svt, size_type __pos = npos) const | ^~~~~~~~~~~~~~~~ In file included from bug.cc:3: /gcc-9/include/c++/9.0.0/regex:77:57: error: template argument 1 is invalid 77 | using smatch = match_results<string::const_iterator>; | ^ In file included from /gcc-9/include/c++/9.0.0/string:52, from /gcc-9/include/c++/9.0.0/bitset:47, from /gcc-9/include/c++/9.0.0/regex:39, from bug.cc:1: /gcc-9/include/c++/9.0.0/bits/basic_string.h: In instantiation of 'class std::basic_string<wchar_t, std::char_traits<wchar_t>, std::pmr::polymorphic_allocator<wchar_t> >': /gcc-9/include/c++/9.0.0/regex:80:42: required from here /gcc-9/include/c++/9.0.0/bits/basic_string.h:3103:63: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 3103 | typedef typename _Alloc::template rebind<_CharT>::other _CharT_alloc_type; | ^~~~~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:3116:68: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 3116 | typedef __gnu_cxx::__normal_iterator<pointer, basic_string> iterator; | ^~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:3118:61: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 3118 | const_iterator; | ^~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:3119:53: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 3119 | typedef std::reverse_iterator<const_iterator> const_reverse_iterator; | ^~~~~~~~~~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:3120:52: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 3120 | typedef std::reverse_iterator<iterator> reverse_iterator; | ^~~~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5233:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 5233 | find(const _Tp& __svt, size_type __pos = 0) const | ^~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5311:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 5311 | rfind(const _Tp& __svt, size_type __pos = npos) const | ^~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5395:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 5395 | find_first_of(const _Tp& __svt, size_type __pos = 0) const | ^~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5479:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 5479 | find_last_of(const _Tp& __svt, size_type __pos = npos) const | ^~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5560:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 5560 | find_first_not_of(const _Tp& __svt, size_type __pos = 0) const | ^~~~~~~~~~~~~~~~~ /gcc-9/include/c++/9.0.0/bits/basic_string.h:5642:2: error: no class template named 'rebind' in 'class std::pmr::polymorphic_allocator<wchar_t>' 5642 | find_last_not_of(const _Tp& __svt, size_type __pos = npos) const | ^~~~~~~~~~~~~~~~ In file included from bug.cc:3: /gcc-9/include/c++/9.0.0/regex:80:58: error: template argument 1 is invalid 80 | using wsmatch = match_results<wstring::const_iterator>; | ^
Those std::pmr type aliases should only be defined for the new ABI, because the old std::string doesn't support C++11 allocators.
Fixed.
Author: redi Date: Wed Aug 22 22:54:33 2018 New Revision: 263791 URL: https://gcc.gnu.org/viewcvs?rev=263791&root=gcc&view=rev Log: PR libstdc++/87061 remove pmr type aliases for COW strings The pmr aliases for basic_string and match_results are incompatible with the gcc4-compatible ABI because the Copy-On-Write basic_string class doesn't support C++11 allocators. PR libstdc++/87061 * include/experimental/regex [!_GLIBCXX_USE_CXX11_ABI] (experimental::pmr::match_results, experimental::pmr::cmatch) (experimental::pmr::smatch, experimental::pmr::wcmatch) (experimental::pmr::wsmatch): Do not declare for gcc4-compatible ABI, because COW strings don't support C++11 allocator model. * include/experimental/string [!_GLIBCXX_USE_CXX11_ABI] (experimental::pmr::basic_string, experimental::pmr::string) (experimental::pmr::u16string, experimental::pmr::u32string) (experimental::pmr::wstring): Likewise. * include/std/regex [!_GLIBCXX_USE_CXX11_ABI] (pmr::match_results) (pmr::cmatch, pmr::smatch, pmr::wcmatch, pmr::wsmatch): Likewise. * include/std/string [!_GLIBCXX_USE_CXX11_ABI] (pmr::basic_string) (pmr::string, pmr::u16string, pmr::u32string, pmr::wstring): Likewise. * testsuite/21_strings/basic_string/types/pmr_typedefs.cc: Require cxx11-abi. * testsuite/28_regex/match_results/pmr_typedefs.cc: Likewise. Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/include/experimental/regex trunk/libstdc++-v3/include/experimental/string trunk/libstdc++-v3/include/std/regex trunk/libstdc++-v3/include/std/string trunk/libstdc++-v3/testsuite/21_strings/basic_string/types/pmr_typedefs.cc trunk/libstdc++-v3/testsuite/28_regex/match_results/pmr_typedefs.cc
Author: redi Date: Fri Oct 12 12:28:36 2018 New Revision: 265086 URL: https://gcc.gnu.org/viewcvs?rev=265086&root=gcc&view=rev Log: Fix experimental::pmr typedefs and add tests The typedefs in <experimental/regex> and <experimental/string> don't need to be in the __cxx11 namespace, because they are only aliases and so will have the same mangled name as the underlying types. Backport from mainline 2018-08-23 Jonathan Wakely <jwakely@redhat.com> * testsuite/21_strings/basic_string/init-list.cc: Require cxx11-abi. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc: Likewise. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc: Likewise. Backport from mainline 2018-08-22 Jonathan Wakely <jwakely@redhat.com> PR libstdc++/87061 * include/experimental/regex [!_GLIBCXX_USE_CXX11_ABI] (experimental::pmr::match_results, experimental::pmr::cmatch) (experimental::pmr::smatch, experimental::pmr::wcmatch) (experimental::pmr::wsmatch): Do not declare for gcc4-compatible ABI, because COW strings don't support C++11 allocator model. * include/experimental/string [!_GLIBCXX_USE_CXX11_ABI] (experimental::pmr::basic_string, experimental::pmr::string) (experimental::pmr::u16string, experimental::pmr::u32string) (experimental::pmr::wstring): Likewise. Backport from mainline 2018-08-15 Jonathan Wakely <jwakely@redhat.com> * include/experimental/regex: Remove begin/end macros for namespace. * include/experimental/string: Likewise. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_forward_list.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_multimap.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_multiset.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_map.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_multimap.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_multiset.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_set.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc: New test. Added: branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/ branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_forward_list.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_multimap.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_multiset.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_map.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_multimap.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_multiset.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_set.cc branches/gcc-8-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc Modified: branches/gcc-8-branch/libstdc++-v3/ChangeLog branches/gcc-8-branch/libstdc++-v3/include/experimental/regex branches/gcc-8-branch/libstdc++-v3/include/experimental/string branches/gcc-8-branch/libstdc++-v3/testsuite/21_strings/basic_string/init-list.cc
Author: redi Date: Fri Oct 12 12:51:29 2018 New Revision: 265093 URL: https://gcc.gnu.org/viewcvs?rev=265093&root=gcc&view=rev Log: Fix experimental::pmr typedefs and add tests The typedefs in <experimental/regex> and <experimental/string> don't need to be in the __cxx11 namespace, because they are only aliases and so will have the same mangled name as the underlying types. Backport from mainline 2018-08-23 Jonathan Wakely <jwakely@redhat.com> * testsuite/21_strings/basic_string/init-list.cc: Require cxx11-abi. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc: Likewise. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc: Likewise. Backport from mainline 2018-08-22 Jonathan Wakely <jwakely@redhat.com> PR libstdc++/87061 * include/experimental/regex [!_GLIBCXX_USE_CXX11_ABI] (experimental::pmr::match_results, experimental::pmr::cmatch) (experimental::pmr::smatch, experimental::pmr::wcmatch) (experimental::pmr::wsmatch): Do not declare for gcc4-compatible ABI, because COW strings don't support C++11 allocator model. * include/experimental/string [!_GLIBCXX_USE_CXX11_ABI] (experimental::pmr::basic_string, experimental::pmr::string) (experimental::pmr::u16string, experimental::pmr::u32string) (experimental::pmr::wstring): Likewise. Backport from mainline 2018-08-15 Jonathan Wakely <jwakely@redhat.com> * include/experimental/regex: Remove begin/end macros for namespace. * include/experimental/string: Likewise. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_forward_list.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_multimap.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_multiset.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_map.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_multimap.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_multiset.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_set.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc: New test. Added: branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/ branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_forward_list.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_multimap.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_multiset.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_map.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_multimap.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_multiset.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_set.cc branches/gcc-7-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc Modified: branches/gcc-7-branch/libstdc++-v3/ChangeLog branches/gcc-7-branch/libstdc++-v3/include/experimental/regex branches/gcc-7-branch/libstdc++-v3/include/experimental/string branches/gcc-7-branch/libstdc++-v3/testsuite/21_strings/basic_string/init-list.cc
Author: redi Date: Fri Oct 12 13:04:38 2018 New Revision: 265098 URL: https://gcc.gnu.org/viewcvs?rev=265098&root=gcc&view=rev Log: Fix experimental::pmr typedefs and add tests The typedefs in <experimental/regex> and <experimental/string> don't need to be in the __cxx11 namespace, because they are only aliases and so will have the same mangled name as the underlying types. Backport from mainline 2018-08-22 Jonathan Wakely <jwakely@redhat.com> PR libstdc++/87061 * include/experimental/regex [!_GLIBCXX_USE_CXX11_ABI] (experimental::pmr::match_results, experimental::pmr::cmatch) (experimental::pmr::smatch, experimental::pmr::wcmatch) (experimental::pmr::wsmatch): Do not declare for gcc4-compatible ABI, because COW strings don't support C++11 allocator model. * include/experimental/string [!_GLIBCXX_USE_CXX11_ABI] (experimental::pmr::basic_string, experimental::pmr::string) (experimental::pmr::u16string, experimental::pmr::u32string) (experimental::pmr::wstring): Likewise. Backport from mainline 2018-08-15 Jonathan Wakely <jwakely@redhat.com> * include/experimental/regex: Remove begin/end macros for namespace. * include/experimental/string: Likewise. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_forward_list.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_multimap.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_multiset.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_map.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_multimap.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_multiset.cc: New test. * testsuite/experimental/polymorphic_allocator/ pmr_typedefs_unordered_set.cc: New test. * testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc: New test. Added: branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/ branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_forward_list.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_multimap.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_multiset.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_map.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_multimap.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_multiset.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_set.cc branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc Modified: branches/gcc-6-branch/libstdc++-v3/ChangeLog branches/gcc-6-branch/libstdc++-v3/include/experimental/regex branches/gcc-6-branch/libstdc++-v3/include/experimental/string