[INFO] fetching crate cargo-util 0.2.13... [INFO] checking cargo-util-0.2.13 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate cargo-util 0.2.13 into /workspace/builds/worker-3-tc2/source [INFO] validating manifest of crates.io crate cargo-util 0.2.13 on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate cargo-util 0.2.13 [INFO] finished tweaking crates.io crate cargo-util 0.2.13 [INFO] tweaked toml for crates.io crate cargo-util 0.2.13 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 72 packages to latest compatible versions [INFO] [stderr] Adding core-foundation v0.9.4 (latest: v0.10.0) [INFO] [stderr] Adding generic-array v0.14.7 (latest: v1.1.0) [INFO] [stderr] Adding linux-raw-sys v0.4.14 (latest: v0.6.5) [INFO] [stderr] Adding windows-sys v0.48.0 (latest: v0.59.0) [INFO] [stderr] Adding windows-sys v0.52.0 (latest: v0.59.0) [INFO] [stderr] Adding windows-targets v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_aarch64_gnullvm v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_aarch64_msvc v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_i686_gnu v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_i686_msvc v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnu v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnullvm v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_msvc v0.48.5 (latest: v0.52.6) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 20e757244480f5f6bd63698a31a6bdfbc3343e4ccbd11e06feecaa9511745278 [INFO] running `Command { std: "docker" "start" "-a" "20e757244480f5f6bd63698a31a6bdfbc3343e4ccbd11e06feecaa9511745278", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "20e757244480f5f6bd63698a31a6bdfbc3343e4ccbd11e06feecaa9511745278", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "20e757244480f5f6bd63698a31a6bdfbc3343e4ccbd11e06feecaa9511745278", kill_on_drop: false }` [INFO] [stdout] 20e757244480f5f6bd63698a31a6bdfbc3343e4ccbd11e06feecaa9511745278 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 39933c2e390f3beee43f6cfbd4ae17c93037a6e808dda5d733460bf142f6c049 [INFO] running `Command { std: "docker" "start" "-a" "39933c2e390f3beee43f6cfbd4ae17c93037a6e808dda5d733460bf142f6c049", kill_on_drop: false }` [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking bstr v1.10.0 [INFO] [stderr] Checking shell-escape v0.1.5 [INFO] [stderr] Checking jobserver v0.1.32 [INFO] [stderr] Checking filetime v0.2.25 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stderr] Checking globset v0.4.14 [INFO] [stderr] Checking ignore v0.4.22 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking cargo-util v0.2.13 (/opt/rustwide/workdir) [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:144:5 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn metadata>(path: P) -> Result { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 143 | let path = path.as_ref(); [INFO] [stdout] 144 | std::fs::metadata(path) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:153:5 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn symlink_metadata>(path: P) -> Result { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 152 | let path = path.as_ref(); [INFO] [stdout] 153 | std::fs::symlink_metadata(path) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:179:5 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn write, C: AsRef<[u8]>>(path: P, contents: C) -> Result<()> { [INFO] [stdout] | ------- ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 178 | let path = path.as_ref(); [INFO] [stdout] 179 | fs::write(path, contents.as_ref()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn create>(path: P) -> Result { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 262 | let path = path.as_ref(); [INFO] [stdout] 263 | File::create(path).with_context(|| format!("failed to create file `{}`", path.display())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn open>(path: P) -> Result { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 268 | let path = path.as_ref(); [INFO] [stdout] 269 | File::open(path).with_context(|| format!("failed to open file `{}`", path.display())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:473:5 [INFO] [stdout] | [INFO] [stdout] 472 | pub fn remove_dir_all>(p: P) -> Result<()> { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 473 | _remove_dir_all(p.as_ref()).or_else(|prev_err| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:477:9 [INFO] [stdout] | [INFO] [stdout] 473 | _remove_dir_all(p.as_ref()).or_else(|prev_err| { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 477 | fs::remove_dir_all(p.as_ref()).with_context(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:559:11 [INFO] [stdout] | [INFO] [stdout] 554 | fn remove_with_permission_check(remove_func: F, p: P) -> io::Result<()> [INFO] [stdout] | -------------- ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 559 | match remove_func(p.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:661:13 [INFO] [stdout] | [INFO] [stdout] 659 | .or_else(|err| { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 660 | tracing::debug!("link failed {}. falling back to fs::copy", err); [INFO] [stdout] 661 | fs::copy(src, dst).map(|_| ()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:679:5 [INFO] [stdout] | [INFO] [stdout] 676 | pub fn copy, Q: AsRef>(from: P, to: Q) -> Result { [INFO] [stdout] | ------- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 679 | fs::copy(from, to) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:690:11 [INFO] [stdout] | [INFO] [stdout] 688 | pub fn set_file_time_no_err>(path: P, time: FileTime) { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 689 | let path = path.as_ref(); [INFO] [stdout] 690 | match filetime::set_file_times(path, time, time) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:711:49 [INFO] [stdout] | [INFO] [stdout] 711 | let safe_canonicalize = |path: &Path| match path.canonicalize() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:82:24 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn new>(cmd: T) -> ProcessBuilder { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 82 | jobserver: None, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:232:19 [INFO] [stdout] | [INFO] [stdout] 231 | let mut cmd = self.build_command(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 232 | match cmd.spawn() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:287:19 [INFO] [stdout] | [INFO] [stdout] 286 | let mut cmd = self.build_command(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 287 | match piped(&mut cmd, self.stdin.is_some()).spawn() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:354:16 [INFO] [stdout] | [INFO] [stdout] 345 | let spawn = |mut cmd| { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 353 | let (mut cmd, argfile) = self.build_command_with_argfile()?; [INFO] [stdout] | --- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 354 | Ok((piped(&mut cmd, false).spawn()?, Some(argfile))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:475:12 [INFO] [stdout] | [INFO] [stdout] 444 | let mut tmp = tempfile::Builder::new() [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 450 | let mut cmd = self.build_command_without_args(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 475 | Ok((cmd, tmp)) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:592:13 [INFO] [stdout] | [INFO] [stdout] 573 | let mut error; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 574 | let mut file = None; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 592 | Err(anyhow::Error::from(error).context(ProcessError::new( [INFO] [stdout] | _____________^ [INFO] [stdout] 593 | | &format!("could not execute process {}", process_builder), [INFO] [stdout] 594 | | None, [INFO] [stdout] 595 | | None, [INFO] [stdout] 596 | | ))) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:144:5 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn metadata>(path: P) -> Result { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 143 | let path = path.as_ref(); [INFO] [stdout] 144 | std::fs::metadata(path) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:153:5 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn symlink_metadata>(path: P) -> Result { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 152 | let path = path.as_ref(); [INFO] [stdout] 153 | std::fs::symlink_metadata(path) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:179:5 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn write, C: AsRef<[u8]>>(path: P, contents: C) -> Result<()> { [INFO] [stdout] | ------- ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 178 | let path = path.as_ref(); [INFO] [stdout] 179 | fs::write(path, contents.as_ref()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn create>(path: P) -> Result { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 262 | let path = path.as_ref(); [INFO] [stdout] 263 | File::create(path).with_context(|| format!("failed to create file `{}`", path.display())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn open>(path: P) -> Result { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 268 | let path = path.as_ref(); [INFO] [stdout] 269 | File::open(path).with_context(|| format!("failed to open file `{}`", path.display())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:473:5 [INFO] [stdout] | [INFO] [stdout] 472 | pub fn remove_dir_all>(p: P) -> Result<()> { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 473 | _remove_dir_all(p.as_ref()).or_else(|prev_err| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:477:9 [INFO] [stdout] | [INFO] [stdout] 473 | _remove_dir_all(p.as_ref()).or_else(|prev_err| { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 477 | fs::remove_dir_all(p.as_ref()).with_context(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:559:11 [INFO] [stdout] | [INFO] [stdout] 554 | fn remove_with_permission_check(remove_func: F, p: P) -> io::Result<()> [INFO] [stdout] | -------------- ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 559 | match remove_func(p.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:661:13 [INFO] [stdout] | [INFO] [stdout] 659 | .or_else(|err| { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 660 | tracing::debug!("link failed {}. falling back to fs::copy", err); [INFO] [stdout] 661 | fs::copy(src, dst).map(|_| ()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:679:5 [INFO] [stdout] | [INFO] [stdout] 676 | pub fn copy, Q: AsRef>(from: P, to: Q) -> Result { [INFO] [stdout] | ------- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 679 | fs::copy(from, to) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:690:11 [INFO] [stdout] | [INFO] [stdout] 688 | pub fn set_file_time_no_err>(path: P, time: FileTime) { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 689 | let path = path.as_ref(); [INFO] [stdout] 690 | match filetime::set_file_times(path, time, time) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/paths.rs:711:49 [INFO] [stdout] | [INFO] [stdout] 711 | let safe_canonicalize = |path: &Path| match path.canonicalize() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:82:24 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn new>(cmd: T) -> ProcessBuilder { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 82 | jobserver: None, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:232:19 [INFO] [stdout] | [INFO] [stdout] 231 | let mut cmd = self.build_command(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 232 | match cmd.spawn() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:287:19 [INFO] [stdout] | [INFO] [stdout] 286 | let mut cmd = self.build_command(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 287 | match piped(&mut cmd, self.stdin.is_some()).spawn() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:354:16 [INFO] [stdout] | [INFO] [stdout] 345 | let spawn = |mut cmd| { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 353 | let (mut cmd, argfile) = self.build_command_with_argfile()?; [INFO] [stdout] | --- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 354 | Ok((piped(&mut cmd, false).spawn()?, Some(argfile))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:475:12 [INFO] [stdout] | [INFO] [stdout] 444 | let mut tmp = tempfile::Builder::new() [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 450 | let mut cmd = self.build_command_without_args(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 475 | Ok((cmd, tmp)) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/process_builder.rs:592:13 [INFO] [stdout] | [INFO] [stdout] 573 | let mut error; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 574 | let mut file = None; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 592 | Err(anyhow::Error::from(error).context(ProcessError::new( [INFO] [stdout] | _____________^ [INFO] [stdout] 593 | | &format!("could not execute process {}", process_builder), [INFO] [stdout] 594 | | None, [INFO] [stdout] 595 | | None, [INFO] [stdout] 596 | | ))) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 18 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `cargo-util` (lib) due to 19 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 18 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `cargo-util` (lib test) due to 19 previous errors [INFO] running `Command { std: "docker" "inspect" "39933c2e390f3beee43f6cfbd4ae17c93037a6e808dda5d733460bf142f6c049", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "39933c2e390f3beee43f6cfbd4ae17c93037a6e808dda5d733460bf142f6c049", kill_on_drop: false }` [INFO] [stdout] 39933c2e390f3beee43f6cfbd4ae17c93037a6e808dda5d733460bf142f6c049