// Check that we validate associated type bounds on super traits for trait // objects trait Is { type T; } impl Is for U { type T = U; } trait Obj { type U: Is; type V; } fn is_obj(_: &T) {} fn f(x: &dyn Obj) { is_obj(x) //~^ ERROR type mismatch resolving `::T == i64` } fn main() {}