error[E0277]: the trait bound `dyn Setup: Setup` is not satisfied --> $DIR/object-unsafety.rs:12:12 | LL | copy::>(t) | ^^^^^^^^^^^^^^^^^ the trait `Setup` is not implemented for `dyn Setup` | note: required by a bound in `copy` --> $DIR/object-unsafety.rs:7:12 | LL | fn copy(from: &U::From) -> U::From { | ^^^^^ required by this bound in `copy` help: consider introducing a `where` clause, but there might be an alternative better way to express this requirement | LL | pub fn copy_any(t: &T) -> T where dyn Setup: Setup { | ++++++++++++++++++++++++++++++++ error: aborting due to previous error For more information about this error, try `rustc --explain E0277`.