diff --git a/vvp/vvp_net.cc b/vvp/vvp_net.cc index cdf3cfe67..6fdc1f744 100644 --- a/vvp/vvp_net.cc +++ b/vvp/vvp_net.cc @@ -2308,7 +2308,8 @@ vvp_vector8_t::vvp_vector8_t(const vvp_vector4_t&that, vvp_vector8_t& vvp_vector8_t::operator= (const vvp_vector8_t&that) { // Assign to self. - if (size_ > PTR_THRESH && that.size_ > PTR_THRESH && ptr_ == that.ptr_) + if (this == &that || (size_ > PTR_THRESH && that.size_ > PTR_THRESH && + ptr_ == that.ptr_)) return *this; if (size_ != that.size_) {