//@ run-pass //@ needs-threads use std::thread; pub fn main() { test05(); } fn test05_start(f: F) { f(22); } fn test05() { let three: Box<_> = Box::new(3); let fn_to_send = move |n: isize| { println!("{}", *three + n); // will copy x into the closure assert_eq!(*three, 3); }; thread::spawn(move || { test05_start(fn_to_send); }) .join() .ok() .unwrap(); }