[INFO] fetching crate below_derive 0.8.1... [INFO] checking below_derive-0.8.1 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate below_derive 0.8.1 into /workspace/builds/worker-4-tc2/source [INFO] validating manifest of crates.io crate below_derive 0.8.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 below_derive 0.8.1 [INFO] finished tweaking crates.io crate below_derive 0.8.1 [INFO] tweaked toml for crates.io crate below_derive 0.8.1 written to /workspace/builds/worker-4-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] Locking 5 packages to latest compatible versions [INFO] [stderr] Adding syn v1.0.109 (latest: v2.0.77) [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-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 2a0c847d69de8b20b978f0e7456f50822895f6f05c4e42d0b2afa480184cad65 [INFO] running `Command { std: "docker" "start" "-a" "2a0c847d69de8b20b978f0e7456f50822895f6f05c4e42d0b2afa480184cad65", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2a0c847d69de8b20b978f0e7456f50822895f6f05c4e42d0b2afa480184cad65", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2a0c847d69de8b20b978f0e7456f50822895f6f05c4e42d0b2afa480184cad65", kill_on_drop: false }` [INFO] [stdout] 2a0c847d69de8b20b978f0e7456f50822895f6f05c4e42d0b2afa480184cad65 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 3b2678ca9fddbdad6450e6e1d90765d5dbb4f17d88133ca06d40f4e9a7371086 [INFO] running `Command { std: "docker" "start" "-a" "3b2678ca9fddbdad6450e6e1d90765d5dbb4f17d88133ca06d40f4e9a7371086", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking quote v1.0.37 [INFO] [stderr] Checking below_derive v0.8.1 (/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/lib.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn enum_to_string_derive(input: TokenStream) -> TokenStream { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 31 | let ast = syn::parse_macro_input!(input as DeriveInput); [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] 32 | / qenum::enum_to_string_derive_impl(&ast) [INFO] [stdout] 33 | | .unwrap_or_else(|err| err.to_compile_error()) [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/lib.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn enum_from_str_derive(input: TokenStream) -> TokenStream { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | let ast = syn::parse_macro_input!(input as DeriveInput); [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] 42 | / qenum::enum_from_str_derive_impl(&ast) [INFO] [stdout] 43 | | .unwrap_or_else(|err| err.to_compile_error()) [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/lib.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn queriable_derive(input: TokenStream) -> TokenStream { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 115 | let ast = syn::parse_macro_input!(input as DeriveInput); [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] 116 | / queriable::queriable_derive_impl(&ast) [INFO] [stdout] 117 | | .unwrap_or_else(|err| err.to_compile_error()) [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/helper.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 26 | it: impl IntoIterator, [INFO] [stdout] | ------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 27 | ) -> syn::Result> { [INFO] [stdout] 28 | / it.into_iter() [INFO] [stdout] 29 | | .filter(|attr| attr.path.is_ident(name)) [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/helper.rs:30:19 [INFO] [stdout] | [INFO] [stdout] 26 | it: impl IntoIterator, [INFO] [stdout] | ------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 30 | .try_fold(Vec::new(), |mut vec, attr| { [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/lib.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn enum_to_string_derive(input: TokenStream) -> TokenStream { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 31 | let ast = syn::parse_macro_input!(input as DeriveInput); [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] 32 | / qenum::enum_to_string_derive_impl(&ast) [INFO] [stdout] 33 | | .unwrap_or_else(|err| err.to_compile_error()) [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/queriable.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 113 | let mut field_id_name = None; [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 126 | Ok(QueriableStructProps { [INFO] [stdout] | ________^ [INFO] [stdout] 127 | | field_id_name: field_id_name [INFO] [stdout] 128 | | // Add `FieldId` suffix for default FieldId enum name. [INFO] [stdout] 129 | | .unwrap_or_else(|| Ident::new(&format!("{}FieldId", ast.ident), ast.ident.span())), [INFO] [stdout] 130 | | ident: ast.ident.clone(), [INFO] [stdout] 131 | | }) [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/lib.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn enum_from_str_derive(input: TokenStream) -> TokenStream { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | let ast = syn::parse_macro_input!(input as DeriveInput); [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] 42 | / qenum::enum_from_str_derive_impl(&ast) [INFO] [stdout] 43 | | .unwrap_or_else(|err| err.to_compile_error()) [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/lib.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn queriable_derive(input: TokenStream) -> TokenStream { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 115 | let ast = syn::parse_macro_input!(input as DeriveInput); [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] 116 | / queriable::queriable_derive_impl(&ast) [INFO] [stdout] 117 | | .unwrap_or_else(|err| err.to_compile_error()) [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/queriable.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 144 | let mut subquery = None; [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 145 | let mut preferred_name = None; [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 149 | let option_type = parse_option(&field.ty); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 180 | let ident = field [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 184 | let preferred_name = preferred_name.unwrap_or_else(|| ident.clone()); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 185 | let variant_name = to_camelcase(&preferred_name); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 186 | Ok(QueriableFieldProps { [INFO] [stdout] | ________^ [INFO] [stdout] 187 | | ignore, [INFO] [stdout] 188 | | subquery, [INFO] [stdout] 189 | | ident, [INFO] [stdout] 190 | | variant_name, [INFO] [stdout] 191 | | option_type, [INFO] [stdout] 192 | | }) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____| [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/helper.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 26 | it: impl IntoIterator, [INFO] [stdout] | ------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 27 | ) -> syn::Result> { [INFO] [stdout] 28 | / it.into_iter() [INFO] [stdout] 29 | | .filter(|attr| attr.path.is_ident(name)) [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/helper.rs:30:19 [INFO] [stdout] | [INFO] [stdout] 26 | it: impl IntoIterator, [INFO] [stdout] | ------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 30 | .try_fold(Vec::new(), |mut vec, attr| { [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/queriable.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 113 | let mut field_id_name = None; [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 126 | Ok(QueriableStructProps { [INFO] [stdout] | ________^ [INFO] [stdout] 127 | | field_id_name: field_id_name [INFO] [stdout] 128 | | // Add `FieldId` suffix for default FieldId enum name. [INFO] [stdout] 129 | | .unwrap_or_else(|| Ident::new(&format!("{}FieldId", ast.ident), ast.ident.span())), [INFO] [stdout] 130 | | ident: ast.ident.clone(), [INFO] [stdout] 131 | | }) [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/queriable.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 144 | let mut subquery = None; [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 145 | let mut preferred_name = None; [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 149 | let option_type = parse_option(&field.ty); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 180 | let ident = field [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 184 | let preferred_name = preferred_name.unwrap_or_else(|| ident.clone()); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 185 | let variant_name = to_camelcase(&preferred_name); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 186 | Ok(QueriableFieldProps { [INFO] [stdout] | ________^ [INFO] [stdout] 187 | | ignore, [INFO] [stdout] 188 | | subquery, [INFO] [stdout] 189 | | ident, [INFO] [stdout] 190 | | variant_name, [INFO] [stdout] 191 | | option_type, [INFO] [stdout] 192 | | }) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____| [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 7 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 7 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `below_derive` (lib) due to 8 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `below_derive` (lib test) due to 8 previous errors [INFO] running `Command { std: "docker" "inspect" "3b2678ca9fddbdad6450e6e1d90765d5dbb4f17d88133ca06d40f4e9a7371086", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3b2678ca9fddbdad6450e6e1d90765d5dbb4f17d88133ca06d40f4e9a7371086", kill_on_drop: false }` [INFO] [stdout] 3b2678ca9fddbdad6450e6e1d90765d5dbb4f17d88133ca06d40f4e9a7371086