use std::sync::Arc; struct NoClone ; struct WrapArc 
Do you think this code should compile?
What about the following code:
struct AlwaysEq 
The second example is a bit far fetched, but you probably answered yes.
But neither do.
Why not?
The implementation of #[derive(Clone)] in the Rust compiler generates a Clone implementation with the following requirements on the derived type:
All fields must be Clone .
. All generic parameters must be Clone .
... continue reading