gcc/libstdc++-v3/include/std
Ville Voutilainen b641f833ba re PR libstdc++/77288 (Std::experimental::optional::operator= implementation is broken in gcc 6.1)
PR libstdc++/77288
	* include/std/optional (__is_optional_impl, __is_optional): Remove.
	(__converts_from_optional, __assigns_from_optional): New.
	(optional(_Up&&)): Use is_same instead of __is_optional.
	(optional(const optional<_Up>&)): Constrain with
	__converts_from_optional.
	(optional(optional<_Up>&&)): Likewise.
	(operator=(_Up&&)): Use is_same instead of __is_optional, check
	is_same and is_scalar.
	(operator=(const optional<_Up>&)): Constrain with
	__converts_from_optional and __assigns_from_optional.
	(operator=(optional<_Up>&&)): Likewise.
	* testsuite/20_util/optional/77288.cc: New.
	* testsuite/20_util/optional/cons/value.cc: Adjust.

From-SVN: r240324
2016-09-21 20:37:17 +03:00
..
algorithm
any Implement LWG 2744 and LWG 2754. 2016-08-15 18:06:09 +03:00
array Add constexpr to <iterator> and <array> for C++17 2016-08-23 11:13:12 +01:00
atomic Define std::atomic<T>::is_always_lock_free for C++17 2016-08-19 16:42:27 +01:00
bitset
chrono Implement C++17 rounding functions for std::chrono (P0092R1) 2016-08-05 14:52:59 +01:00
codecvt
complex
condition_variable
deque
forward_list
fstream
functional Implement P0253R1, Fixing a design mistake in the searchers interface in Library Fundamentals. 2016-09-12 18:48:32 +03:00
future
iomanip
ios
iosfwd
iostream
istream LWG 2328 Rvalue stream extraction should use perfect forwarding 2016-07-20 19:21:53 +01:00
iterator
limits
list
locale
map
memory
mutex
numeric
optional re PR libstdc++/77288 (Std::experimental::optional::operator= implementation is broken in gcc 6.1) 2016-09-21 20:37:17 +03:00
ostream
queue
random
ratio Implement C++17 variable templates for type traits. 2016-07-29 22:01:39 +03:00
regex
scoped_allocator
set
shared_mutex Define C++17 feature-test macros 2016-08-03 19:11:10 +01:00
sstream
stack
stdexcept
streambuf
string
string_view Implement std::string_view and P0254r2, 2016-07-28 18:15:26 +03:00
system_error Implement C++17 variable templates for type traits. 2016-07-29 22:01:39 +03:00
thread
tuple Implement LWG 2729 for tuple. 2016-09-21 20:25:16 +03:00
type_traits re PR libstdc++/77537 (pair constructors do not properly SFINAE) 2016-09-21 19:48:35 +03:00
typeindex
unordered_map
unordered_set
utility Implement LWG 2744 and LWG 2754. 2016-08-15 18:06:09 +03:00
valarray
variant variant: include bits/move.h for std::addressof. 2016-09-05 19:52:11 +00:00
vector