Must p really be valid? What does »valid« mean in the first place if the function is also documented to silently ignore unmanaged memory?