#![feature(inherent_associated_types)] #![allow(incomplete_features)] struct Foo(T); impl<'a> Foo { type Assoc = &'a (); } fn bar(_: fn(Foo fn(Foo::Assoc)>::Assoc)) {} //~^ ERROR mismatched types [E0308] //~| ERROR mismatched types [E0308] //~| ERROR higher-ranked subtype error //~| ERROR higher-ranked subtype error //~| ERROR higher-ranked subtype error fn main() {}