An attempt to implement the Copy trait for an enum failed because one of the
variants does not implement Copy. To fix this, you must implement Copy for
the mentioned variant. Note that this may not be possible, as in the example of
enum Foo {
Bar(Vec<u32>),
Baz,
}
impl Copy for Foo { }RunThis fails because Vec<T> does not implement Copy for any T.
Here’s another example that will fail:
#[derive(Copy)]
enum Foo<'a> {
Bar(&'a mut bool),
Baz,
}RunThis fails because &mut T is not Copy, even when T is Copy (this
differs from the behavior for &T, which is always Copy).