1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
// run-pass // pretty-expanded FIXME #23616 use std::sync::mpsc::channel; fn foo<F:FnOnce()+Send>(blk: F) { blk(); } pub fn main() { let (tx, rx) = channel(); foo(move || { tx.send(()).unwrap(); }); rx.recv().unwrap(); }