gcc/libstdc++-v3/include
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
..
backward P0935R0 Eradicating unnecessarily explicit default constructors 2018-06-14 15:12:24 +01:00
bits PR libstdc++/86751 default assignment operators for std::pair 2018-07-31 23:31:20 +01:00
c
c_compatibility
c_global Remove <chrono> dependency on _GLIBCXX_USE_C99_STDINT_TR1 2018-07-26 15:01:55 +01:00
c_std
debug functions.h (__gnu_debug::__check_string): Move... 2018-07-06 17:02:33 +00:00
decimal
experimental Remove char16_t and char32_t dependency on <stdint.h> 2018-07-26 15:02:01 +01:00
ext Replace safe bool idiom with explicit operator bool 2018-07-31 15:55:36 +01:00
parallel
precompiled Add initial version of C++17 <memory_resource> header 2018-07-24 22:09:55 +01:00
profile
std Don't unconditionally define feature test macros in <version> 2018-07-31 23:31:14 +01:00
tr1 PR libstdc++/83140 - assoc_legendre returns negated value when m is odd 2018-05-10 13:59:52 +00:00
tr2
Makefile.am Move std::unique_lock definition to a separate header 2018-07-25 11:40:12 +01:00
Makefile.in Move std::unique_lock definition to a separate header 2018-07-25 11:40:12 +01:00