//@ revisions: old next //@[next] compile-flags: -Znext-solver //@ ignore-compare-mode-next-solver (explicit revisions) //@ check-pass // When generalizing an alias in a bivariant context, we have to set // `has_unconstrained_ty_var` as we may otherwise never check for // well-formedness of the generalized type, causing us to error due // to ambiguity. trait Trait { type Assoc; } struct BivariantArg>(T); fn generalize(input: BivariantArg) { let _generalized = input; } pub fn main() {}