mirror of https://github.com/rust-lang/rust
27 lines
909 B
Plaintext
27 lines
909 B
Plaintext
error: changes to closure capture in Rust 2021 will affect drop order
|
|
--> $DIR/issue-90465.rs:17:14
|
|
|
|
|
LL | let c0 = move || {
|
|
| ^^^^^^^
|
|
...
|
|
LL | let _ = f0;
|
|
| -- in Rust 2018, this causes the closure to capture `f0`, but in Rust 2021, it has no effect
|
|
...
|
|
LL | }
|
|
| - in Rust 2018, `f0` is dropped here along with the closure, but in Rust 2021 `f0` is not part of the closure
|
|
|
|
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/disjoint-capture-in-closures.html>
|
|
note: the lint level is defined here
|
|
--> $DIR/issue-90465.rs:3:9
|
|
|
|
|
LL | #![deny(rust_2021_incompatible_closure_captures)]
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
help: add a dummy let to cause `f0` to be fully captured
|
|
|
|
|
LL ~ let c0 = move || {
|
|
LL + let _ = &f0;
|
|
|
|
|
|
|
error: aborting due to 1 previous error
|
|
|