#![feature(impl_trait_in_bindings)] | |
trait Foo {} | |
struct W<T>(T); | |
impl<T> Foo for W<T> where T: Foo {} | |
fn main() { | |
let x: impl Foo = W(()); | |
//~^ ERROR the trait bound `(): Foo` is not satisfied | |
let x: W<impl Foo> = W(()); | |
//~^ ERROR the trait bound `(): Foo` is not satisfied | |
} |