// edition:2021 trait SendFuture: Send { type Output; } impl SendFuture for Fut { type Output = (); } async fn broken_fut() { ident_error; //~^ ERROR cannot find value `ident_error` in this scope } // triggers normalization of `::Output`, // which requires `Fut: Send`. fn normalize(_: Fut, _: Fut::Output) {} async fn iceice() // <- async fn is necessary where A: Send, B: Send, // <- a second bound { normalize(broken_fut(), ()); } fn main() {}