// check-pass trait Duh {} impl Duh for i32 {} trait Trait { type Assoc: Duh; } impl Trait for F { type Assoc = F; } fn foo() -> impl Trait { 42 } fn main() { }