error[E0599]: no method named `clone` found for struct `Bar` in the current scope --> $DIR/derive-assoc-type-not-impl.rs:18:30 | LL | struct Bar { | ------------------ | | | method `clone` not found for this | doesn't satisfy `Bar: std::clone::Clone` ... LL | struct NotClone; | ---------------- doesn't satisfy `NotClone: std::clone::Clone` ... LL | Bar:: { x: 1 }.clone(); | ^^^^^ method not found in `Bar` | ::: $SRC_DIR/libcore/clone.rs:LL:COL | LL | fn clone(&self) -> Self; | ----- | | | the method is available for `std::sync::Arc>` here | the method is available for `std::rc::Rc>` here | = note: the method `clone` exists but the following trait bounds were not satisfied: `NotClone: std::clone::Clone` which is required by `Bar: std::clone::Clone` = help: items from traits can only be used if the trait is implemented and in scope = note: the following trait defines an item `clone`, perhaps you need to implement it: candidate #1: `std::clone::Clone` error: aborting due to previous error For more information about this error, try `rustc --explain E0599`.