Proposed resolution:
This wording is relative to N4950.
Modify [expected.void.obs] as indicated:
constexpr void value() const &;-?- Mandates: is_copy_constructible_v<E> is true.
-3- Throws: bad_expected_access(error()) if has_value() is false.
constexpr void value() &&;-?- Mandates: is_copy_constructible_v<E> is true and is_move_constructible_v<E> is true.
-4- Throws: bad_expected_access(std::move(error())) if has_value() is false.