[INFO] cloning repository https://github.com/yisar/fre3 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yisar/fre3" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyisar%2Ffre3", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyisar%2Ffre3'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f57b09c1d1af8171c31b0552bdac3190eca66c90 [INFO] checking yisar/fre3 against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyisar%2Ffre3" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/yisar/fre3 on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/yisar/fre3 [INFO] finished tweaking git repo https://github.com/yisar/fre3 [INFO] tweaked toml for git repo https://github.com/yisar/fre3 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 48 packages to latest compatible versions [INFO] [stderr] Adding aho-corasick v0.7.20 (latest: v1.1.3) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-sys v0.52.0 (latest: v0.59.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded similar v2.6.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1ec5f336c02df71366a9f4ada1ee78b69fbc13f13dc07fe8fde84ec5d88656ea [INFO] running `Command { std: "docker" "start" "-a" "1ec5f336c02df71366a9f4ada1ee78b69fbc13f13dc07fe8fde84ec5d88656ea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1ec5f336c02df71366a9f4ada1ee78b69fbc13f13dc07fe8fde84ec5d88656ea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1ec5f336c02df71366a9f4ada1ee78b69fbc13f13dc07fe8fde84ec5d88656ea", kill_on_drop: false }` [INFO] [stdout] 1ec5f336c02df71366a9f4ada1ee78b69fbc13f13dc07fe8fde84ec5d88656ea [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f157a3374b5b3b33419f06be114ac9c2c3546eaebe99cfa3a7cca6122b2bb4bc [INFO] running `Command { std: "docker" "start" "-a" "f157a3374b5b3b33419f06be114ac9c2c3546eaebe99cfa3a7cca6122b2bb4bc", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling serde_json v1.0.127 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling libc v0.2.158 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Checking aho-corasick v0.7.20 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking colorchoice v1.0.2 [INFO] [stderr] Checking anstyle v1.0.8 [INFO] [stderr] Checking anstyle-query v1.1.1 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Checking clap_lex v0.7.2 [INFO] [stderr] Checking similar v2.6.0 [INFO] [stderr] Checking anstyle-parse v0.2.5 [INFO] [stderr] Checking anstream v0.6.15 [INFO] [stderr] Checking clap_builder v4.5.15 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Compiling serde_derive v1.0.209 [INFO] [stderr] Compiling clap_derive v4.5.13 [INFO] [stderr] Checking clap v4.5.16 [INFO] [stderr] Checking serde v1.0.209 [INFO] [stderr] Checking parse-js v0.24.0 (/opt/rustwide/workdir/rust) [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:23:45 [INFO] [stdout] | [INFO] [stdout] 23 | fn parse_import_or_export_name(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:102:38 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn parse_stmt_empty(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:151:41 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn parse_stmt_debugger(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:23:45 [INFO] [stdout] | [INFO] [stdout] 23 | fn parse_import_or_export_name(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:102:38 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn parse_stmt_empty(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:151:41 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn parse_stmt_debugger(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> rust/src/visit.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | fn on_syntax_down(&mut self, node: &Node, ctl: &mut JourneyControls) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctl` [INFO] [stdout] --> rust/src/visit.rs:24:45 [INFO] [stdout] | [INFO] [stdout] 24 | fn on_syntax_down(&mut self, node: &Node, ctl: &mut JourneyControls) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> rust/src/visit.rs:26:30 [INFO] [stdout] | [INFO] [stdout] 26 | fn on_syntax_up(&mut self, node: &Node) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> rust/src/visit.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | fn on_syntax_down(&mut self, node: &Node, ctl: &mut JourneyControls) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctl` [INFO] [stdout] --> rust/src/visit.rs:24:45 [INFO] [stdout] | [INFO] [stdout] 24 | fn on_syntax_down(&mut self, node: &Node, ctl: &mut JourneyControls) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> rust/src/visit.rs:26:30 [INFO] [stdout] | [INFO] [stdout] 26 | fn on_syntax_up(&mut self, node: &Node) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `through_char` and `while_not_char` are never used [INFO] [stdout] --> rust/src/lex/mod.rs:148:6 [INFO] [stdout] | [INFO] [stdout] 73 | impl<'a> Lexer<'a> { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 148 | fn through_char(&self, c: u8) -> SyntaxResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | fn while_not_char(&self, a: u8) -> Match { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> rust/src/lex/tests/mod.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn check(code: &str, expecteds: &[TokenType], expected_err: Option) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> rust/src/visit.rs:273:21 [INFO] [stdout] | [INFO] [stdout] 273 | for name in names { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 273 | while let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 273 | if let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&mut Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> rust/src/visit.rs:730:21 [INFO] [stdout] | [INFO] [stdout] 730 | for name in names { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 730 | while let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 730 | if let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `through_char` and `while_not_char` are never used [INFO] [stdout] --> rust/src/lex/mod.rs:148:6 [INFO] [stdout] | [INFO] [stdout] 73 | impl<'a> Lexer<'a> { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 148 | fn through_char(&self, c: u8) -> SyntaxResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | fn while_not_char(&self, a: u8) -> Match { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 10 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> rust/src/visit.rs:273:21 [INFO] [stdout] | [INFO] [stdout] 273 | for name in names { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 273 | while let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 273 | if let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&mut Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> rust/src/visit.rs:730:21 [INFO] [stdout] | [INFO] [stdout] 730 | for name in names { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 730 | while let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 730 | if let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking parse-js-cli v0.0.1 (/opt/rustwide/workdir/cli) [INFO] [stderr] Checking fre v0.1.0 (/opt/rustwide/workdir/fre) [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> cli/src/main.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | let args = Cli::parse(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> cli/src/main.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | let args = Cli::parse(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.08s [INFO] running `Command { std: "docker" "inspect" "f157a3374b5b3b33419f06be114ac9c2c3546eaebe99cfa3a7cca6122b2bb4bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f157a3374b5b3b33419f06be114ac9c2c3546eaebe99cfa3a7cca6122b2bb4bc", kill_on_drop: false }` [INFO] [stdout] f157a3374b5b3b33419f06be114ac9c2c3546eaebe99cfa3a7cca6122b2bb4bc [INFO] checking yisar/fre3 against try#f9935d29d867449445ee008640ccca1bf1ae0889+rustflags=-Dtail_expr_drop_order for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyisar%2Ffre3" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/yisar/fre3 on toolchain f9935d29d867449445ee008640ccca1bf1ae0889 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/yisar/fre3 [INFO] finished tweaking git repo https://github.com/yisar/fre3 [INFO] tweaked toml for git repo https://github.com/yisar/fre3 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 48 packages to latest compatible versions [INFO] [stderr] Adding aho-corasick v0.7.20 (latest: v1.1.3) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-sys v0.52.0 (latest: v0.59.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f5a047b2828bfb516bfc36ca790bbeb06149db989c6176d2564884effef34da2 [INFO] running `Command { std: "docker" "start" "-a" "f5a047b2828bfb516bfc36ca790bbeb06149db989c6176d2564884effef34da2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f5a047b2828bfb516bfc36ca790bbeb06149db989c6176d2564884effef34da2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f5a047b2828bfb516bfc36ca790bbeb06149db989c6176d2564884effef34da2", kill_on_drop: false }` [INFO] [stdout] f5a047b2828bfb516bfc36ca790bbeb06149db989c6176d2564884effef34da2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 47f1d72f33ba68786b675e940ed401b3f150bdb425f9464991adbea1aac2fb2d [INFO] running `Command { std: "docker" "start" "-a" "47f1d72f33ba68786b675e940ed401b3f150bdb425f9464991adbea1aac2fb2d", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Compiling serde_json v1.0.127 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling libc v0.2.158 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Checking aho-corasick v0.7.20 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Checking anstyle-query v1.1.1 [INFO] [stderr] Checking colorchoice v1.0.2 [INFO] [stderr] Checking anstyle v1.0.8 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Checking clap_lex v0.7.2 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking similar v2.6.0 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Checking anstyle-parse v0.2.5 [INFO] [stderr] Checking anstream v0.6.15 [INFO] [stderr] Checking clap_builder v4.5.15 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Compiling serde_derive v1.0.209 [INFO] [stderr] Compiling clap_derive v4.5.13 [INFO] [stderr] Checking clap v4.5.16 [INFO] [stderr] Checking serde v1.0.209 [INFO] [stderr] Checking parse-js v0.24.0 (/opt/rustwide/workdir/rust) [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:23:45 [INFO] [stdout] | [INFO] [stdout] 23 | fn parse_import_or_export_name(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:102:38 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn parse_stmt_empty(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:151:41 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn parse_stmt_debugger(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:23:45 [INFO] [stdout] | [INFO] [stdout] 23 | fn parse_import_or_export_name(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:102:38 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn parse_stmt_empty(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> rust/src/parse/stmt.rs:151:41 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn parse_stmt_debugger(&mut self, ctx: ParseCtx) -> SyntaxResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> rust/src/visit.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | fn on_syntax_down(&mut self, node: &Node, ctl: &mut JourneyControls) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctl` [INFO] [stdout] --> rust/src/visit.rs:24:45 [INFO] [stdout] | [INFO] [stdout] 24 | fn on_syntax_down(&mut self, node: &Node, ctl: &mut JourneyControls) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> rust/src/visit.rs:26:30 [INFO] [stdout] | [INFO] [stdout] 26 | fn on_syntax_up(&mut self, node: &Node) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> rust/src/visit.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | fn on_syntax_down(&mut self, node: &Node, ctl: &mut JourneyControls) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctl` [INFO] [stdout] --> rust/src/visit.rs:24:45 [INFO] [stdout] | [INFO] [stdout] 24 | fn on_syntax_down(&mut self, node: &Node, ctl: &mut JourneyControls) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> rust/src/visit.rs:26:30 [INFO] [stdout] | [INFO] [stdout] 26 | fn on_syntax_up(&mut self, node: &Node) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `through_char` and `while_not_char` are never used [INFO] [stdout] --> rust/src/lex/mod.rs:148:6 [INFO] [stdout] | [INFO] [stdout] 73 | impl<'a> Lexer<'a> { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 148 | fn through_char(&self, c: u8) -> SyntaxResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | fn while_not_char(&self, a: u8) -> Match { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> rust/src/lex/tests/mod.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn check(code: &str, expecteds: &[TokenType], expected_err: Option) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/ast.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn new(loc: Loc, stx: Syntax) -> Node { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 25 | stx: Box::new(stx), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/mod.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn and_then SyntaxResult>(self, f: F) -> SyntaxResult> { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 65 | Ok(if self.matched { Some(f()?) } else { None }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/class_or_object.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 30 | let mut members = Vec::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 56 | Ok(ParseClassBodyResult { members, end }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/class_or_object.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 93 | let (key_loc, key) = if self.consume_if(TokenType::BracketOpen)?.is_match() { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 94 | let key = self.parse_expr(ctx, TokenType::BracketClose)?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 122 | let (value_loc, value) = [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | if is_generator || is_async || self.peek()?.typ == TokenType::ParenthesisOpen { [INFO] [stdout] 124 | let parameters = self.parse_function_parameters(ctx)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let body = self.parse_function_body(ctx.with_rules(ParsePatternRules { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 141 | let body = self.parse_function_body(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 154 | let param = self.parse_pattern(ctx)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 155 | self.require(TokenType::ParenthesisClose)?; [INFO] [stdout] 156 | let body = self.parse_function_body(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 188 | let value = self.parse_expr_until_either_with_asi( [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 198 | Ok(ParseClassOrObjectMemberResult { [INFO] [stdout] | ________^ [INFO] [stdout] 199 | | key, [INFO] [stdout] 200 | | key_loc, [INFO] [stdout] 201 | | value, [INFO] [stdout] 202 | | value_loc, [INFO] [stdout] 203 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/decl.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 37 | let mut declarators = Vec::new(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 80 | Ok(Node::new(loc, Syntax::VarDecl { [INFO] [stdout] | ________^ [INFO] [stdout] 81 | | export, [INFO] [stdout] 82 | | mode, [INFO] [stdout] 83 | | declarators, [INFO] [stdout] 84 | | })) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/decl.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 97 | let name = match self [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 111 | let parameters = self.parse_function_parameters(ctx)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 112 | let body = self.parse_function_body(ctx.with_rules(ParsePatternRules { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 116 | Ok(Node::new(start + body.loc, Syntax::FunctionDecl { [INFO] [stdout] | ________^ [INFO] [stdout] 117 | | export, [INFO] [stdout] 118 | | export_default, [INFO] [stdout] 119 | | name, [INFO] [stdout] ... | [INFO] [stdout] 126 | | }), [INFO] [stdout] 127 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/decl.rs:162:8 [INFO] [stdout] | [INFO] [stdout] 138 | let name = match self [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 143 | let name_node = Node::new(name, Syntax::ClassOrFunctionName { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 156 | let extends = if self.consume_if(TokenType::KeywordExtends)?.is_match() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 161 | let ParseClassBodyResult { end, members } = self.parse_class_body(ctx)?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 162 | Ok(Node::new(start + end, Syntax::ClassDecl { [INFO] [stdout] | ________^ [INFO] [stdout] 163 | | export, [INFO] [stdout] 164 | | export_default, [INFO] [stdout] 165 | | name, [INFO] [stdout] 166 | | extends, [INFO] [stdout] 167 | | members, [INFO] [stdout] 168 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 315 | let tag_name = self.parse_jsx_tag_name(ctx)?; [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 318 | let mut attributes = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 359 | Ok(if self.consume_if(TokenType::Slash)?.is_match() { [INFO] [stdout] | ________^ [INFO] [stdout] 360 | | // Self closing. [INFO] [stdout] 361 | | let end = self.require(TokenType::ChevronRight)?; [INFO] [stdout] 362 | | Node::new(tag_start.loc + end.loc, Syntax::JsxElement { [INFO] [stdout] ... | [INFO] [stdout] 412 | | }) [INFO] [stdout] 413 | | }) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:503:8 [INFO] [stdout] | [INFO] [stdout] 481 | let mut elements = Vec::::new(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 503 | Ok(Node::new(loc_start + loc_end, Syntax::LiteralArrayExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 504 | | elements, [INFO] [stdout] 505 | | })) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:560:8 [INFO] [stdout] | [INFO] [stdout] 510 | let mut members = Vec::::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 560 | Ok(Node::new(loc_start + loc_end, Syntax::LiteralObjectExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 561 | | members, [INFO] [stdout] 562 | | })) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:614:8 [INFO] [stdout] | [INFO] [stdout] 573 | let (parameters, arrow) = if !is_async [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 582 | let pattern = Node::new(param_name, Syntax::IdentifierPattern { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 585 | let param = Node::new(param_name, Syntax::ParamDecl { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 592 | let params = self.parse_function_parameters(ctx)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 605 | let body = match self.peek()?.typ { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 614 | Ok(Node::new(body.loc, Syntax::ArrowFunctionExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 615 | | parenthesised: false, [INFO] [stdout] 616 | | function: Node::new(body.loc, Syntax::Function { [INFO] [stdout] 617 | | arrow: true, [INFO] [stdout] ... | [INFO] [stdout] 622 | | }), [INFO] [stdout] 623 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:670:8 [INFO] [stdout] | [INFO] [stdout] 668 | let module = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 669 | let end = self.require(TokenType::ParenthesisClose)?; [INFO] [stdout] 670 | Ok(Node::new(start.loc + end.loc, Syntax::ImportExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 671 | | module, [INFO] [stdout] 672 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:694:8 [INFO] [stdout] | [INFO] [stdout] 679 | let name = match self.peek()? { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 688 | let parameters = self.parse_function_parameters(ctx)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 693 | let body = self.parse_function_body(fn_body_ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 694 | Ok(Node::new(start + body.loc, Syntax::FunctionExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 695 | | parenthesised: false, [INFO] [stdout] 696 | | name, [INFO] [stdout] 697 | | function: Node::new(start + body.loc, Syntax::Function { [INFO] [stdout] ... | [INFO] [stdout] 703 | | }), [INFO] [stdout] 704 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:725:8 [INFO] [stdout] | [INFO] [stdout] 709 | let name = match self.peek()? { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 712 | let name_node = Node::new(t.loc, Syntax::ClassOrFunctionName { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 719 | let extends = if self.consume_if(TokenType::KeywordExtends)?.is_match() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 724 | let ParseClassBodyResult { end, members } = self.parse_class_body(ctx)?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 725 | Ok(Node::new(start + end, Syntax::ClassExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 726 | | parenthesised: false, [INFO] [stdout] 727 | | name, [INFO] [stdout] 728 | | extends, [INFO] [stdout] 729 | | members, [INFO] [stdout] 730 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/function.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 41 | let body = self.parse_stmts(ctx, TokenType::BraceClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 42 | let end = self.require(TokenType::BraceClose)?; [INFO] [stdout] 43 | Ok(Node::new(start.loc + end.loc, Syntax::FunctionBody { [INFO] [stdout] | ________^ [INFO] [stdout] 44 | | body, [INFO] [stdout] 45 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 40 | let alias_node = Node::new(alias, Syntax::IdentifierPattern { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | Ok(ExportName { [INFO] [stdout] | ________^ [INFO] [stdout] 44 | | target: self.string(target), [INFO] [stdout] 45 | | alias: alias_node, [INFO] [stdout] 46 | | }) [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 109 | let body = self.parse_stmts(ctx, TokenType::BraceClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 110 | let end = self.require(TokenType::BraceClose)?; [INFO] [stdout] 111 | Ok(Node::new(start.loc + end.loc, Syntax::BlockStmt { body })) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:245:8 [INFO] [stdout] | [INFO] [stdout] 241 | let expression = self.parse_expr_with_asi(ctx, TokenType::Semicolon, &mut asi)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 245 | Ok(Node::new(expression.loc, Syntax::ExpressionStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 246 | | expression, [INFO] [stdout] 247 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:424:8 [INFO] [stdout] | [INFO] [stdout] 414 | let test = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 415 | self.require(TokenType::ParenthesisClose)?; [INFO] [stdout] 416 | let consequent = self.parse_stmt(ctx)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 417 | let alternate = if self.consume_if(TokenType::KeywordElse)?.is_match() { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 424 | Ok(Node::new(start.loc + end.loc, Syntax::IfStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 425 | | test, [INFO] [stdout] 426 | | consequent, [INFO] [stdout] 427 | | alternate, [INFO] [stdout] 428 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:479:8 [INFO] [stdout] | [INFO] [stdout] 441 | let (default, can_have_names) = [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 442 | if let Some(alias) = self.consume_if(TokenType::Identifier)?.match_loc() { [INFO] [stdout] 443 | let alias_node = Node::new(alias, Syntax::IdentifierPattern { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 453 | let names = if !can_have_names { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 458 | let alias_node = Node::new(alias, Syntax::IdentifierPattern { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 464 | let mut names = Vec::::new(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 465 | while !self.consume_if(TokenType::BraceClose)?.is_match() { [INFO] [stdout] 466 | let name = self.parse_import_or_export_name(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 479 | Ok(Node::new(start.loc, Syntax::ImportStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 480 | | default, [INFO] [stdout] 481 | | module, [INFO] [stdout] 482 | | names, [INFO] [stdout] 483 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:504:8 [INFO] [stdout] | [INFO] [stdout] 489 | let value = [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 497 | let value = self.parse_expr_with_asi(ctx, TokenType::Semicolon, &mut asi)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 504 | Ok(Node::new(loc, Syntax::ReturnStmt { value })) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:518:8 [INFO] [stdout] | [INFO] [stdout] 514 | let value = self.parse_expr_with_asi(ctx, TokenType::Semicolon, &mut asi)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 518 | Ok(Node::new(start.loc + value.loc, Syntax::ThrowStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 519 | | value, [INFO] [stdout] 520 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:556:8 [INFO] [stdout] | [INFO] [stdout] 526 | let wrapped = self.parse_stmt_block(ctx)?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 527 | let catch = if self.consume_if(TokenType::KeywordCatch)?.is_match() { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 528 | let parameter = if self.consume_if(TokenType::ParenthesisOpen)?.is_match() { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 529 | let pattern = self.parse_pattern(ctx)?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 536 | let body = self.parse_stmts(ctx, TokenType::BraceClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 546 | let finally = if self.consume_if(TokenType::KeywordFinally)?.is_match() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 547 | let body = self.parse_stmt_block(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 556 | Ok(Node::new(loc, Syntax::TryStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 557 | | wrapped, [INFO] [stdout] 558 | | catch, [INFO] [stdout] 559 | | finally, [INFO] [stdout] 560 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:569:8 [INFO] [stdout] | [INFO] [stdout] 566 | let condition = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 567 | self.require(TokenType::ParenthesisClose)?; [INFO] [stdout] 568 | let body = self.parse_stmt(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 569 | Ok(Node::new(start.loc + body.loc, Syntax::WhileStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 570 | | condition, [INFO] [stdout] 571 | | body, [INFO] [stdout] 572 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:583:8 [INFO] [stdout] | [INFO] [stdout] 577 | let body = self.parse_stmt(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 580 | let condition = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 583 | Ok(Node::new(start.loc + end.loc, Syntax::DoWhileStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 584 | | condition, [INFO] [stdout] 585 | | body, [INFO] [stdout] 586 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:619:8 [INFO] [stdout] | [INFO] [stdout] 592 | let test = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 595 | let mut branches = Vec::new(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 619 | Ok(Node::new(start.loc + end.loc, Syntax::SwitchStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 620 | | test, [INFO] [stdout] 621 | | branches, [INFO] [stdout] 622 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> rust/src/visit.rs:273:21 [INFO] [stdout] | [INFO] [stdout] 273 | for name in names { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 273 | while let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 273 | if let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&mut Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> rust/src/visit.rs:730:21 [INFO] [stdout] | [INFO] [stdout] 730 | for name in names { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 730 | while let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 730 | if let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/pure.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 37 | fn from(pure: PureTree) -> Node { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | pure.data.pure.borrow().to_owned() [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: methods `through_char` and `while_not_char` are never used [INFO] [stdout] --> rust/src/lex/mod.rs:148:6 [INFO] [stdout] | [INFO] [stdout] 73 | impl<'a> Lexer<'a> { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 148 | fn through_char(&self, c: u8) -> SyntaxResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | fn while_not_char(&self, a: u8) -> Match { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/ast.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn new(loc: Loc, stx: Syntax) -> Node { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 25 | stx: Box::new(stx), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/mod.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn and_then SyntaxResult>(self, f: F) -> SyntaxResult> { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 65 | Ok(if self.matched { Some(f()?) } else { None }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/class_or_object.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 30 | let mut members = Vec::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 56 | Ok(ParseClassBodyResult { members, end }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/class_or_object.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 93 | let (key_loc, key) = if self.consume_if(TokenType::BracketOpen)?.is_match() { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 94 | let key = self.parse_expr(ctx, TokenType::BracketClose)?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 122 | let (value_loc, value) = [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | if is_generator || is_async || self.peek()?.typ == TokenType::ParenthesisOpen { [INFO] [stdout] 124 | let parameters = self.parse_function_parameters(ctx)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let body = self.parse_function_body(ctx.with_rules(ParsePatternRules { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 141 | let body = self.parse_function_body(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 154 | let param = self.parse_pattern(ctx)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 155 | self.require(TokenType::ParenthesisClose)?; [INFO] [stdout] 156 | let body = self.parse_function_body(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 188 | let value = self.parse_expr_until_either_with_asi( [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 198 | Ok(ParseClassOrObjectMemberResult { [INFO] [stdout] | ________^ [INFO] [stdout] 199 | | key, [INFO] [stdout] 200 | | key_loc, [INFO] [stdout] 201 | | value, [INFO] [stdout] 202 | | value_loc, [INFO] [stdout] 203 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/decl.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 37 | let mut declarators = Vec::new(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 80 | Ok(Node::new(loc, Syntax::VarDecl { [INFO] [stdout] | ________^ [INFO] [stdout] 81 | | export, [INFO] [stdout] 82 | | mode, [INFO] [stdout] 83 | | declarators, [INFO] [stdout] 84 | | })) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/decl.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 97 | let name = match self [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 111 | let parameters = self.parse_function_parameters(ctx)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 112 | let body = self.parse_function_body(ctx.with_rules(ParsePatternRules { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 116 | Ok(Node::new(start + body.loc, Syntax::FunctionDecl { [INFO] [stdout] | ________^ [INFO] [stdout] 117 | | export, [INFO] [stdout] 118 | | export_default, [INFO] [stdout] 119 | | name, [INFO] [stdout] ... | [INFO] [stdout] 126 | | }), [INFO] [stdout] 127 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/decl.rs:162:8 [INFO] [stdout] | [INFO] [stdout] 138 | let name = match self [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 143 | let name_node = Node::new(name, Syntax::ClassOrFunctionName { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 156 | let extends = if self.consume_if(TokenType::KeywordExtends)?.is_match() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 161 | let ParseClassBodyResult { end, members } = self.parse_class_body(ctx)?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 162 | Ok(Node::new(start + end, Syntax::ClassDecl { [INFO] [stdout] | ________^ [INFO] [stdout] 163 | | export, [INFO] [stdout] 164 | | export_default, [INFO] [stdout] 165 | | name, [INFO] [stdout] 166 | | extends, [INFO] [stdout] 167 | | members, [INFO] [stdout] 168 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 315 | let tag_name = self.parse_jsx_tag_name(ctx)?; [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 318 | let mut attributes = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 359 | Ok(if self.consume_if(TokenType::Slash)?.is_match() { [INFO] [stdout] | ________^ [INFO] [stdout] 360 | | // Self closing. [INFO] [stdout] 361 | | let end = self.require(TokenType::ChevronRight)?; [INFO] [stdout] 362 | | Node::new(tag_start.loc + end.loc, Syntax::JsxElement { [INFO] [stdout] ... | [INFO] [stdout] 412 | | }) [INFO] [stdout] 413 | | }) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_____| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:503:8 [INFO] [stdout] | [INFO] [stdout] 481 | let mut elements = Vec::::new(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 503 | Ok(Node::new(loc_start + loc_end, Syntax::LiteralArrayExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 504 | | elements, [INFO] [stdout] 505 | | })) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:560:8 [INFO] [stdout] | [INFO] [stdout] 510 | let mut members = Vec::::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 560 | Ok(Node::new(loc_start + loc_end, Syntax::LiteralObjectExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 561 | | members, [INFO] [stdout] 562 | | })) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:614:8 [INFO] [stdout] | [INFO] [stdout] 573 | let (parameters, arrow) = if !is_async [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 582 | let pattern = Node::new(param_name, Syntax::IdentifierPattern { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 585 | let param = Node::new(param_name, Syntax::ParamDecl { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 592 | let params = self.parse_function_parameters(ctx)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 605 | let body = match self.peek()?.typ { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 614 | Ok(Node::new(body.loc, Syntax::ArrowFunctionExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 615 | | parenthesised: false, [INFO] [stdout] 616 | | function: Node::new(body.loc, Syntax::Function { [INFO] [stdout] 617 | | arrow: true, [INFO] [stdout] ... | [INFO] [stdout] 622 | | }), [INFO] [stdout] 623 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:670:8 [INFO] [stdout] | [INFO] [stdout] 668 | let module = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 669 | let end = self.require(TokenType::ParenthesisClose)?; [INFO] [stdout] 670 | Ok(Node::new(start.loc + end.loc, Syntax::ImportExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 671 | | module, [INFO] [stdout] 672 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:694:8 [INFO] [stdout] | [INFO] [stdout] 679 | let name = match self.peek()? { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 688 | let parameters = self.parse_function_parameters(ctx)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 693 | let body = self.parse_function_body(fn_body_ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 694 | Ok(Node::new(start + body.loc, Syntax::FunctionExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 695 | | parenthesised: false, [INFO] [stdout] 696 | | name, [INFO] [stdout] 697 | | function: Node::new(start + body.loc, Syntax::Function { [INFO] [stdout] ... | [INFO] [stdout] 703 | | }), [INFO] [stdout] 704 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/expr.rs:725:8 [INFO] [stdout] | [INFO] [stdout] 709 | let name = match self.peek()? { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 712 | let name_node = Node::new(t.loc, Syntax::ClassOrFunctionName { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 719 | let extends = if self.consume_if(TokenType::KeywordExtends)?.is_match() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 724 | let ParseClassBodyResult { end, members } = self.parse_class_body(ctx)?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 725 | Ok(Node::new(start + end, Syntax::ClassExpr { [INFO] [stdout] | ________^ [INFO] [stdout] 726 | | parenthesised: false, [INFO] [stdout] 727 | | name, [INFO] [stdout] 728 | | extends, [INFO] [stdout] 729 | | members, [INFO] [stdout] 730 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/function.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 41 | let body = self.parse_stmts(ctx, TokenType::BraceClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 42 | let end = self.require(TokenType::BraceClose)?; [INFO] [stdout] 43 | Ok(Node::new(start.loc + end.loc, Syntax::FunctionBody { [INFO] [stdout] | ________^ [INFO] [stdout] 44 | | body, [INFO] [stdout] 45 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 40 | let alias_node = Node::new(alias, Syntax::IdentifierPattern { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | Ok(ExportName { [INFO] [stdout] | ________^ [INFO] [stdout] 44 | | target: self.string(target), [INFO] [stdout] 45 | | alias: alias_node, [INFO] [stdout] 46 | | }) [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 109 | let body = self.parse_stmts(ctx, TokenType::BraceClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 110 | let end = self.require(TokenType::BraceClose)?; [INFO] [stdout] 111 | Ok(Node::new(start.loc + end.loc, Syntax::BlockStmt { body })) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:245:8 [INFO] [stdout] | [INFO] [stdout] 241 | let expression = self.parse_expr_with_asi(ctx, TokenType::Semicolon, &mut asi)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 245 | Ok(Node::new(expression.loc, Syntax::ExpressionStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 246 | | expression, [INFO] [stdout] 247 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:424:8 [INFO] [stdout] | [INFO] [stdout] 414 | let test = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 415 | self.require(TokenType::ParenthesisClose)?; [INFO] [stdout] 416 | let consequent = self.parse_stmt(ctx)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 417 | let alternate = if self.consume_if(TokenType::KeywordElse)?.is_match() { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 424 | Ok(Node::new(start.loc + end.loc, Syntax::IfStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 425 | | test, [INFO] [stdout] 426 | | consequent, [INFO] [stdout] 427 | | alternate, [INFO] [stdout] 428 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:479:8 [INFO] [stdout] | [INFO] [stdout] 441 | let (default, can_have_names) = [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 442 | if let Some(alias) = self.consume_if(TokenType::Identifier)?.match_loc() { [INFO] [stdout] 443 | let alias_node = Node::new(alias, Syntax::IdentifierPattern { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 453 | let names = if !can_have_names { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 458 | let alias_node = Node::new(alias, Syntax::IdentifierPattern { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 464 | let mut names = Vec::::new(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 465 | while !self.consume_if(TokenType::BraceClose)?.is_match() { [INFO] [stdout] 466 | let name = self.parse_import_or_export_name(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 479 | Ok(Node::new(start.loc, Syntax::ImportStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 480 | | default, [INFO] [stdout] 481 | | module, [INFO] [stdout] 482 | | names, [INFO] [stdout] 483 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:504:8 [INFO] [stdout] | [INFO] [stdout] 489 | let value = [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 497 | let value = self.parse_expr_with_asi(ctx, TokenType::Semicolon, &mut asi)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 504 | Ok(Node::new(loc, Syntax::ReturnStmt { value })) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:518:8 [INFO] [stdout] | [INFO] [stdout] 514 | let value = self.parse_expr_with_asi(ctx, TokenType::Semicolon, &mut asi)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 518 | Ok(Node::new(start.loc + value.loc, Syntax::ThrowStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 519 | | value, [INFO] [stdout] 520 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:556:8 [INFO] [stdout] | [INFO] [stdout] 526 | let wrapped = self.parse_stmt_block(ctx)?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 527 | let catch = if self.consume_if(TokenType::KeywordCatch)?.is_match() { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 528 | let parameter = if self.consume_if(TokenType::ParenthesisOpen)?.is_match() { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 529 | let pattern = self.parse_pattern(ctx)?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 536 | let body = self.parse_stmts(ctx, TokenType::BraceClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 546 | let finally = if self.consume_if(TokenType::KeywordFinally)?.is_match() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 547 | let body = self.parse_stmt_block(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 556 | Ok(Node::new(loc, Syntax::TryStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 557 | | wrapped, [INFO] [stdout] 558 | | catch, [INFO] [stdout] 559 | | finally, [INFO] [stdout] 560 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:569:8 [INFO] [stdout] | [INFO] [stdout] 566 | let condition = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 567 | self.require(TokenType::ParenthesisClose)?; [INFO] [stdout] 568 | let body = self.parse_stmt(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 569 | Ok(Node::new(start.loc + body.loc, Syntax::WhileStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 570 | | condition, [INFO] [stdout] 571 | | body, [INFO] [stdout] 572 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:583:8 [INFO] [stdout] | [INFO] [stdout] 577 | let body = self.parse_stmt(ctx)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 580 | let condition = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 583 | Ok(Node::new(start.loc + end.loc, Syntax::DoWhileStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 584 | | condition, [INFO] [stdout] 585 | | body, [INFO] [stdout] 586 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/stmt.rs:619:8 [INFO] [stdout] | [INFO] [stdout] 592 | let test = self.parse_expr(ctx, TokenType::ParenthesisClose)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 595 | let mut branches = Vec::new(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 619 | Ok(Node::new(start.loc + end.loc, Syntax::SwitchStmt { [INFO] [stdout] | ________^ [INFO] [stdout] 620 | | test, [INFO] [stdout] 621 | | branches, [INFO] [stdout] 622 | | })) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |______| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/tests/expr/mod.rs:18:3 [INFO] [stdout] | [INFO] [stdout] 17 | let node = parser.parse_expr(ctx, TokenType::Semicolon).unwrap(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 18 | serde_json::to_value(&node).unwrap() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/parse/tests/stmt/mod.rs:17:3 [INFO] [stdout] | [INFO] [stdout] 16 | let node = parser.parse_stmt(ctx).unwrap(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 17 | serde_json::to_value(&node).unwrap() [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: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> rust/src/visit.rs:273:21 [INFO] [stdout] | [INFO] [stdout] 273 | for name in names { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 273 | while let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 273 | if let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&mut Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> rust/src/visit.rs:730:21 [INFO] [stdout] | [INFO] [stdout] 730 | for name in names { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 730 | while let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 730 | if let Some(name) = names { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> rust/src/pure.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 37 | fn from(pure: PureTree) -> Node { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | pure.data.pure.borrow().to_owned() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 27 previous errors; 10 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `parse-js` (lib) due to 28 previous errors; 10 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 29 previous errors; 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `parse-js` (lib test) due to 30 previous errors; 9 warnings emitted [INFO] running `Command { std: "docker" "inspect" "47f1d72f33ba68786b675e940ed401b3f150bdb425f9464991adbea1aac2fb2d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "47f1d72f33ba68786b675e940ed401b3f150bdb425f9464991adbea1aac2fb2d", kill_on_drop: false }` [INFO] [stdout] 47f1d72f33ba68786b675e940ed401b3f150bdb425f9464991adbea1aac2fb2d