Created on 2016-08-27.00:00:00 last changed 90 months ago
Proposed resolution:
Resolved by the wording provided by LWG 2769.
[ Issues Telecon 16-Dec-2016 ]
Move to Tentatively Ready
[ 2016-09-09 Issues Resolution Telecon ]
P0; move to Tentatively Ready
Previous resolution [SUPERSEDED]:
This wording is relative to N4606.
In [any.nonmembers] p5, edit as follows:
template<class ValueType> ValueType any_cast(const any& operand); template<class ValueType> ValueType any_cast(any& operand); template<class ValueType> ValueType any_cast(any&& operand);-4- Requires: is_reference_v<ValueType> is true or is_copy_constructible_v<ValueType> is true. Otherwise the program is ill-formed.
-5- Returns: For the first form, *any_cast<add_const_t<remove_reference_t<ValueType>>>(&operand). For the second
and thirdforms, *any_cast<remove_reference_t<ValueType>>(&operand). For the third form, std::forward<ValueType>(*any_cast<remove_reference_t<ValueType>>(&operand)).[…]
LWG 2509 made two changes to the specification of any in v2 of the library fundamentals TS:
Change 1 has very desirable effects; I propose that we apply the sane part of LWG 2509 to any in the C++17 WP, for all of the reasons cited in the discussion of LWG 2509.
History | |||
---|---|---|---|
Date | User | Action | Args |
2017-07-30 20:15:43 | admin | set | status: wp -> c++17 |
2017-03-05 23:41:16 | admin | set | status: ready -> wp |
2016-12-16 21:09:36 | admin | set | messages: + msg8754 |
2016-12-16 21:09:36 | admin | set | status: open -> ready |
2016-11-14 03:53:34 | admin | set | status: ready -> open |
2016-09-12 04:36:33 | admin | set | messages: + msg8509 |
2016-09-12 04:36:33 | admin | set | status: new -> ready |
2016-09-05 18:03:29 | admin | set | messages: + msg8493 |
2016-08-27 00:00:00 | admin | create |