error[E0568]: auto traits cannot have super traits or lifetime bounds --> $DIR/supertrait-auto-trait.rs:8:17 | LL | auto trait Magic: Copy {} | -----^^^^^^ help: remove the super traits or lifetime bounds | | | auto traits cannot have super traits or lifetime bounds error[E0277]: the trait bound `NoClone: Magic` is not satisfied --> $DIR/supertrait-auto-trait.rs:16:23 | LL | let (a, b) = copy(NoClone); | ---- ^^^^^^^ the trait `Copy` is not implemented for `NoClone`, which is required by `NoClone: Magic` | | | required by a bound introduced by this call | note: required for `NoClone` to implement `Magic` --> $DIR/supertrait-auto-trait.rs:8:12 | LL | auto trait Magic: Copy {} | ^^^^^ note: required by a bound in `copy` --> $DIR/supertrait-auto-trait.rs:10:12 | LL | fn copy(x: T) -> (T, T) { (x, x) } | ^^^^^ required by this bound in `copy` help: consider annotating `NoClone` with `#[derive(Copy)]` | LL + #[derive(Copy)] LL | struct NoClone; | error: aborting due to 2 previous errors Some errors have detailed explanations: E0277, E0568. For more information about an error, try `rustc --explain E0277`.