rust/tests/ui/closures/fnonce-call-twice-error.rs
2025-07-05 00:50:51 +05:00

17 lines
268 B
Rust

//! Test that `FnOnce` closures cannot be called twice.
use std::sync::Arc;
fn foo<F: FnOnce()>(blk: F) {
blk();
blk(); //~ ERROR use of moved value
}
fn main() {
let x = Arc::new(true);
foo(move || {
assert!(*x);
drop(x);
});
}