[INFO] fetching crate perfect-derive 0.1.3... [INFO] checking perfect-derive-0.1.3 against try#7014e13d5becc920d4bea3cd87942c8a13d359bf+rustflags=-Dtail_expr_drop_order for pr-129864 [INFO] extracting crate perfect-derive 0.1.3 into /workspace/builds/worker-3-tc2/source [INFO] validating manifest of crates.io crate perfect-derive 0.1.3 on toolchain 7014e13d5becc920d4bea3cd87942c8a13d359bf [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate perfect-derive 0.1.3 [INFO] finished tweaking crates.io crate perfect-derive 0.1.3 [INFO] tweaked toml for crates.io crate perfect-derive 0.1.3 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" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 9 packages to latest compatible versions [INFO] [stderr] Adding litrs v0.2.3 (available: v0.4.1) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.77) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f8b3e13011c03c9f90603667cda7b9cfe4fb4e89c0179cd6903d4f2e221adbc5 [INFO] running `Command { std: "docker" "start" "-a" "f8b3e13011c03c9f90603667cda7b9cfe4fb4e89c0179cd6903d4f2e221adbc5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f8b3e13011c03c9f90603667cda7b9cfe4fb4e89c0179cd6903d4f2e221adbc5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f8b3e13011c03c9f90603667cda7b9cfe4fb4e89c0179cd6903d4f2e221adbc5", kill_on_drop: false }` [INFO] [stdout] f8b3e13011c03c9f90603667cda7b9cfe4fb4e89c0179cd6903d4f2e221adbc5 [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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 040b400e2a989a8643f10c438ed6f26160fd58369f00c1d5241c7ce0609a2c71 [INFO] running `Command { std: "docker" "start" "-a" "040b400e2a989a8643f10c438ed6f26160fd58369f00c1d5241c7ce0609a2c71", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Checking unicode-ident v1.0.13 [INFO] [stderr] Checking quote v1.0.37 [INFO] [stderr] Compiling litrs v0.2.3 [INFO] [stderr] Checking syn v2.0.77 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Compiling cps v0.2.3 [INFO] [stderr] Checking thiserror v1.0.64 [INFO] [stderr] Compiling perfect-derive v0.1.3 (/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/perfect_macro.rs:305:17 [INFO] [stdout] | [INFO] [stdout] 305 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 306 | [INFO] [stdout] 307 | / quote! { [INFO] [stdout] 308 | | fn clone(&self) -> Self { [INFO] [stdout] 309 | | let Self{ #(#idents),* } = self; [INFO] [stdout] 310 | | Self{ #(#idents : #idents.clone()),* } [INFO] [stdout] 311 | | } [INFO] [stdout] 312 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 317 | / quote! { [INFO] [stdout] 318 | | fn clone(&self) -> Self { [INFO] [stdout] 319 | | let Self( #(#idents),* ) = self; [INFO] [stdout] 320 | | Self( #(#idents.clone()),* ) [INFO] [stdout] 321 | | } [INFO] [stdout] 322 | | } [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] | 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/perfect_macro.rs:340:25 [INFO] [stdout] | [INFO] [stdout] 337 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 340 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 341 | [INFO] [stdout] 342 | / quote! { [INFO] [stdout] 343 | | Self::#ident{#(#idents),*} => Self::#ident{#(#idents : #idents.clone()),*} [INFO] [stdout] 344 | | } [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] 349 | / quote! { [INFO] [stdout] 350 | | Self::#ident(#(#idents),*) => Self::#ident(#(#idents.clone()),*) [INFO] [stdout] 351 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:373:17 [INFO] [stdout] | [INFO] [stdout] 373 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 374 | [INFO] [stdout] 375 | / quote! { [INFO] [stdout] 376 | | fn eq(&self, other: &Self) -> bool { [INFO] [stdout] 377 | | true #(&& self.#idents.eq(& other.#idents))* [INFO] [stdout] 378 | | } [INFO] [stdout] 379 | | } [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] 385 | / quote! { [INFO] [stdout] 386 | | fn eq(&self, other: &Self) -> bool { [INFO] [stdout] 387 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 388 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] 389 | | true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 390 | | } [INFO] [stdout] 391 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:409:25 [INFO] [stdout] | [INFO] [stdout] 406 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 409 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 413 | / quote! { [INFO] [stdout] 414 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 415 | | => true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 416 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 422 | / quote! { [INFO] [stdout] 423 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 424 | | => true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 425 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:448:17 [INFO] [stdout] | [INFO] [stdout] 448 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 449 | [INFO] [stdout] 450 | / quote! { [INFO] [stdout] 451 | | fn cmp(&self, other: &Self) -> std::cmp::Ordering { [INFO] [stdout] 452 | | std::cmp::Ordering::Equal #(.then(self.#idents.cmp(&other.#idents)))* [INFO] [stdout] 453 | | } [INFO] [stdout] 454 | | } [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] 460 | / quote! { [INFO] [stdout] 461 | | fn cmp(&self, other: &Self) -> std::cmp::Ordering { [INFO] [stdout] 462 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 463 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] 464 | | std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 465 | | } [INFO] [stdout] 466 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:526:25 [INFO] [stdout] | [INFO] [stdout] 523 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 526 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 530 | / quote! { [INFO] [stdout] 531 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 532 | | => std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 533 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 539 | / quote! { [INFO] [stdout] 540 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 541 | | => std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 542 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:567:17 [INFO] [stdout] | [INFO] [stdout] 567 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 568 | [INFO] [stdout] 569 | / quote! { [INFO] [stdout] 570 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 571 | | Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 572 | | .and_then(|o| self.#idents.partial_cmp(&other.#idents).map(|v| v.then(o))) [INFO] [stdout] 573 | | )* [INFO] [stdout] 574 | | } [INFO] [stdout] 575 | | } [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] 581 | / quote! { [INFO] [stdout] 582 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 583 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 584 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] ... | [INFO] [stdout] 589 | | } [INFO] [stdout] 590 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:608:25 [INFO] [stdout] | [INFO] [stdout] 605 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 608 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 612 | / quote! { [INFO] [stdout] 613 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 614 | | => Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 615 | | .and_then(|o| #idents1.partial_cmp(#idents2).map(|v| v.then(o))) [INFO] [stdout] 616 | | )* [INFO] [stdout] 617 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 623 | / quote! { [INFO] [stdout] 624 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 625 | | => Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 626 | | .and_then(|o| #idents1.partial_cmp(#idents2).map(|v| v.then(o))) [INFO] [stdout] 627 | | )* [INFO] [stdout] 628 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:653:17 [INFO] [stdout] | [INFO] [stdout] 653 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 654 | [INFO] [stdout] 655 | / quote! { [INFO] [stdout] 656 | | fn hash(&self, state: &mut H) { [INFO] [stdout] 657 | | #( [INFO] [stdout] 658 | | self.#idents.hash(state); [INFO] [stdout] 659 | | )* [INFO] [stdout] 660 | | } [INFO] [stdout] 661 | | } [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] 666 | / quote! { [INFO] [stdout] 667 | | fn hash(&self, state: &mut H) { [INFO] [stdout] 668 | | let Self( #(#idents),* ) = self; [INFO] [stdout] 669 | | #( [INFO] [stdout] ... | [INFO] [stdout] 672 | | } [INFO] [stdout] 673 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:689:25 [INFO] [stdout] | [INFO] [stdout] 686 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 689 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 690 | [INFO] [stdout] 691 | / quote! { [INFO] [stdout] 692 | | Self::#ident{#(#idents),*} [INFO] [stdout] 693 | | => { [INFO] [stdout] 694 | | #( #idents.hash(state); )* [INFO] [stdout] 695 | | } [INFO] [stdout] 696 | | } [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] 701 | / quote! { [INFO] [stdout] 702 | | Self::#ident(#(#idents),*) [INFO] [stdout] 703 | | => { [INFO] [stdout] 704 | | #( #idents.hash(state); )* [INFO] [stdout] 705 | | } [INFO] [stdout] 706 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:730:17 [INFO] [stdout] | [INFO] [stdout] 727 | let name = s.ident.clone(); [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 730 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 731 | [INFO] [stdout] 732 | / quote! { [INFO] [stdout] 733 | | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] 734 | | f.debug_struct(stringify!(#name)) [INFO] [stdout] 735 | | #( [INFO] [stdout] ... | [INFO] [stdout] 739 | | } [INFO] [stdout] 740 | | } [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] 745 | / quote! { [INFO] [stdout] 746 | | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] 747 | | let Self( #(#idents),* ) = self; [INFO] [stdout] ... | [INFO] [stdout] 754 | | } [INFO] [stdout] 755 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:775:25 [INFO] [stdout] | [INFO] [stdout] 771 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 772 | let name = quote! { concat!(stringify!(#name), "::", stringify!(#ident)) }; [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 775 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 776 | [INFO] [stdout] 777 | / quote! { [INFO] [stdout] 778 | | Self::#ident{#(#idents),*} [INFO] [stdout] 779 | | => f.debug_struct(#name) [INFO] [stdout] 780 | | #( [INFO] [stdout] ... | [INFO] [stdout] 783 | | .finish() [INFO] [stdout] 784 | | } [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] 789 | / quote! { [INFO] [stdout] 790 | | Self::#ident(#(#idents),*) [INFO] [stdout] 791 | | => f.debug_tuple(#name) [INFO] [stdout] 792 | | #( [INFO] [stdout] ... | [INFO] [stdout] 795 | | .finish() [INFO] [stdout] 796 | | } [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: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:819:17 [INFO] [stdout] | [INFO] [stdout] 816 | fn default_inner(fields: &Fields, root: TokenStream) -> TokenStream { [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 819 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 820 | [INFO] [stdout] 821 | / quote! { [INFO] [stdout] 822 | | fn default() -> Self { [INFO] [stdout] 823 | | #root { [INFO] [stdout] 824 | | #( [INFO] [stdout] ... | [INFO] [stdout] 828 | | } [INFO] [stdout] 829 | | } [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] 835 | / quote! { [INFO] [stdout] 836 | | fn default() -> Self { [INFO] [stdout] 837 | | #root ( [INFO] [stdout] 838 | | #( [INFO] [stdout] ... | [INFO] [stdout] 842 | | } [INFO] [stdout] 843 | | } [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] | |_____________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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:305:17 [INFO] [stdout] | [INFO] [stdout] 305 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 306 | [INFO] [stdout] 307 | / quote! { [INFO] [stdout] 308 | | fn clone(&self) -> Self { [INFO] [stdout] 309 | | let Self{ #(#idents),* } = self; [INFO] [stdout] 310 | | Self{ #(#idents : #idents.clone()),* } [INFO] [stdout] 311 | | } [INFO] [stdout] 312 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 317 | / quote! { [INFO] [stdout] 318 | | fn clone(&self) -> Self { [INFO] [stdout] 319 | | let Self( #(#idents),* ) = self; [INFO] [stdout] 320 | | Self( #(#idents.clone()),* ) [INFO] [stdout] 321 | | } [INFO] [stdout] 322 | | } [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] | 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/perfect_macro.rs:340:25 [INFO] [stdout] | [INFO] [stdout] 337 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 340 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 341 | [INFO] [stdout] 342 | / quote! { [INFO] [stdout] 343 | | Self::#ident{#(#idents),*} => Self::#ident{#(#idents : #idents.clone()),*} [INFO] [stdout] 344 | | } [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] 349 | / quote! { [INFO] [stdout] 350 | | Self::#ident(#(#idents),*) => Self::#ident(#(#idents.clone()),*) [INFO] [stdout] 351 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:373:17 [INFO] [stdout] | [INFO] [stdout] 373 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 374 | [INFO] [stdout] 375 | / quote! { [INFO] [stdout] 376 | | fn eq(&self, other: &Self) -> bool { [INFO] [stdout] 377 | | true #(&& self.#idents.eq(& other.#idents))* [INFO] [stdout] 378 | | } [INFO] [stdout] 379 | | } [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] 385 | / quote! { [INFO] [stdout] 386 | | fn eq(&self, other: &Self) -> bool { [INFO] [stdout] 387 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 388 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] 389 | | true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 390 | | } [INFO] [stdout] 391 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:305:17 [INFO] [stdout] | [INFO] [stdout] 305 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 306 | [INFO] [stdout] 307 | / quote! { [INFO] [stdout] 308 | | fn clone(&self) -> Self { [INFO] [stdout] 309 | | let Self{ #(#idents),* } = self; [INFO] [stdout] 310 | | Self{ #(#idents : #idents.clone()),* } [INFO] [stdout] 311 | | } [INFO] [stdout] 312 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 317 | / quote! { [INFO] [stdout] 318 | | fn clone(&self) -> Self { [INFO] [stdout] 319 | | let Self( #(#idents),* ) = self; [INFO] [stdout] 320 | | Self( #(#idents.clone()),* ) [INFO] [stdout] 321 | | } [INFO] [stdout] 322 | | } [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] | 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/perfect_macro.rs:409:25 [INFO] [stdout] | [INFO] [stdout] 406 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 409 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 413 | / quote! { [INFO] [stdout] 414 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 415 | | => true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 416 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 422 | / quote! { [INFO] [stdout] 423 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 424 | | => true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 425 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:340:25 [INFO] [stdout] | [INFO] [stdout] 337 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 340 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 341 | [INFO] [stdout] 342 | / quote! { [INFO] [stdout] 343 | | Self::#ident{#(#idents),*} => Self::#ident{#(#idents : #idents.clone()),*} [INFO] [stdout] 344 | | } [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] 349 | / quote! { [INFO] [stdout] 350 | | Self::#ident(#(#idents),*) => Self::#ident(#(#idents.clone()),*) [INFO] [stdout] 351 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:448:17 [INFO] [stdout] | [INFO] [stdout] 448 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 449 | [INFO] [stdout] 450 | / quote! { [INFO] [stdout] 451 | | fn cmp(&self, other: &Self) -> std::cmp::Ordering { [INFO] [stdout] 452 | | std::cmp::Ordering::Equal #(.then(self.#idents.cmp(&other.#idents)))* [INFO] [stdout] 453 | | } [INFO] [stdout] 454 | | } [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] 460 | / quote! { [INFO] [stdout] 461 | | fn cmp(&self, other: &Self) -> std::cmp::Ordering { [INFO] [stdout] 462 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 463 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] 464 | | std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 465 | | } [INFO] [stdout] 466 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:373:17 [INFO] [stdout] | [INFO] [stdout] 373 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 374 | [INFO] [stdout] 375 | / quote! { [INFO] [stdout] 376 | | fn eq(&self, other: &Self) -> bool { [INFO] [stdout] 377 | | true #(&& self.#idents.eq(& other.#idents))* [INFO] [stdout] 378 | | } [INFO] [stdout] 379 | | } [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] 385 | / quote! { [INFO] [stdout] 386 | | fn eq(&self, other: &Self) -> bool { [INFO] [stdout] 387 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 388 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] 389 | | true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 390 | | } [INFO] [stdout] 391 | | } [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] | 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 13 previous errors [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/perfect_macro.rs:409:25 [INFO] [stdout] | [INFO] [stdout] 406 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 409 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 413 | / quote! { [INFO] [stdout] 414 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 415 | | => true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 416 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 422 | / quote! { [INFO] [stdout] 423 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 424 | | => true #(&& #idents1.eq(#idents2))* [INFO] [stdout] 425 | | } [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] | 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] [stderr] error: could not compile `perfect-derive` (lib) due to 14 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/perfect_macro.rs:448:17 [INFO] [stdout] | [INFO] [stdout] 448 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 449 | [INFO] [stdout] 450 | / quote! { [INFO] [stdout] 451 | | fn cmp(&self, other: &Self) -> std::cmp::Ordering { [INFO] [stdout] 452 | | std::cmp::Ordering::Equal #(.then(self.#idents.cmp(&other.#idents)))* [INFO] [stdout] 453 | | } [INFO] [stdout] 454 | | } [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] 460 | / quote! { [INFO] [stdout] 461 | | fn cmp(&self, other: &Self) -> std::cmp::Ordering { [INFO] [stdout] 462 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 463 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] 464 | | std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 465 | | } [INFO] [stdout] 466 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:526:25 [INFO] [stdout] | [INFO] [stdout] 523 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 526 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 530 | / quote! { [INFO] [stdout] 531 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 532 | | => std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 533 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 539 | / quote! { [INFO] [stdout] 540 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 541 | | => std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 542 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:567:17 [INFO] [stdout] | [INFO] [stdout] 567 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 568 | [INFO] [stdout] 569 | / quote! { [INFO] [stdout] 570 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 571 | | Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 572 | | .and_then(|o| self.#idents.partial_cmp(&other.#idents).map(|v| v.then(o))) [INFO] [stdout] 573 | | )* [INFO] [stdout] 574 | | } [INFO] [stdout] 575 | | } [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] 581 | / quote! { [INFO] [stdout] 582 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 583 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 584 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] ... | [INFO] [stdout] 589 | | } [INFO] [stdout] 590 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:526:25 [INFO] [stdout] | [INFO] [stdout] 523 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 526 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 530 | / quote! { [INFO] [stdout] 531 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 532 | | => std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 533 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 539 | / quote! { [INFO] [stdout] 540 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 541 | | => std::cmp::Ordering::Equal #(.then(#idents1.cmp(#idents2)))* [INFO] [stdout] 542 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:608:25 [INFO] [stdout] | [INFO] [stdout] 605 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 608 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 612 | / quote! { [INFO] [stdout] 613 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 614 | | => Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 615 | | .and_then(|o| #idents1.partial_cmp(#idents2).map(|v| v.then(o))) [INFO] [stdout] 616 | | )* [INFO] [stdout] 617 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 623 | / quote! { [INFO] [stdout] 624 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 625 | | => Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 626 | | .and_then(|o| #idents1.partial_cmp(#idents2).map(|v| v.then(o))) [INFO] [stdout] 627 | | )* [INFO] [stdout] 628 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:653:17 [INFO] [stdout] | [INFO] [stdout] 653 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 654 | [INFO] [stdout] 655 | / quote! { [INFO] [stdout] 656 | | fn hash(&self, state: &mut H) { [INFO] [stdout] 657 | | #( [INFO] [stdout] 658 | | self.#idents.hash(state); [INFO] [stdout] 659 | | )* [INFO] [stdout] 660 | | } [INFO] [stdout] 661 | | } [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] 666 | / quote! { [INFO] [stdout] 667 | | fn hash(&self, state: &mut H) { [INFO] [stdout] 668 | | let Self( #(#idents),* ) = self; [INFO] [stdout] 669 | | #( [INFO] [stdout] ... | [INFO] [stdout] 672 | | } [INFO] [stdout] 673 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:567:17 [INFO] [stdout] | [INFO] [stdout] 567 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 568 | [INFO] [stdout] 569 | / quote! { [INFO] [stdout] 570 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 571 | | Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 572 | | .and_then(|o| self.#idents.partial_cmp(&other.#idents).map(|v| v.then(o))) [INFO] [stdout] 573 | | )* [INFO] [stdout] 574 | | } [INFO] [stdout] 575 | | } [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] 581 | / quote! { [INFO] [stdout] 582 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 583 | | let Self( #(#idents1),* ) = self; [INFO] [stdout] 584 | | let Self( #(#idents2),* ) = other; [INFO] [stdout] ... | [INFO] [stdout] 589 | | } [INFO] [stdout] 590 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:689:25 [INFO] [stdout] | [INFO] [stdout] 686 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 689 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 690 | [INFO] [stdout] 691 | / quote! { [INFO] [stdout] 692 | | Self::#ident{#(#idents),*} [INFO] [stdout] 693 | | => { [INFO] [stdout] 694 | | #( #idents.hash(state); )* [INFO] [stdout] 695 | | } [INFO] [stdout] 696 | | } [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] 701 | / quote! { [INFO] [stdout] 702 | | Self::#ident(#(#idents),*) [INFO] [stdout] 703 | | => { [INFO] [stdout] 704 | | #( #idents.hash(state); )* [INFO] [stdout] 705 | | } [INFO] [stdout] 706 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:730:17 [INFO] [stdout] | [INFO] [stdout] 727 | let name = s.ident.clone(); [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 730 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 731 | [INFO] [stdout] 732 | / quote! { [INFO] [stdout] 733 | | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] 734 | | f.debug_struct(stringify!(#name)) [INFO] [stdout] 735 | | #( [INFO] [stdout] ... | [INFO] [stdout] 739 | | } [INFO] [stdout] 740 | | } [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] 745 | / quote! { [INFO] [stdout] 746 | | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] 747 | | let Self( #(#idents),* ) = self; [INFO] [stdout] ... | [INFO] [stdout] 754 | | } [INFO] [stdout] 755 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:775:25 [INFO] [stdout] | [INFO] [stdout] 771 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 772 | let name = quote! { concat!(stringify!(#name), "::", stringify!(#ident)) }; [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 775 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 776 | [INFO] [stdout] 777 | / quote! { [INFO] [stdout] 778 | | Self::#ident{#(#idents),*} [INFO] [stdout] 779 | | => f.debug_struct(#name) [INFO] [stdout] 780 | | #( [INFO] [stdout] ... | [INFO] [stdout] 783 | | .finish() [INFO] [stdout] 784 | | } [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] 789 | / quote! { [INFO] [stdout] 790 | | Self::#ident(#(#idents),*) [INFO] [stdout] 791 | | => f.debug_tuple(#name) [INFO] [stdout] 792 | | #( [INFO] [stdout] ... | [INFO] [stdout] 795 | | .finish() [INFO] [stdout] 796 | | } [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: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:608:25 [INFO] [stdout] | [INFO] [stdout] 605 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 608 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 612 | / quote! { [INFO] [stdout] 613 | | (Self::#ident{#(#idents: #idents1),*}, Self::#ident{#(#idents: #idents2),*}) [INFO] [stdout] 614 | | => Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 615 | | .and_then(|o| #idents1.partial_cmp(#idents2).map(|v| v.then(o))) [INFO] [stdout] 616 | | )* [INFO] [stdout] 617 | | } [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] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 623 | / quote! { [INFO] [stdout] 624 | | (Self::#ident(#(#idents1),*), Self::#ident(#(#idents2),*)) [INFO] [stdout] 625 | | => Some(std::cmp::Ordering::Equal) #( [INFO] [stdout] 626 | | .and_then(|o| #idents1.partial_cmp(#idents2).map(|v| v.then(o))) [INFO] [stdout] 627 | | )* [INFO] [stdout] 628 | | } [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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:819:17 [INFO] [stdout] | [INFO] [stdout] 816 | fn default_inner(fields: &Fields, root: TokenStream) -> TokenStream { [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 819 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 820 | [INFO] [stdout] 821 | / quote! { [INFO] [stdout] 822 | | fn default() -> Self { [INFO] [stdout] 823 | | #root { [INFO] [stdout] 824 | | #( [INFO] [stdout] ... | [INFO] [stdout] 828 | | } [INFO] [stdout] 829 | | } [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] 835 | / quote! { [INFO] [stdout] 836 | | fn default() -> Self { [INFO] [stdout] 837 | | #root ( [INFO] [stdout] 838 | | #( [INFO] [stdout] ... | [INFO] [stdout] 842 | | } [INFO] [stdout] 843 | | } [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] | |_____________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] | 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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:653:17 [INFO] [stdout] | [INFO] [stdout] 653 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 654 | [INFO] [stdout] 655 | / quote! { [INFO] [stdout] 656 | | fn hash(&self, state: &mut H) { [INFO] [stdout] 657 | | #( [INFO] [stdout] 658 | | self.#idents.hash(state); [INFO] [stdout] 659 | | )* [INFO] [stdout] 660 | | } [INFO] [stdout] 661 | | } [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] 666 | / quote! { [INFO] [stdout] 667 | | fn hash(&self, state: &mut H) { [INFO] [stdout] 668 | | let Self( #(#idents),* ) = self; [INFO] [stdout] 669 | | #( [INFO] [stdout] ... | [INFO] [stdout] 672 | | } [INFO] [stdout] 673 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:689:25 [INFO] [stdout] | [INFO] [stdout] 686 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 689 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 690 | [INFO] [stdout] 691 | / quote! { [INFO] [stdout] 692 | | Self::#ident{#(#idents),*} [INFO] [stdout] 693 | | => { [INFO] [stdout] 694 | | #( #idents.hash(state); )* [INFO] [stdout] 695 | | } [INFO] [stdout] 696 | | } [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] 701 | / quote! { [INFO] [stdout] 702 | | Self::#ident(#(#idents),*) [INFO] [stdout] 703 | | => { [INFO] [stdout] 704 | | #( #idents.hash(state); )* [INFO] [stdout] 705 | | } [INFO] [stdout] 706 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:730:17 [INFO] [stdout] | [INFO] [stdout] 727 | let name = s.ident.clone(); [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 730 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 731 | [INFO] [stdout] 732 | / quote! { [INFO] [stdout] 733 | | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] 734 | | f.debug_struct(stringify!(#name)) [INFO] [stdout] 735 | | #( [INFO] [stdout] ... | [INFO] [stdout] 739 | | } [INFO] [stdout] 740 | | } [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] 745 | / quote! { [INFO] [stdout] 746 | | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] 747 | | let Self( #(#idents),* ) = self; [INFO] [stdout] ... | [INFO] [stdout] 754 | | } [INFO] [stdout] 755 | | } [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 `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:775:25 [INFO] [stdout] | [INFO] [stdout] 771 | let ident = v.ident.clone(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 772 | let name = quote! { concat!(stringify!(#name), "::", stringify!(#ident)) }; [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 775 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 776 | [INFO] [stdout] 777 | / quote! { [INFO] [stdout] 778 | | Self::#ident{#(#idents),*} [INFO] [stdout] 779 | | => f.debug_struct(#name) [INFO] [stdout] 780 | | #( [INFO] [stdout] ... | [INFO] [stdout] 783 | | .finish() [INFO] [stdout] 784 | | } [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] 789 | / quote! { [INFO] [stdout] 790 | | Self::#ident(#(#idents),*) [INFO] [stdout] 791 | | => f.debug_tuple(#name) [INFO] [stdout] 792 | | #( [INFO] [stdout] ... | [INFO] [stdout] 795 | | .finish() [INFO] [stdout] 796 | | } [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: this value of type `Vec` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/perfect_macro.rs:819:17 [INFO] [stdout] | [INFO] [stdout] 816 | fn default_inner(fields: &Fields, root: TokenStream) -> TokenStream { [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 819 | let idents = get_named_idents(names); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 820 | [INFO] [stdout] 821 | / quote! { [INFO] [stdout] 822 | | fn default() -> Self { [INFO] [stdout] 823 | | #root { [INFO] [stdout] 824 | | #( [INFO] [stdout] ... | [INFO] [stdout] 828 | | } [INFO] [stdout] 829 | | } [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] 835 | / quote! { [INFO] [stdout] 836 | | fn default() -> Self { [INFO] [stdout] 837 | | #root ( [INFO] [stdout] 838 | | #( [INFO] [stdout] ... | [INFO] [stdout] 842 | | } [INFO] [stdout] 843 | | } [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] | |_____________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] | 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 13 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `perfect-derive` (lib test) due to 14 previous errors [INFO] [stdout] error: aborting due to 13 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `perfect-derive` (lib) due to 14 previous errors [INFO] running `Command { std: "docker" "inspect" "040b400e2a989a8643f10c438ed6f26160fd58369f00c1d5241c7ce0609a2c71", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "040b400e2a989a8643f10c438ed6f26160fd58369f00c1d5241c7ce0609a2c71", kill_on_drop: false }` [INFO] [stdout] 040b400e2a989a8643f10c438ed6f26160fd58369f00c1d5241c7ce0609a2c71