blob: ee9ecdda90289803e0555ba00380f5ee2bbf2bf1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
trait Original {
fn f() -> impl Fn();
}
trait Erased {
fn f(&self) -> Box<dyn Fn()>;
}
impl<T: Original> Erased for T {
fn f(&self) -> Box<dyn Fn()> {
Box::new(<T as Original>::f())
//~^ ERROR the associated type `impl Fn()` may not live long enough
}
}
fn main () {}
|