#![feature(type_alias_impl_trait)] fn main() {} trait TraitWithAssoc { type Assoc; } type Foo = impl Trait; trait Trait {} impl Trait for () {} fn foo_desugared(_: T) -> Foo { () //~^ ERROR non-defining opaque type use }