Proposed resolution:
Add a paragraph to [array.special]:
template <Swappable T, size_t N> void swap(array<T,N>& x, array<T,N>& y);Effects:
swap_ranges(x.begin(), x.end(), y.begin());[Note: Outstanding iterators, references and pointers may be invalidated. — end note]