error[E0404]: expected trait, found type alias `Foo` --> $DIR/issue-3907.rs:11:6 | LL | impl Foo for S { | ^^^ type aliases cannot be used as traits | help: you might have meant to use `#![feature(trait_alias)]` instead of a `type` alias --> $DIR/issue-3907.rs:5:1 | LL | type Foo = dyn issue_3907::Foo; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: possible better candidate is found in another module, you can import it into scope | LL | use issue_3907::Foo; | error: aborting due to previous error For more information about this error, try `rustc --explain E0404`.