// check-pass // compile-flags: -Ztrait-solver=next // check that a goal such as `alias-eq(::Assoc, ::Assoc)` // succeeds with a constraint that `?0 = bool` // FIXME(deferred_projection_equality): add a test that this is true during coherence trait TraitA {} trait TraitB { type Assoc; } impl TraitA for (T, T::Assoc) {} impl TraitB for i32 { type Assoc = u32; } fn needs_a() {} fn bar() { needs_a::<(T, ::Assoc<_>)>(); } fn main() { bar::(); }