[INFO] fetching crate nougat-proc_macros 0.2.4... [INFO] checking nougat-proc_macros-0.2.4 against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] extracting crate nougat-proc_macros 0.2.4 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate nougat-proc_macros 0.2.4 on toolchain c387b04bf028733cd561d62128c8a5eee4bc1458 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate nougat-proc_macros 0.2.4 [INFO] finished tweaking crates.io crate nougat-proc_macros 0.2.4 [INFO] tweaked toml for crates.io crate nougat-proc_macros 0.2.4 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 5 packages to latest compatible versions [INFO] [stderr] Adding prettyplease v0.1.25 (available: v0.2.22) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.79) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 661af4b69d998ce425f708b4e59b91658db5d3085457f0115e80bb6e25ea1cf8 [INFO] running `Command { std: "docker" "start" "-a" "661af4b69d998ce425f708b4e59b91658db5d3085457f0115e80bb6e25ea1cf8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "661af4b69d998ce425f708b4e59b91658db5d3085457f0115e80bb6e25ea1cf8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "661af4b69d998ce425f708b4e59b91658db5d3085457f0115e80bb6e25ea1cf8", kill_on_drop: false }` [INFO] [stdout] 661af4b69d998ce425f708b4e59b91658db5d3085457f0115e80bb6e25ea1cf8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3b407797cffaa11bd35a1ed6a92470e78f4f4ad00b60383fec889918cb8052dd [INFO] running `Command { std: "docker" "start" "-a" "3b407797cffaa11bd35a1ed6a92470e78f4f4ad00b60383fec889918cb8052dd", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking nougat-proc_macros v0.2.4 (/opt/rustwide/workdir) [INFO] [stdout] error: this value of type `std::vec::IntoIter` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> Gat-bang.rs:208:28 [INFO] [stdout] | [INFO] [stdout] 147 | let mut bindings = vec![]; [INFO] [stdout] | ------------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 208 | in bindings [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | *last_segment = parse_quote!( [INFO] [stdout] | _____________________________________- [INFO] [stdout] 240 | | #Trait_Assoc< [INFO] [stdout] 241 | | #(#each_generic_lt ,)* [INFO] [stdout] 242 | | #gat_lifetimes, [INFO] [stdout] ... | [INFO] [stdout] 245 | | > [INFO] [stdout] 246 | | ); [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 `syn::Item` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> gat-attr/_mod.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 9 | attrs: TokenStream2, [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 13 | match parse2(input)? { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::vec::IntoIter` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> Gat-bang.rs:208:28 [INFO] [stdout] | [INFO] [stdout] 147 | let mut bindings = vec![]; [INFO] [stdout] | ------------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 208 | in bindings [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | *last_segment = parse_quote!( [INFO] [stdout] | _____________________________________- [INFO] [stdout] 240 | | #Trait_Assoc< [INFO] [stdout] 241 | | #(#each_generic_lt ,)* [INFO] [stdout] 242 | | #gat_lifetimes, [INFO] [stdout] ... | [INFO] [stdout] 245 | | > [INFO] [stdout] 246 | | ); [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] warning: associated function `new` is never used [INFO] [stdout] --> Gat-bang.rs:262:8 [INFO] [stdout] | [INFO] [stdout] 261 | trait SynError : Sized { [INFO] [stdout] | -------- associated function in this trait [INFO] [stdout] 262 | fn new (_: Span, _: &str) [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> Gat-bang.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 10 | / pub(in super) [INFO] [stdout] 11 | | fn Gat ( [INFO] [stdout] 12 | | input: Input, [INFO] [stdout] 13 | | ) -> ::core::result::Result [INFO] [stdout] | |________________________________________________- move the `impl` block outside of this function `Gat` [INFO] [stdout] ... [INFO] [stdout] 22 | impl Parse for Input { [INFO] [stdout] | ^^^^^-----^^^^^----- [INFO] [stdout] | | | [INFO] [stdout] | | `Input` is not local [INFO] [stdout] | `Parse` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> Gat-bang.rs:158:21 [INFO] [stdout] | [INFO] [stdout] 154 | generics.args.iter().enumerate().for_each(|(i, arg)| match arg { [INFO] [stdout] | ---------- move the `impl` block outside of this closure `` and up 3 bodies [INFO] [stdout] ... [INFO] [stdout] 158 | impl Parse for GatBinding { [INFO] [stdout] | ^^^^^-----^^^^^---------- [INFO] [stdout] | | | [INFO] [stdout] | | `GatBinding` is not local [INFO] [stdout] | `Parse` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `nougat-proc_macros` (lib) due to 3 previous errors; 3 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: this value of type `syn::Item` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> gat-attr/_mod.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 9 | attrs: TokenStream2, [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 13 | match parse2(input)? { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> Gat-bang.rs:262:8 [INFO] [stdout] | [INFO] [stdout] 261 | trait SynError : Sized { [INFO] [stdout] | -------- associated function in this trait [INFO] [stdout] 262 | fn new (_: Span, _: &str) [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> Gat-bang.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 10 | / pub(in super) [INFO] [stdout] 11 | | fn Gat ( [INFO] [stdout] 12 | | input: Input, [INFO] [stdout] 13 | | ) -> ::core::result::Result [INFO] [stdout] | |________________________________________________- move the `impl` block outside of this function `Gat` [INFO] [stdout] ... [INFO] [stdout] 22 | impl Parse for Input { [INFO] [stdout] | ^^^^^-----^^^^^----- [INFO] [stdout] | | | [INFO] [stdout] | | `Input` is not local [INFO] [stdout] | `Parse` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> Gat-bang.rs:158:21 [INFO] [stdout] | [INFO] [stdout] 154 | generics.args.iter().enumerate().for_each(|(i, arg)| match arg { [INFO] [stdout] | ---------- move the `impl` block outside of this closure `` and up 3 bodies [INFO] [stdout] ... [INFO] [stdout] 158 | impl Parse for GatBinding { [INFO] [stdout] | ^^^^^-----^^^^^---------- [INFO] [stdout] | | | [INFO] [stdout] | | `GatBinding` is not local [INFO] [stdout] | `Parse` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `nougat-proc_macros` (lib test) due to 3 previous errors; 3 warnings emitted [INFO] running `Command { std: "docker" "inspect" "3b407797cffaa11bd35a1ed6a92470e78f4f4ad00b60383fec889918cb8052dd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3b407797cffaa11bd35a1ed6a92470e78f4f4ad00b60383fec889918cb8052dd", kill_on_drop: false }` [INFO] [stdout] 3b407797cffaa11bd35a1ed6a92470e78f4f4ad00b60383fec889918cb8052dd