Fix for better Windows support.
llvm-svn: 354239
OptionalStorage &operator=(OptionalStorage &&other) {
if (other.hasValue())
- emplace(std::move(other).getValue());
+ emplace(std::move(other.getValue()));
else
reset();
return *this;
}
#if LLVM_HAS_RVALUE_REFERENCE_THIS
- T &&getValue() && { return std::move(Storage).getValue(); }
- T &&operator*() && { return std::move(Storage).getValue(); }
+ T &&getValue() && { return std::move(Storage.getValue()); }
+ T &&operator*() && { return std::move(Storage.getValue()); }
template <typename U>
T getValueOr(U &&value) && {