Addresses: fund.ts.v2
[func.wrap.func.mod] says that the precondition of swap is
this->get_memory_resource() == other->get_memory_resource()
That compares two pointers and so requires the memory resource used by *this and other to be the exact same object. That doesn't seem correct (for one, it would essentially outlaw swapping all functions constructed with "plain" allocators, since they would each have their own resource_adaptor object and so the pointers will not compare equal). Presumably the intent is to compare the memory_resources for equality.
Also, other is a reference, not a pointer.