`DerefMove` as two separate traits

I still don't understand what's this problem for Layout. As I already said:

Can't you get the layout from the raw pointers since they need to be valid anyway?

A valid raw pointer allow you create a reference and use it to call Layout::for_value. Not to mention that there's an unstable Layout::for_value_raw