Allocations and copies are one of the things substructural typing formalizes. It's how E.g. Rust essentially eliminates implicit copies.
I think I've heard of Rust devs complaining about moves having implicit bitwise copies that were not optimized away.
I think I've heard of Rust devs complaining about moves having implicit bitwise copies that were not optimized away.