You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mandates: U is a non-array object type other than in_place_t or nullopt_t. The declaration U u(invoke(std::forward<F>(f), value()));
is well-formed for some invented variable u.
In this declartion, invoke(std::forward<F>(f), value()) is a prvalue of cvU since U is remove_cv_t<invoke_result_t<F>>, so the declaration would be well-formed as long as U is well-formed.
Should we just say U is well-formed instead, or don't explicitly say any additional requirement given it is implicitly required that U is well-formed?
expected::transform and expected::transform_error have the same issue.
The text was updated successfully, but these errors were encountered:
[optional.monadic]/8 currently states:
In this declartion,
invoke(std::forward<F>(f), value())
is a prvalue of cvU
sinceU
isremove_cv_t<invoke_result_t<F>>
, so the declaration would be well-formed as long asU
is well-formed.Should we just say
U
is well-formed instead, or don't explicitly say any additional requirement given it is implicitly required thatU
is well-formed?expected::transform
andexpected::transform_error
have the same issue.The text was updated successfully, but these errors were encountered: