24 lines
336 B
Rust
24 lines
336 B
Rust
fn to_fn_once<F: FnOnce()>(f: F) -> F {
|
|
f
|
|
}
|
|
|
|
fn f<T: std::fmt::Display>(y: T) {
|
|
struct Foo<U: std::fmt::Display> {
|
|
x: U,
|
|
};
|
|
|
|
let foo = Foo { x: "x" };
|
|
|
|
let c = to_fn_once(move || {
|
|
println!("{} {}", foo.x, y);
|
|
});
|
|
|
|
c();
|
|
c();
|
|
//~^ ERROR use of moved value
|
|
}
|
|
|
|
fn main() {
|
|
f("S");
|
|
}
|