I don't see why it may fail to integrate. Declare Pin as !Move and... thats all? I mean, there will be issues, edge-cases because it is just how these things happen, but still I don't see any fundamental issues with continuing to use Pin.
Pin applies to the pointer, !Move applies to the pointee.
Pin applies to the pointer, !Move applies to the pointee.