4 fn send<T: Send>(_: T) {}
9 // Cycles should work as the deferred obligations are
10 // independently resolved and only require the concrete
11 // return type, which can't depend on the obligation.
12 fn cycle1() -> impl Clone {
13 //~^ ERROR cycle detected
14 //~| ERROR cycle detected
15 send(cycle2().clone());
20 fn cycle2() -> impl Clone {
21 send(cycle1().clone());
23 Rc::new(String::from("foo"))