pub trait Partial: Copy { } pub trait Complete: Partial { } impl Partial for T where T: Complete {} impl Complete for T {} //~ ERROR the trait bound `T: Copy` is not satisfied fn main() {}