gcc/libstdc++-v3/include/std
Jonathan Wakely 1bc7a28f94 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.

From-SVN: r263791
2018-08-22 23:54:33 +01:00
..
algorithm Update copyright years. 2018-01-03 11:03:58 +01:00
any Define std::remove_cvref and std::remove_cvref_t for C++2a 2018-05-03 13:40:10 +01:00
array Update copyright years. 2018-01-03 11:03:58 +01:00
atomic Implement P0558R2 changes to std::atomic 2018-05-24 16:28:26 +01:00
bit Minor refactoring in <bit> header 2018-07-24 14:51:50 +01:00
bitset Define special members as defaulted 2018-06-08 17:43:14 +01:00
charconv Update copyright years. 2018-01-03 11:03:58 +01:00
chrono Simplify overflow checks in duration literals 2018-08-14 14:55:21 +01:00
codecvt Remove char16_t and char32_t dependency on <stdint.h> 2018-07-26 15:02:01 +01:00
complex Define special members as defaulted 2018-06-08 17:43:14 +01:00
condition_variable Use steady_clock to implement condition_variable::wait_for 2018-08-01 16:39:57 +01:00
deque Define aliases for containers using polymorphic_allocator 2018-08-10 00:25:53 +01:00
filesystem Update copyright years. 2018-01-03 11:03:58 +01:00
forward_list Define aliases for containers using polymorphic_allocator 2018-08-10 00:25:53 +01:00
fstream Add support for opening file streams from wide character strings 2018-05-21 18:18:35 +01:00
functional PR libstdc++/83607 specialize Boyer-Moore searchers for std::byte 2018-01-04 10:21:29 +00:00
future Remove <chrono> dependency on _GLIBCXX_USE_C99_STDINT_TR1 2018-07-26 15:01:55 +01:00
iomanip PR libstdc++/86008 add std::quoted support for string_view 2018-06-06 07:05:07 +01:00
ios Update copyright years. 2018-01-03 11:03:58 +01:00
iosfwd Update copyright years. 2018-01-03 11:03:58 +01:00
iostream Update copyright years. 2018-01-03 11:03:58 +01:00
istream Update copyright years. 2018-01-03 11:03:58 +01:00
iterator Update copyright years. 2018-01-03 11:03:58 +01:00
limits Update copyright years. 2018-01-03 11:03:58 +01:00
list Define aliases for containers using polymorphic_allocator 2018-08-10 00:25:53 +01:00
locale Update copyright years. 2018-01-03 11:03:58 +01:00
map Define aliases for containers using polymorphic_allocator 2018-08-10 00:25:53 +01:00
memory Modify some library internals to work without <stdint.h> 2018-07-26 15:02:05 +01:00
memory_resource Refactor uses-allocator construction 2018-08-15 20:20:02 +01:00
mutex Remove <chrono> dependency on _GLIBCXX_USE_C99_STDINT_TR1 2018-07-26 15:01:55 +01:00
numeric Update copyright years. 2018-01-03 11:03:58 +01:00
optional Refactor std::optional SFINAE constraints 2018-08-20 13:13:25 +01:00
ostream Avoid deprecation warning with -Wsystem-headers 2018-08-16 17:56:40 +01:00
queue Update copyright years. 2018-01-03 11:03:58 +01:00
random Update copyright years. 2018-01-03 11:03:58 +01:00
ratio Remove <chrono> dependency on _GLIBCXX_USE_C99_STDINT_TR1 2018-07-26 15:01:55 +01:00
regex PR libstdc++/87061 remove pmr type aliases for COW strings 2018-08-22 23:54:33 +01:00
scoped_allocator Refactor uses-allocator construction 2018-08-15 20:20:02 +01:00
set Define aliases for containers using polymorphic_allocator 2018-08-10 00:25:53 +01:00
shared_mutex Remove <chrono> dependency on _GLIBCXX_USE_C99_STDINT_TR1 2018-07-26 15:01:55 +01:00
sstream P0935R0 Eradicating unnecessarily explicit default constructors 2018-07-06 13:39:02 +01:00
stack Update copyright years. 2018-01-03 11:03:58 +01:00
stdexcept PR libstdc++/85831 define move constructors and operators for exceptions 2018-07-05 22:29:51 +01:00
streambuf Update copyright years. 2018-01-03 11:03:58 +01:00
string PR libstdc++/87061 remove pmr type aliases for COW strings 2018-08-22 23:54:33 +01:00
string_view Remove char16_t and char32_t dependency on <stdint.h> 2018-07-26 15:02:01 +01:00
system_error Some libstdc++ fixes for -Wdeprecated-copy. 2018-05-18 16:02:14 -04:00
thread Remove <chrono> dependency on _GLIBCXX_USE_C99_STDINT_TR1 2018-07-26 15:01:55 +01:00
tuple PR libstdc++/86963 Remove use of __tuple_base in std::tuple 2018-08-20 14:53:56 +01:00
type_traits Refactor std::optional SFINAE constraints 2018-08-20 13:13:25 +01:00
typeindex Update copyright years. 2018-01-03 11:03:58 +01:00
unordered_map Define aliases for containers using polymorphic_allocator 2018-08-10 00:25:53 +01:00
unordered_set Define aliases for containers using polymorphic_allocator 2018-08-10 00:25:53 +01:00
utility Remove unused <exception> header from <utility> 2018-06-19 18:19:16 +01:00
valarray LWG 3074 make scalar types non-deduced in valarray non-member functions 2018-06-14 20:36:54 +01:00
variant PR libstdc++/86874 fix std::variant::swap regression 2018-08-07 20:13:26 +01:00
vector Define aliases for containers using polymorphic_allocator 2018-08-10 00:25:53 +01:00
version Don't unconditionally define feature test macros in <version> 2018-07-31 23:31:14 +01:00