gcc/libstdc++-v3/testsuite/20_util/pair
Ville Voutilainen f524d5b34a re PR libstdc++/77537 (pair constructors do not properly SFINAE)
PR libstdc++/77537
	Implement LWG 2729 for pair.
	* include/bits/stl_pair.h (_PCC): New.
	(_ConstructiblePair, _ImplicitlyConvertiblePair):
	Turn into static member functions of _PCC.
	(_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise.
	(_PCCP): New.
	(pair(const _T1&, const _T2&)): Adjust.
	(_PCCFP): New.
	(pair(const pair<_U1, _U2>&)): Adjust.
	(pair(_U1&&, const _T2&)): Likewise.
	(pair(const _T1&, _U2&&)): Likewise.
	(pair(_U1&&, _U2&&)): Likewise.
	(pair(pair<_U1, _U2>&&)): Likewise.
	(operator=(const pair&)): Make conditionally deleted.
	(operator=(pair&&)): Make conditionally suppressed.
	(operator=(const pair<_U1, _U2>&)): Constrain.
	(operator=(pair<_U1, _U2>&&): Likewise.
	* include/std/type_traits (__nonesuch): New.
	* testsuite/20_util/pair/traits.cc: New.

From-SVN: r240322
2016-09-21 19:48:35 +03:00
..
astuple Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
comparison_operators Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
cons Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
make_pair Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
requirements Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
1.cc Update copyright years. 2016-01-04 15:30:50 +01:00
2.cc Update copyright years. 2016-01-04 15:30:50 +01:00
3.cc Update copyright years. 2016-01-04 15:30:50 +01:00
4.cc Update copyright years. 2016-01-04 15:30:50 +01:00
40925.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
44487.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
70437.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
constexpr_get.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
moveable.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
noexcept_move_assign.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
noexcept_swap.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
noncopyable.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
piecewise2.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
piecewise.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
swap.cc Use effective-target instead of -std options 2016-08-26 12:41:37 +01:00
traits.cc re PR libstdc++/77537 (pair constructors do not properly SFINAE) 2016-09-21 19:48:35 +03:00