trait AlwaysApplicable { type Assoc; } impl AlwaysApplicable for T { type Assoc = usize; } trait BindsParam { type ArrayTy; } impl BindsParam for ::Assoc { type ArrayTy = [u8; Self::MAX]; //~ ERROR generic `Self` types } fn main() {}