extern mod std; use comm::Chan; use comm::send; fn main() { test05(); } fn test05_start(&&f: fn~(int)) { f(22); } fn test05() { let three = ~3; let fn_to_send = fn~(n: int) { log(error, *three + n); // will copy x into the closure assert(*three == 3); }; task::spawn(fn~(move fn_to_send) { test05_start(fn_to_send); }); }