| error[E0277]: `F` cannot be sent between threads safely |
| --> $DIR/closure-bounds-cant-promote-superkind-in-struct.rs:5:1 |
| | |
| LL | struct X<F> where F: FnOnce() + 'static + Send { |
| | ---------------------------------------------- required by `X` |
| ... |
| LL | fn foo<F>(blk: F) -> X<F> where F: FnOnce() + 'static { |
| | ^ - help: consider further restricting type parameter `F`: `, F: std::marker::Send` |
| | _| |
| | | |
| LL | | |
| LL | | return X { field: blk }; |
| LL | | } |
| | |_^ `F` cannot be sent between threads safely |
| | |
| = help: the trait `std::marker::Send` is not implemented for `F` |
| |
| error: aborting due to previous error |
| |
| For more information about this error, try `rustc --explain E0277`. |