1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
// check-pass #![feature(type_alias_impl_trait)] trait SuperExpectation: Fn(i32) {} impl<T: Fn(i32)> SuperExpectation for T {} type Foo = impl SuperExpectation; fn main() { let _: Foo = |x| { let _ = x.to_string(); }; }