//@ run-pass | |
// Check that closures implement `Copy`. | |
fn call<T, F: FnOnce() -> T>(f: F) -> T { f() } | |
fn main() { | |
let a = 5; | |
let hello = || { | |
println!("Hello {}", a); | |
a | |
}; | |
assert_eq!(5, call(hello.clone())); | |
assert_eq!(5, call(hello)); | |
assert_eq!(5, call(hello)); | |
} |