error[E0382]: use of moved value: `c` --> $DIR/closure-print-generic-verbose-1.rs:17:5 | LL | let c = to_fn_once(move|| { | - move occurs because `c` has type `{f::{closure#0} closure_kind_ty=i32 closure_sig_as_fn_ptr_ty=extern "rust-call" fn(()) upvar_tys=(Foo<&'?9 str>, T)}`, which does not implement the `Copy` trait ... LL | c(); | --- `c` moved due to this call LL | c(); | ^ value used here after move | note: this value implements `FnOnce`, which causes it to be moved when called --> $DIR/closure-print-generic-verbose-1.rs:16:5 | LL | c(); | ^ error: aborting due to previous error For more information about this error, try `rustc --explain E0382`.