//@ edition: 2021 | |
trait MyTrait<T> { | |
async fn foo_recursive(&self, n: usize) -> T; | |
} | |
impl<T> MyTrait<T> for T where T: Copy { | |
async fn foo_recursive(&self, n: usize) -> T { | |
//~^ ERROR recursion in an async fn requires boxing | |
if n > 0 { | |
self.foo_recursive(n - 1).await | |
} else { | |
*self | |
} | |
} | |
} | |
fn main() {} |