2016-11-10 19:08:21 +02:00
|
|
|
#![feature(fn_traits)]
|
|
|
|
|
2013-01-19 17:39:15 -08:00
|
|
|
fn id<T>(t: T) -> T { t }
|
|
|
|
|
2015-01-03 10:45:00 -05:00
|
|
|
fn f<'r, T>(v: &'r T) -> Box<FnMut() -> T + 'r> {
|
2015-02-15 09:52:21 +01:00
|
|
|
id(Box::new(|| *v))
|
2015-04-09 14:49:03 -04:00
|
|
|
//~^ ERROR E0373
|
2016-08-05 19:53:14 +02:00
|
|
|
//~| ERROR E0507
|
2013-11-19 17:36:32 -08:00
|
|
|
}
|
2013-01-19 17:39:15 -08:00
|
|
|
|
|
|
|
fn main() {
|
2015-01-31 17:23:42 +01:00
|
|
|
let v = &5;
|
2015-01-03 10:45:00 -05:00
|
|
|
println!("{}", f(v).call_mut(()));
|
2013-02-14 11:47:00 -08:00
|
|
|
}
|