gcc/libstdc++-v3/include
Ville Voutilainen 86c0ec1de1 Implement P0307R2, Making Optional Greater Equal Again.
* include/experimental/optional (_Has_addressof): Fix the comment.
	* include/std/optional (_Has_addressof): Likewise.
	(operator=(_Up&&)): Constrain.
	(operator=(const optional<_Up>&)): Likewise.
	(operator=(optional<_Up>&&)): Likewise.
	(__optional_relop_t): New.
	(operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
	(operator!=(const optional<_Tp>&, const optional<_Tp>&)):
	Constrain and make transparent.
	(operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
	(operator>(const optional<_Tp>&, const optional<_Tp>&)):
	Constrain and make transparent.
	(operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
	(operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
	(operator==(const optional<_Tp>&, const _Tp&): Constrain.
	(operator==(const _Tp&, const optional<_Tp>&)): Likewise.
	(operator!=(const optional<_Tp>&, _Tp const&)):
	Constrain and make transparent.
	(operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
	(operator<(const optional<_Tp>&, const _Tp&)): Constrain.
	(operator<(const _Tp&, const optional<_Tp>&)): Likewise.
	(operator>(const optional<_Tp>&, const _Tp&)):
	Constrain and make transparent.
	(operator>(const _Tp&, const optional<_Tp>&)): Likewise.
	(operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
	(operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
	(operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
	(operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
	* testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
	* testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
	* testsuite/20_util/optional/relops/1.cc: Likewise.
	* testsuite/20_util/optional/relops/2.cc: Likewise.
	* testsuite/20_util/optional/relops/3.cc: Likewise.
	* testsuite/20_util/optional/relops/4.cc: Likewise.
	* testsuite/20_util/optional/requirements.cc: Add tests to verify
	that optional's relops are transparent and don't synthesize
	operators. Also test that assignment sfinaes.

From-SVN: r238292
2016-07-13 14:25:51 +03:00
..
backward
bits Add non-const overload of std::string::data() 2016-07-13 12:08:37 +01:00
c
c_compatibility
c_global re PR libstdc++/69881 (with gcc-6 of today building gcc-4.9 fails) 2016-02-23 15:57:09 +00:00
c_std
debug array (array<>::swap): Fix noexcept qualificaton for zero-size array. 2016-06-23 20:21:47 +00:00
decimal
experimental Implement P0307R2, Making Optional Greater Equal Again. 2016-07-13 14:25:51 +03:00
ext Avoid -Wsign-compare warnings in std::to_string() 2016-04-18 16:43:50 +01:00
parallel
precompiled
profile
std Implement P0307R2, Making Optional Greater Equal Again. 2016-07-13 14:25:51 +03:00
tr1 re PR libstdc++/71181 (Reserving in unordered_map doesn't reserve enough) 2016-06-20 20:04:25 +00:00
tr2
Makefile.am Implement std::optional. 2016-07-10 20:44:21 +03:00
Makefile.in Implement std::optional. 2016-07-10 20:44:21 +03:00