[INFO] fetching crate file_endec 1.0.1... [INFO] checking file_endec-1.0.1 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate file_endec 1.0.1 into /workspace/builds/worker-1-tc2/source [INFO] validating manifest of crates.io crate file_endec 1.0.1 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 file_endec 1.0.1 [INFO] finished tweaking crates.io crate file_endec 1.0.1 [INFO] tweaked toml for crates.io crate file_endec 1.0.1 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] crate crates.io crate file_endec 1.0.1 already has a lockfile, it will not be regenerated [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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] f8d2ce7c458a24c9bf028800a1f53713568a1461cefa2354354597e7a8b52d99 [INFO] running `Command { std: "docker" "start" "-a" "f8d2ce7c458a24c9bf028800a1f53713568a1461cefa2354354597e7a8b52d99", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f8d2ce7c458a24c9bf028800a1f53713568a1461cefa2354354597e7a8b52d99", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f8d2ce7c458a24c9bf028800a1f53713568a1461cefa2354354597e7a8b52d99", kill_on_drop: false }` [INFO] [stdout] f8d2ce7c458a24c9bf028800a1f53713568a1461cefa2354354597e7a8b52d99 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 5f4d4677c4474849d595cd59ac866fc237ecf0549852cf06e616b38555e6b4c3 [INFO] running `Command { std: "docker" "start" "-a" "5f4d4677c4474849d595cd59ac866fc237ecf0549852cf06e616b38555e6b4c3", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.80 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling memchr v2.3.4 [INFO] [stderr] Compiling syn v1.0.50 [INFO] [stderr] Compiling typenum v1.12.0 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling generic-array v0.14.4 [INFO] [stderr] Checking thread_local v1.0.1 [INFO] [stderr] Checking regex-syntax v0.6.21 [INFO] [stderr] Compiling getrandom v0.1.15 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Checking aho-corasick v0.7.15 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling strsim v0.9.3 [INFO] [stderr] Checking either v1.6.1 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling const_fn v0.4.3 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.0 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking opaque-debug v0.3.0 [INFO] [stderr] Checking ppv-lite86 v0.2.10 [INFO] [stderr] Compiling serde v1.0.117 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking terminal_size v0.1.15 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling unicode-segmentation v1.7.0 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking cipher v0.2.5 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Checking alloc-no-stdlib v2.0.1 [INFO] [stderr] Checking regex v1.4.2 [INFO] [stderr] Checking number_prefix v0.3.0 [INFO] [stderr] Compiling getrandom v0.2.0 [INFO] [stderr] Compiling cc v1.0.65 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling derive_builder v0.9.0 [INFO] [stderr] Checking ucd-trie v0.1.3 [INFO] [stderr] Checking nodrop v0.1.14 [INFO] [stderr] Checking bit-vec v0.6.2 [INFO] [stderr] Checking pest v2.1.3 [INFO] [stderr] Checking bit-set v0.5.2 [INFO] [stderr] Checking alloc-stdlib v0.2.1 [INFO] [stderr] Checking console v0.13.0 [INFO] [stderr] Checking time v0.1.44 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Checking constant_time_eq v0.1.5 [INFO] [stderr] Compiling rayon-core v1.9.0 [INFO] [stderr] Compiling ring v0.16.16 [INFO] [stderr] Checking indicatif v0.14.0 [INFO] [stderr] Checking blake2-rfc v0.2.18 [INFO] [stderr] Checking chrono v0.4.19 [INFO] [stderr] Checking semver-parser v0.10.1 [INFO] [stderr] Checking crossbeam-epoch v0.9.0 [INFO] [stderr] Checking fancy-regex v0.3.5 [INFO] [stderr] Compiling cast v0.2.3 [INFO] [stderr] Checking brotli-decompressor v2.3.1 [INFO] [stderr] Checking blowfish v0.7.0 [INFO] [stderr] Checking aes-soft v0.6.4 [INFO] [stderr] Checking filetime v0.2.13 [INFO] [stderr] Checking itertools v0.8.2 [INFO] [stderr] Checking number2name v1.0.1 [INFO] [stderr] Checking itoa v0.4.6 [INFO] [stderr] Compiling serde_json v1.0.59 [INFO] [stderr] Checking once_cell v1.5.2 [INFO] [stderr] Checking block-padding v0.2.1 [INFO] [stderr] Checking base64 v0.13.0 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Checking untrusted v0.7.1 [INFO] [stderr] Checking spin v0.5.2 [INFO] [stderr] Checking scoped_threadpool v0.1.9 [INFO] [stderr] Checking argon2rs v0.2.5 [INFO] [stderr] Checking twox-hash v1.6.0 [INFO] [stderr] Checking bcrypt v0.9.0 [INFO] [stderr] Checking block-modes v0.7.0 [INFO] [stderr] Checking aes v0.6.0 [INFO] [stderr] Checking crossbeam-deque v0.8.0 [INFO] [stderr] Checking semver v0.11.0 [INFO] [stderr] Checking indicatif v0.15.0 [INFO] [stderr] Checking crossbeam-channel v0.5.0 [INFO] [stderr] Checking brotli v3.3.0 [INFO] [stderr] Checking twofish v0.5.0 [INFO] [stderr] Compiling darling_core v0.10.2 [INFO] [stderr] Checking rpassword v5.0.0 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking secstr v0.4.0 [INFO] [stderr] Checking regex-automata v0.1.9 [INFO] [stderr] Compiling rayon v1.5.0 [INFO] [stderr] Compiling serde_derive v1.0.117 [INFO] [stderr] Checking data-encoding v2.3.1 [INFO] [stderr] Checking bstr v0.2.14 [INFO] [stderr] Checking itertools v0.9.0 [INFO] [stderr] Checking csv-core v0.1.10 [INFO] [stderr] Checking half v1.6.0 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking walkdir v2.3.1 [INFO] [stderr] Checking serde_cbor v0.11.1 [INFO] [stderr] Checking csv v1.1.4 [INFO] [stderr] Checking tinytemplate v1.1.0 [INFO] [stderr] Checking criterion-plot v0.4.3 [INFO] [stderr] Checking plotters v0.2.15 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking oorandom v11.1.3 [INFO] [stderr] Checking remove_dir_all v0.5.3 [INFO] [stderr] Checking tempfile v3.1.0 [INFO] [stderr] Compiling darling_macro v0.10.2 [INFO] [stderr] Compiling structopt-derive v0.4.13 [INFO] [stderr] Compiling darling v0.10.2 [INFO] [stderr] Compiling derive_builder_core v0.9.0 [INFO] [stderr] Checking structopt v0.3.20 [INFO] [stderr] Checking file_shred v1.1.0 [INFO] [stderr] Checking zxcvbn v2.0.1 [INFO] [stderr] Checking file_endec v1.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `self::typ::Extension` [INFO] [stdout] --> src/config/mod.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub use self::typ::Extension; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::config::enc::EncryptConfig` [INFO] [stdout] --> src/orchestrate/decrypt.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub use crate::config::enc::EncryptConfig; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `KeySource` and `Key` [INFO] [stdout] --> src/orchestrate/decrypt.rs:22:22 [INFO] [stdout] | [INFO] [stdout] 22 | pub use crate::key::{Key, KeySource}; [INFO] [stdout] | ^^^ ^^^^^^^^^ [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/files/compress.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 33 | let mut compress = brotli::CompressorReader::new(data, 4096, 6, 22); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 34 | let mut output = Vec::with_capacity(data.len()); [INFO] [stdout] 35 | match compress.read_to_end(&mut output) { [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/files/compress.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 64 | let mut decompress = brotli::Decompressor::new(data, 4096); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 65 | let mut output = Vec::with_capacity(data.len()); [INFO] [stdout] 66 | match decompress.read_to_end(&mut output) { [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/files/read_headers.rs:30:24 [INFO] [stdout] | [INFO] [stdout] 30 | .map(|fi| (fi, open_reader(&fi, verbosity))) [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/progress/indicatif.rs:164:19 [INFO] [stdout] | [INFO] [stdout] 152 | let progress_bar = { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 153 | let pb = ProgressBar::with_draw_target(total_size, ProgressDrawTarget::stderr()); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 164 | data: Some(ProgressData { [INFO] [stdout] | ___________________^ [INFO] [stdout] 165 | | bar: progress_bar, [INFO] [stdout] 166 | | current: TaskInfo { [INFO] [stdout] 167 | | text: "initialize".to_owned(), [INFO] [stdout] ... | [INFO] [stdout] 170 | | todo, [INFO] [stdout] 171 | | }), [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] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/progress/indicatif.rs:125:24 [INFO] [stdout] | [INFO] [stdout] 125 | for alg in &file_strat.strategy().compression_algorithm { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 125 | while let Some(alg) = &file_strat.strategy().compression_algorithm { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 125 | if let Some(alg) = &file_strat.strategy().compression_algorithm { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors; 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `file_endec` (lib) due to 5 previous errors; 4 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "5f4d4677c4474849d595cd59ac866fc237ecf0549852cf06e616b38555e6b4c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5f4d4677c4474849d595cd59ac866fc237ecf0549852cf06e616b38555e6b4c3", kill_on_drop: false }` [INFO] [stdout] 5f4d4677c4474849d595cd59ac866fc237ecf0549852cf06e616b38555e6b4c3