This implements the missing move assignment to make std::swap work on auto_vec<>
Bootstrapped / tesed on x86_64-unknown-linux-gnu, pushed. Richard. 2020-09-25 Richard Biener <rguent...@suse.de> PR middle-end/97207 * vec.h (auto_vec<T>::operator=(auto_vec<T>&&)): Implement. --- gcc/vec.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/vec.h b/gcc/vec.h index d73d865cff2..d8c7cdac073 100644 --- a/gcc/vec.h +++ b/gcc/vec.h @@ -1546,7 +1546,13 @@ public: this->m_vec = r.m_vec; r.m_vec = NULL; } - void operator= (auto_vec&&) = delete; + auto_vec& operator= (auto_vec&& r) + { + this->release (); + this->m_vec = r.m_vec; + r.m_vec = NULL; + return *this; + } }; -- 2.26.2