//~ ERROR overflow evaluating the requirement `A>>>>>>: Send` struct A(B); //~^ ERROR recursive types `A` and `B` have infinite size //~| ERROR `T` is only used recursively struct B(A>); //~^ ERROR `T` is only used recursively trait Foo {} impl Foo for T where T: Send {} impl Foo for B {} fn main() {}