[INFO] fetching crate sbor-derive-common 1.2.0... [INFO] checking sbor-derive-common-1.2.0 against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] extracting crate sbor-derive-common 1.2.0 into /workspace/builds/worker-2-tc2/source [INFO] validating manifest of crates.io crate sbor-derive-common 1.2.0 on toolchain c387b04bf028733cd561d62128c8a5eee4bc1458 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate sbor-derive-common 1.2.0 [INFO] finished tweaking crates.io crate sbor-derive-common 1.2.0 [INFO] tweaked toml for crates.io crate sbor-derive-common 1.2.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 7 packages to latest compatible versions [INFO] [stderr] Adding itertools v0.10.5 (available: v0.13.0) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.79) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a242ae015c01a7a4d490bf2e1bd79613b7bd36be1f87ebe7bb3760ee621bf63a [INFO] running `Command { std: "docker" "start" "-a" "a242ae015c01a7a4d490bf2e1bd79613b7bd36be1f87ebe7bb3760ee621bf63a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a242ae015c01a7a4d490bf2e1bd79613b7bd36be1f87ebe7bb3760ee621bf63a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a242ae015c01a7a4d490bf2e1bd79613b7bd36be1f87ebe7bb3760ee621bf63a", kill_on_drop: false }` [INFO] [stdout] a242ae015c01a7a4d490bf2e1bd79613b7bd36be1f87ebe7bb3760ee621bf63a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c5100f3c1fa9010f6d541748bd48f731e0811c7641aa0bc9265beac6a6b0af90 [INFO] running `Command { std: "docker" "start" "-a" "c5100f3c1fa9010f6d541748bd48f731e0811c7641aa0bc9265beac6a6b0af90", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Checking const-sha1 v0.3.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking quote v1.0.37 [INFO] [stderr] Checking sbor-derive-common v1.2.0 (/opt/rustwide/workdir) [INFO] [stdout] error: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/decode.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 42 | parsed: DeriveInput, [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 50 | unskipped_field_names, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | / quote! { [INFO] [stdout] 65 | | Self { [INFO] [stdout] 66 | | #field_name: value, [INFO] [stdout] 67 | | #(#skipped_field_names: <#skipped_field_types>::default(),)* [INFO] [stdout] 68 | | } [INFO] [stdout] 69 | | } [INFO] [stdout] | | - [INFO] [stdout] | |_____________________| [INFO] [stdout] | |_____________________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 81 | / quote! { [INFO] [stdout] 82 | | Self( [INFO] [stdout] 83 | | #(#field_values,)* [INFO] [stdout] 84 | | ) [INFO] [stdout] 85 | | } [INFO] [stdout] | | - [INFO] [stdout] | |_____________________| [INFO] [stdout] | |_____________________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may 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] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/decode.rs:241:17 [INFO] [stdout] | [INFO] [stdout] 218 | self_constructor: TokenStream, [INFO] [stdout] | ---------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 222 | unskipped_field_names, [INFO] [stdout] | --------------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 223 | unskipped_field_types, [INFO] [stdout] | --------------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 224 | skipped_field_names, [INFO] [stdout] | ------------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 225 | skipped_field_types, [INFO] [stdout] | ------------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 232 | / quote! { [INFO] [stdout] 233 | | decoder.read_and_check_size(#unskipped_field_count)?; [INFO] [stdout] 234 | | Ok(#self_constructor { [INFO] [stdout] 235 | | #(#unskipped_field_names: decoder.decode::<#unskipped_field_types>()?,)* [INFO] [stdout] 236 | | #(#skipped_field_names: <#skipped_field_types>::default(),)* [INFO] [stdout] 237 | | }) [INFO] [stdout] 238 | | } [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 241 | | let mut fields = Vec::::new(); [INFO] [stdout] | | ^^^^^^^^^^ [INFO] [stdout] ... | [INFO] [stdout] 250 | / quote! { [INFO] [stdout] 251 | | decoder.read_and_check_size(#unskipped_field_count)?; [INFO] [stdout] 252 | | Ok(#self_constructor [INFO] [stdout] 253 | | ( [INFO] [stdout] 254 | | #(#fields,)* [INFO] [stdout] 255 | | )) [INFO] [stdout] 256 | | } [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may 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: this value of type `std::result::Result` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/utils.rs:18:27 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn print_generated_code(kind: &str, code: S) { [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 18 | if let Ok(mut proc) = Command::new("rustfmt") [INFO] [stdout] | ___________________________^ [INFO] [stdout] 19 | | .arg("--emit=stdout") [INFO] [stdout] 20 | | .arg("--edition=2021") [INFO] [stdout] 21 | | .stdin(Stdio::piped()) [INFO] [stdout] 22 | | .stdout(Stdio::piped()) [INFO] [stdout] 23 | | .stderr(Stdio::null()) [INFO] [stdout] 24 | | .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: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/utils.rs:683:17 [INFO] [stdout] | [INFO] [stdout] 683 | let mut unskipped_field_names = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 701 | let fields_unpacking = quote! { [INFO] [stdout] | ____________________________________- [INFO] [stdout] | |____________________________________| [INFO] [stdout] 702 | | {#(#unskipped_field_names,)* ..} [INFO] [stdout] 703 | | }; [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 748 | let fields_unpacking = quote! { [INFO] [stdout] | ____________________________________- [INFO] [stdout] | |____________________________________| [INFO] [stdout] 749 | | (#(#unpacking_idents),*) [INFO] [stdout] 750 | | }; [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 751 | let empty_fields_unpacking = quote! { [INFO] [stdout] | __________________________________________- [INFO] [stdout] | |__________________________________________| [INFO] [stdout] 752 | | (#(#empty_idents),*) [INFO] [stdout] 753 | | }; [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may 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: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `sbor-derive-common` (lib) due to 5 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/decode.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 42 | parsed: DeriveInput, [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 50 | unskipped_field_names, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | / quote! { [INFO] [stdout] 65 | | Self { [INFO] [stdout] 66 | | #field_name: value, [INFO] [stdout] 67 | | #(#skipped_field_names: <#skipped_field_types>::default(),)* [INFO] [stdout] 68 | | } [INFO] [stdout] 69 | | } [INFO] [stdout] | | - [INFO] [stdout] | |_____________________| [INFO] [stdout] | |_____________________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 81 | / quote! { [INFO] [stdout] 82 | | Self( [INFO] [stdout] 83 | | #(#field_values,)* [INFO] [stdout] 84 | | ) [INFO] [stdout] 85 | | } [INFO] [stdout] | | - [INFO] [stdout] | |_____________________| [INFO] [stdout] | |_____________________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may 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] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/decode.rs:241:17 [INFO] [stdout] | [INFO] [stdout] 218 | self_constructor: TokenStream, [INFO] [stdout] | ---------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 222 | unskipped_field_names, [INFO] [stdout] | --------------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 223 | unskipped_field_types, [INFO] [stdout] | --------------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 224 | skipped_field_names, [INFO] [stdout] | ------------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 225 | skipped_field_types, [INFO] [stdout] | ------------------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 232 | / quote! { [INFO] [stdout] 233 | | decoder.read_and_check_size(#unskipped_field_count)?; [INFO] [stdout] 234 | | Ok(#self_constructor { [INFO] [stdout] 235 | | #(#unskipped_field_names: decoder.decode::<#unskipped_field_types>()?,)* [INFO] [stdout] 236 | | #(#skipped_field_names: <#skipped_field_types>::default(),)* [INFO] [stdout] 237 | | }) [INFO] [stdout] 238 | | } [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 241 | | let mut fields = Vec::::new(); [INFO] [stdout] | | ^^^^^^^^^^ [INFO] [stdout] ... | [INFO] [stdout] 250 | / quote! { [INFO] [stdout] 251 | | decoder.read_and_check_size(#unskipped_field_count)?; [INFO] [stdout] 252 | | Ok(#self_constructor [INFO] [stdout] 253 | | ( [INFO] [stdout] 254 | | #(#fields,)* [INFO] [stdout] 255 | | )) [INFO] [stdout] 256 | | } [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may 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: this value of type `std::result::Result` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/utils.rs:18:27 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn print_generated_code(kind: &str, code: S) { [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 18 | if let Ok(mut proc) = Command::new("rustfmt") [INFO] [stdout] | ___________________________^ [INFO] [stdout] 19 | | .arg("--emit=stdout") [INFO] [stdout] 20 | | .arg("--edition=2021") [INFO] [stdout] 21 | | .stdin(Stdio::piped()) [INFO] [stdout] 22 | | .stdout(Stdio::piped()) [INFO] [stdout] 23 | | .stderr(Stdio::null()) [INFO] [stdout] 24 | | .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: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/utils.rs:683:17 [INFO] [stdout] | [INFO] [stdout] 683 | let mut unskipped_field_names = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 701 | let fields_unpacking = quote! { [INFO] [stdout] | ____________________________________- [INFO] [stdout] | |____________________________________| [INFO] [stdout] 702 | | {#(#unskipped_field_names,)* ..} [INFO] [stdout] 703 | | }; [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 748 | let fields_unpacking = quote! { [INFO] [stdout] | ____________________________________- [INFO] [stdout] | |____________________________________| [INFO] [stdout] 749 | | (#(#unpacking_idents),*) [INFO] [stdout] 750 | | }; [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 751 | let empty_fields_unpacking = quote! { [INFO] [stdout] | __________________________________________- [INFO] [stdout] | |__________________________________________| [INFO] [stdout] 752 | | (#(#empty_idents),*) [INFO] [stdout] 753 | | }; [INFO] [stdout] | | - [INFO] [stdout] | |_____________| [INFO] [stdout] | |_____________these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may 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: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `sbor-derive-common` (lib test) due to 5 previous errors [INFO] running `Command { std: "docker" "inspect" "c5100f3c1fa9010f6d541748bd48f731e0811c7641aa0bc9265beac6a6b0af90", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c5100f3c1fa9010f6d541748bd48f731e0811c7641aa0bc9265beac6a6b0af90", kill_on_drop: false }` [INFO] [stdout] c5100f3c1fa9010f6d541748bd48f731e0811c7641aa0bc9265beac6a6b0af90