trait A { type B; } type MaybeBox = >>::B; struct P { t: MaybeBox

} impl A for P { type B = N; } fn main() { let t: MaybeBox

; }