All valid iterators, references and sub-arrays of both x and *this keep their validity, and are now referring to the same elements they referred to before the call, but in the other valarray.
Note that the end iterators do not refer to elements and may be invalidated.
Data races
Both the object and x are modified.
Exception safety
No-throw guarantee: this member function never throws exceptions.