| error[E0308]: mismatched types |
| --> $DIR/issue-111011.rs:10:23 |
| | |
| LL | foo(async move || {}); |
| | ^^ expected `Box<_>`, found `async` closure body |
| | |
| = note: expected struct `Box<_>` |
| found `async` closure body `[async closure body@$DIR/issue-111011.rs:10:23: 10:25]` |
| = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html |
| |
| error[E0308]: mismatched types |
| --> $DIR/issue-111011.rs:11:9 |
| | |
| LL | bar(async move || {}); |
| | --- ^^^^^^^^^^^^^^^^ expected `Box<dyn FnOnce() -> _>`, found closure |
| | | |
| | arguments to this function are incorrect |
| | |
| = note: expected struct `Box<(dyn FnOnce() -> _ + 'static)>` |
| found closure `{closure@$DIR/issue-111011.rs:11:9: 11:22}` |
| = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html |
| note: function defined here |
| --> $DIR/issue-111011.rs:7:4 |
| | |
| LL | fn bar<X>(x: Box<dyn FnOnce() -> X>) {} |
| | ^^^ ------------------------- |
| help: store this in the heap by calling `Box::new` |
| | |
| LL | bar(Box::new(async move || {})); |
| | +++++++++ + |
| |
| error: aborting due to 2 previous errors |
| |
| For more information about this error, try `rustc --explain E0308`. |