cpp/experimental/propagate const/swap

Swaps the wrapped pointer with that of. Let designate the private data member that is the wrapped pointer-like object, then this function is equivalent to, where the overload resolution for  is performed among std and any declaration found by the usual lookup rules, as described in.

The behavior is undefined if lvalues of do not satisfy.