//@ check-pass //@ compile-flags: -Znext-solver trait Interner: Sized { type Value; } enum Kind { Value(I::Value), } struct Intern; impl Interner for Intern { type Value = Wrap; } struct Wrap(T); type KindAlias = Kind; trait PrettyPrinter: Sized { fn hello(c: KindAlias) { match c { KindAlias::Value(Wrap(v)) => { println!("{v:?}"); } } } } fn main() {}