This is still not true, as I also mentioned in the other thread. The compiler is not stalking your code looking for places to inject unnecessary copies. If you write code that requires a copy, Copy
allows the compiler to insert it, but not implementing Copy
in that case would make the code not compile. I'm aware of this exception but it is not generally what people are talking about when they say Copy
allows the compiler to make copies for you.
!Copy
is not an effective guard against unnecessary copies.