[INFO] fetching crate axum-enum-response 0.2.0... [INFO] checking axum-enum-response-0.2.0 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate axum-enum-response 0.2.0 into /workspace/builds/worker-7-tc2/source [INFO] validating manifest of crates.io crate axum-enum-response 0.2.0 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 axum-enum-response 0.2.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate axum-enum-response 0.2.0 [INFO] tweaked toml for crates.io crate axum-enum-response 0.2.0 written to /workspace/builds/worker-7-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 89 packages to latest compatible versions [INFO] [stderr] Adding addr2line v0.22.0 (latest: v0.24.1) [INFO] [stderr] Adding gimli v0.29.0 (latest: v0.31.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (latest: v0.4.0) [INFO] [stderr] Adding matchit v0.7.3 (latest: v0.8.4) [INFO] [stderr] Adding miniz_oxide v0.7.4 (latest: v0.8.0) [INFO] [stderr] Adding sync_wrapper v0.1.2 (latest: v1.0.1) [INFO] [stderr] Adding tower v0.4.13 (latest: v0.5.0) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-sys v0.52.0 (latest: v0.59.0) [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-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 971cbfb4cd9f1511be9b203df3b73f5bdbcfffafe06c44334ce083ea2ba711b0 [INFO] running `Command { std: "docker" "start" "-a" "971cbfb4cd9f1511be9b203df3b73f5bdbcfffafe06c44334ce083ea2ba711b0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "971cbfb4cd9f1511be9b203df3b73f5bdbcfffafe06c44334ce083ea2ba711b0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "971cbfb4cd9f1511be9b203df3b73f5bdbcfffafe06c44334ce083ea2ba711b0", kill_on_drop: false }` [INFO] [stdout] 971cbfb4cd9f1511be9b203df3b73f5bdbcfffafe06c44334ce083ea2ba711b0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 051c0afd1640d09639392b2a4ba5af1a787d4b561a98ffc346a954d640535ca2 [INFO] running `Command { std: "docker" "start" "-a" "051c0afd1640d09639392b2a4ba5af1a787d4b561a98ffc346a954d640535ca2", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Compiling rustversion v1.0.17 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Compiling serde v1.0.209 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking tower-layer v0.3.3 [INFO] [stderr] Compiling serde_json v1.0.127 [INFO] [stderr] Checking sync_wrapper v0.1.2 [INFO] [stderr] Checking mime v0.3.17 [INFO] [stderr] Checking sync_wrapper v1.0.1 [INFO] [stderr] Checking matchit v0.7.3 [INFO] [stderr] Checking quote v1.0.37 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking syn v2.0.77 [INFO] [stderr] Compiling axum-core v0.4.3 [INFO] [stderr] Compiling axum v0.7.5 [INFO] [stderr] Checking axum-enum-response v0.2.0 (/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:51:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn enum_into_response(input: TokenStream) -> TokenStream { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 50 | let input = 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] 51 | match impl_enum_into_response(input) { [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:139:5 [INFO] [stdout] | [INFO] [stdout] 57 | fn impl_enum_into_response(input: DeriveInput) -> Result { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 58 | let enum_name = input.ident; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 59 | let Data::Enum(data_enum) = input.data else { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 66 | let (match_branches, impls) = data_enum.variants.into_iter().map(|variant| { [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] 115 | let output = quote! { [INFO] [stdout] | _________------___- [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | |_________|________| [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 116 | | impl ::axum::response::IntoResponse for #enum_name { [INFO] [stdout] 117 | | fn into_response(self) -> ::axum::response::Response { [INFO] [stdout] 118 | | let (status_code, body): (::axum::http::StatusCode, Option<::axum::response::Response>) = match self { [INFO] [stdout] ... | [INFO] [stdout] 136 | | #( #impls )* [INFO] [stdout] 137 | | }; [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] | |_____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] | |_____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] | |_____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] | |_____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] | |_____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] | |_____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] 138 | [INFO] [stdout] 139 | | Ok(output.into()) [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/lib.rs:102:14 [INFO] [stdout] | [INFO] [stdout] 66 | let (match_branches, impls) = data_enum.variants.into_iter().map(|variant| { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 67 | let ident = &variant.ident; [INFO] [stdout] 68 | let field_attributes = parse_field_attributes(&variant.fields)?; [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 69 | let VariantAttributes { status_code, body } = parse_attributes(ident, &variant.attrs)?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 70 | [INFO] [stdout] 71 | let match_branches = if let Some(FieldAttributes { key, from_ty }) = &field_attributes { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 74 | / quote! { [INFO] [stdout] 75 | | #enum_name::#ident(v) => (::axum::http::StatusCode::#status_code, Some(::axum::Json(::std::collections::HashMap::... [INFO] [stdout] 76 | | } [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] | |_____________________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] | |_____________________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] | |_____________________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] 77 | } else { [INFO] [stdout] 78 | / quote! { [INFO] [stdout] 79 | | #enum_name::#ident(v) => (::axum::http::StatusCode::#status_code, Some(::axum::Json(::std::collections::HashMap::... [INFO] [stdout] 80 | | } [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] | |_____________________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] | |_____________________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] | |_____________________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] 83 | / quote! { [INFO] [stdout] 84 | | #enum_name::#ident(v) => (::axum::http::StatusCode::#status_code, Some(::axum::Json(::std::collections::HashMap::from... [INFO] [stdout] 85 | | } [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] | |_________________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] | |_________________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] | |_________________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] 86 | } else { [INFO] [stdout] 87 | / quote! { [INFO] [stdout] 88 | | #enum_name::#ident(v) => (::axum::http::StatusCode::#status_code, Some(::axum::Json(v).into_response())), [INFO] [stdout] 89 | | } [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] | |_________________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] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 93 | / quote! { [INFO] [stdout] 94 | | #enum_name::#ident => (::axum::http::StatusCode::#status_code, Some(::axum::Json(::std::collections::HashMap::from([(#key... [INFO] [stdout] 95 | | } [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] | |_____________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] | |_____________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] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 96 | } else { [INFO] [stdout] 97 | / quote! { [INFO] [stdout] 98 | | #enum_name::#ident => (::axum::http::StatusCode::#status_code, None), [INFO] [stdout] 99 | | } [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] 102 | Result::Ok((match_branches, if let Some(FieldAttributes { from_ty: Some(ty), .. }) = field_attributes { [INFO] [stdout] | ____________________^ [INFO] [stdout] | |____________________| [INFO] [stdout] | |____________________| [INFO] [stdout] 103 | | Some(quote! { [INFO] [stdout] 104 | | impl From<#ty> for #enum_name { [INFO] [stdout] 105 | | fn from(value: #ty) -> Self { [INFO] [stdout] ... | [INFO] [stdout] 111 | | None [INFO] [stdout] 112 | | })) [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] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `axum-enum-response` (lib) due to 6 previous errors [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:195:5 [INFO] [stdout] | [INFO] [stdout] 148 | let mut fields = fields.iter(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 167 | let mut key = None; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 168 | let mut from_ty = None; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 195 | Ok(Some(FieldAttributes { key, from_ty })) [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] [stderr] warning: build failed, waiting for other jobs to finish... [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:265:5 [INFO] [stdout] | [INFO] [stdout] 240 | let mut status_code = None; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 261 | let Some(status_code) = status_code else { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 265 | Ok(VariantAttributes { status_code, body }) [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 5 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "051c0afd1640d09639392b2a4ba5af1a787d4b561a98ffc346a954d640535ca2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "051c0afd1640d09639392b2a4ba5af1a787d4b561a98ffc346a954d640535ca2", kill_on_drop: false }` [INFO] [stdout] 051c0afd1640d09639392b2a4ba5af1a787d4b561a98ffc346a954d640535ca2