gcc/libstdc++-v3/testsuite
Jonathan Wakely e182158261 PR libstdc++/86751 default assignment operators for std::pair
The solution for PR 77537 causes ambiguities due to the extra copy
assignment operator taking a __nonesuch_no_braces parameter. By making
the base class non-assignable we don't need the extra deleted overload
in std::pair. The copy assignment operator will be implicitly deleted
(and the move assignment operator not declared) as needed. Without the
additional user-provided operator in std::pair the ambiguity is avoided.

	PR libstdc++/86751
	* include/bits/stl_pair.h (__pair_base): New class with deleted copy
	assignment operator.
	(pair): Derive from __pair_base.
	(pair::operator=): Remove deleted overload.
	* python/libstdcxx/v6/printers.py (StdPairPrinter): New pretty printer
	so that new base class isn't shown in GDB.
	* testsuite/20_util/pair/86751.cc: New test.
	* testsuite/20_util/pair/ref_assign.cc: New test.

From-SVN: r263185
2018-07-31 23:31:20 +01:00
..
17_intro P0754R2 <version> header 2018-06-18 17:42:11 +01:00
18_support Add workaround for aligned_alloc bug on AIX 2018-07-30 18:12:44 +01:00
19_diagnostics PR libstdc++/85831 define move constructors and operators for exceptions 2018-07-05 22:29:51 +01:00
20_util PR libstdc++/86751 default assignment operators for std::pair 2018-07-31 23:31:20 +01:00
21_strings Remove dg-require-cstdint directive from tests 2018-07-26 15:02:26 +01:00
22_locale Remove dg-require-cstdint directive from tests 2018-07-26 15:02:26 +01:00
23_containers Add missing dg-require-cstdint directives to tests 2018-07-26 15:03:28 +01:00
24_iterators PR libstdc++/86734 make reverse_iterator::operator-> more robust 2018-07-30 18:13:05 +01:00
25_algorithms Add missing dg-require-cstdint directives to tests 2018-07-26 15:03:28 +01:00
26_numerics Add missing dg-require-cstdint directives to tests 2018-07-26 15:03:28 +01:00
27_io P0935R0 Eradicating unnecessarily explicit default constructors 2018-07-06 13:39:02 +01:00
28_regex Optimize std::sub_match comparisons using string_view-like type 2018-07-02 21:31:11 +01:00
29_atomics Add missing dg-require-cstdint directives to tests 2018-07-26 15:03:28 +01:00
30_threads * 30_threads/condition_variable_any/cond.cc: New test. 2018-07-26 21:23:12 +00:00
abi Update copyright years. 2018-01-03 11:03:58 +01:00
backward Remove duplicate function call in test 2018-05-02 17:27:01 +01:00
config Update copyright years. 2018-01-03 11:03:58 +01:00
data
decimal Update copyright years. 2018-01-03 11:03:58 +01:00
experimental Add missing dg-require-cstdint directives to tests 2018-07-26 15:03:28 +01:00
ext Add missing dg-require-cstdint directives to tests 2018-07-26 15:03:28 +01:00
lib Define "random_device" effective target 2018-07-04 17:56:21 +01:00
libstdc++-abi Update copyright years. 2018-01-03 11:03:58 +01:00
libstdc++-dg Update copyright years. 2018-01-03 11:03:58 +01:00
libstdc++-prettyprinters printers.py (NodeIteratorPrinter): New. 2018-03-08 06:26:15 +00:00
libstdc++-xmethods Update copyright years. 2018-01-03 11:03:58 +01:00
performance Update copyright years. 2018-01-03 11:03:58 +01:00
special_functions PR libstdc++/83140 - assoc_legendre returns negated value when m is odd 2018-05-10 13:59:52 +00:00
tr1 Add missing dg-require-cstdint directives to tests 2018-07-26 15:03:28 +01:00
tr2 Update copyright years. 2018-01-03 11:03:58 +01:00
util Add initial version of C++17 <memory_resource> header 2018-07-24 22:09:55 +01:00
Makefile.am Update copyright years. 2018-01-03 11:03:58 +01:00
Makefile.in PR libstdc++/86450 use -Wabi=2 and simplify -Werror use 2018-07-17 14:18:47 +01:00