[INFO] fetching crate boa_parser 0.19.1... [INFO] checking boa_parser-0.19.1 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate boa_parser 0.19.1 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate boa_parser 0.19.1 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate boa_parser 0.19.1 [INFO] finished tweaking crates.io crate boa_parser 0.19.1 [INFO] tweaked toml for crates.io crate boa_parser 0.19.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 58 packages to latest compatible versions [INFO] [stderr] Adding siphasher v0.3.11 (available: v1.0.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] eac16f4f468d47b18d31477b1be66fe949206b456870b0c3a1877095fbf3736f [INFO] running `Command { std: "docker" "start" "-a" "eac16f4f468d47b18d31477b1be66fe949206b456870b0c3a1877095fbf3736f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "eac16f4f468d47b18d31477b1be66fe949206b456870b0c3a1877095fbf3736f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eac16f4f468d47b18d31477b1be66fe949206b456870b0c3a1877095fbf3736f", kill_on_drop: false }` [INFO] [stdout] eac16f4f468d47b18d31477b1be66fe949206b456870b0c3a1877095fbf3736f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 32d1c09f4096d99b0d007c46d021d4a798b89043ae76e1c5cfd1991f4a86458a [INFO] running `Command { std: "docker" "start" "-a" "32d1c09f4096d99b0d007c46d021d4a798b89043ae76e1c5cfd1991f4a86458a", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling siphasher v0.3.11 [INFO] [stderr] Checking writeable v0.5.5 [INFO] [stderr] Checking litemap v0.7.3 [INFO] [stderr] Checking boa_profiler v0.19.1 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking icu_locid_transform_data v1.5.0 [INFO] [stderr] Checking rustc-hash v2.0.0 [INFO] [stderr] Checking icu_properties_data v1.5.0 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling phf_shared v0.11.2 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Compiling phf_generator v0.11.2 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking indexmap v2.5.0 [INFO] [stderr] Checking regress v0.10.1 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Compiling synstructure v0.13.1 [INFO] [stderr] Compiling zerofrom-derive v0.1.4 [INFO] [stderr] Compiling yoke-derive v0.7.4 [INFO] [stderr] Compiling zerovec-derive v0.10.3 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling icu_provider_macros v1.5.0 [INFO] [stderr] Compiling boa_macros v0.19.1 [INFO] [stderr] Compiling phf_macros v0.11.2 [INFO] [stderr] Checking phf v0.11.2 [INFO] [stderr] Checking boa_gc v0.19.1 [INFO] [stderr] Checking zerofrom v0.1.4 [INFO] [stderr] Checking yoke v0.7.4 [INFO] [stderr] Checking boa_interner v0.19.1 [INFO] [stderr] Checking zerovec v0.10.4 [INFO] [stderr] Checking boa_ast v0.19.1 [INFO] [stderr] Checking tinystr v0.7.6 [INFO] [stderr] Checking icu_collections v1.5.0 [INFO] [stderr] Checking icu_locid v1.5.0 [INFO] [stderr] Checking icu_provider v1.5.0 [INFO] [stderr] Checking icu_locid_transform v1.5.0 [INFO] [stderr] Checking icu_properties v1.5.1 [INFO] [stderr] Checking boa_parser v0.19.1 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `boa_parser` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/lexer/operator.rs [INFO] [stderr] * src/lexer/template.rs [INFO] [stderr] * src/lexer/token.rs [INFO] [stderr] * src/parser/expression/mod.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:13:43 [INFO] [stderr] | [INFO] [stderr] 13 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:23:21 [INFO] [stderr] | [INFO] [stderr] 23 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021), +}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:23:43 [INFO] [stderr] | [INFO] [stderr] 23 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021), +}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:23:74 [INFO] [stderr] | [INFO] [stderr] 23 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021), +}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:41:21 [INFO] [stderr] | [INFO] [stderr] 41 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:41:43 [INFO] [stderr] | [INFO] [stderr] 41 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:41:65 [INFO] [stderr] | [INFO] [stderr] 41 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:47:21 [INFO] [stderr] | [INFO] [stderr] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:47:43 [INFO] [stderr] | [INFO] [stderr] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:47:65 [INFO] [stderr] | [INFO] [stderr] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:47:96 [INFO] [stderr] | [INFO] [stderr] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/parser/expression/mod.rs:73:79 [INFO] [stderr] | [INFO] [stderr] 73 | ($name:ident, $lower:ident, [$( $op:path ),*], [$( $low_param:ident ),*], $goal:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stderr] --> src/lexer/token.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 20 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stderr] --> src/lexer/token.rs:59:12 [INFO] [stderr] | [INFO] [stderr] 59 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stderr] --> src/lexer/token.rs:94:12 [INFO] [stderr] | [INFO] [stderr] 94 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:293:16 [INFO] [stdout] | [INFO] [stdout] 293 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:13:32 [INFO] [stdout] | [INFO] [stdout] 13 | ($cursor:ident, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 13 | ($cursor:ident, $assign_op:expr_2021, $op:expr) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/lexer/token.rs:325:12 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:13:42 [INFO] [stdout] | [INFO] [stdout] 13 | ($cursor:ident, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 13 | ($cursor:ident, $assign_op:expr, $op:expr_2021) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:23:32 [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr_2021, $op:expr, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 325 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:23:42 [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr_2021, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:23:71 [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr, {$($case:pat => $block:expr_2021), +}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:41:32 [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:41:49 [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr_2021, $op:expr) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:41:59 [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr_2021) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:47:32 [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:47:49 [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr_2021, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:47:59 [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr_2021, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/lexer/token.rs:293:16 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:47:88 [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/template.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 293 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/parser/expression/mod.rs:73:85 [INFO] [stdout] | [INFO] [stdout] 73 | ($name:ident, $lower:ident, [$( $op:path ),*], [$( $low_param:ident ),*], $goal:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 73 | ($name:ident, $lower:ident, [$( $op:path ),*], [$( $low_param:ident ),*], $goal:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/mod.rs:132:12 [INFO] [stdout] | [INFO] [stdout] 132 | if let Some(c) = self.cursor.peek_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/mod.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 132 ~ match self.cursor.peek_char()? { Some(c) => { [INFO] [stdout] 133 | match c { [INFO] [stdout] ... [INFO] [stdout] 170 | } [INFO] [stdout] 171 ~ } _ => { [INFO] [stdout] 172 | Err(Error::syntax( [INFO] [stdout] ... [INFO] [stdout] 175 | )) [INFO] [stdout] 176 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/regex.rs:79:32 [INFO] [stdout] | [INFO] [stdout] 79 | ... if let Some(sc) = cursor.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/regex.rs:91:29 [INFO] [stdout] | [INFO] [stdout] 91 | ... } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 79 ~ match cursor.next_char()? { Some(sc) => { [INFO] [stdout] 80 | match sc { [INFO] [stdout] ... [INFO] [stdout] 90 | } [INFO] [stdout] 91 ~ } _ => { [INFO] [stdout] 92 | // Abrupt end of regex. [INFO] [stdout] ... [INFO] [stdout] 96 | )); [INFO] [stdout] 97 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | while let Some(ch) = cursor.peek_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:74:15 [INFO] [stdout] | [INFO] [stdout] 74 | while let Some(ch) = cursor.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 92 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:122:15 [INFO] [stdout] | [INFO] [stdout] 122 | while let Some(ch) = cursor.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:128:9 [INFO] [stdout] | [INFO] [stdout] 128 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/cursor.rs:141:23 [INFO] [stdout] | [INFO] [stdout] 141 | } else if let Some(c) = self.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/cursor.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 141 ~ } else { match self.next_char()? { Some(c) => { [INFO] [stdout] 142 | buf.push(c); [INFO] [stdout] 143 ~ } _ => { [INFO] [stdout] 144 | return Err(Error::new( [INFO] [stdout] ... [INFO] [stdout] 147 | )); [INFO] [stdout] 148 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/cursor.rs:165:23 [INFO] [stdout] | [INFO] [stdout] 165 | } else if let Some(byte) = self.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/cursor.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 165 ~ } else { match self.next_char()? { Some(byte) => { [INFO] [stdout] 166 | #[allow(clippy::cast_possible_truncation)] [INFO] [stdout] 167 | buf.push(byte as u8); [INFO] [stdout] 168 ~ } _ => { [INFO] [stdout] 169 | // next_is_pred will return false if the next value is None so the None case should already be handled. [INFO] [stdout] 170 | unreachable!(); [INFO] [stdout] 171 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/lexer/template.rs:12:12 [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/number.rs:205:16 [INFO] [stdout] | [INFO] [stdout] 205 | if let Some(ch) = c? { [INFO] [stdout] | ^^^^^^^^^^^^^^^-- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/number.rs:309:13 [INFO] [stdout] | [INFO] [stdout] 309 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 205 ~ match c? { Some(ch) => { [INFO] [stdout] 206 | match ch { [INFO] [stdout] ... [INFO] [stdout] 308 | } [INFO] [stdout] 309 ~ } _ => { [INFO] [stdout] 310 | // DecimalLiteral lexing. [INFO] [stdout] ... [INFO] [stdout] 315 | )); [INFO] [stdout] 316 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/private_identifier.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | if let Some(next_ch) = cursor.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/private_identifier.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 37 ~ match cursor.next_char()? { Some(next_ch) => { [INFO] [stdout] 38 | if let Ok(c) = char::try_from(next_ch) { [INFO] [stdout] ... [INFO] [stdout] 68 | } [INFO] [stdout] 69 ~ } _ => { [INFO] [stdout] 70 | Err(Error::syntax( [INFO] [stdout] ... [INFO] [stdout] 73 | )) [INFO] [stdout] 74 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 12 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/string.rs:384:24 [INFO] [stdout] | [INFO] [stdout] 384 | if let Some(c) = cursor.peek_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/string.rs:389:21 [INFO] [stdout] | [INFO] [stdout] 389 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 384 ~ match cursor.peek_char()? { Some(c) => { [INFO] [stdout] 385 | if (0x30..=0x37/* 0..=7 */).contains(&c) { [INFO] [stdout] ... [INFO] [stdout] 388 | } [INFO] [stdout] 389 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/mod.rs:287:15 [INFO] [stdout] | [INFO] [stdout] 287 | Ok(if let Some(token) = self.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/mod.rs:293:9 [INFO] [stdout] | [INFO] [stdout] 293 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 287 ~ Ok(match self.peek(0, interner)? { Some(token) => { [INFO] [stdout] 288 | if token.kind() == &kind.into() { [INFO] [stdout] ... [INFO] [stdout] 292 | } [INFO] [stdout] 293 ~ } _ => { [INFO] [stdout] 294 | None [INFO] [stdout] 295 ~ }}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | if let Some(ref token) = self.peeked[previous_index] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^--------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 136 ~ match self.peeked[previous_index] { Some(ref token) => { [INFO] [stdout] 137 | if token.kind() == &TokenKind::LineTerminator { [INFO] [stdout] ... [INFO] [stdout] 157 | } [INFO] [stdout] 158 ~ } _ => { [INFO] [stdout] 159 | self.peeked[self.write_index] = self.lexer.next(interner)?; [INFO] [stdout] 160 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:143:24 [INFO] [stdout] | [INFO] [stdout] 143 | if let Some(ref token) = next { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 149 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 143 ~ match next { Some(ref token) => { [INFO] [stdout] 144 | match token.kind() { [INFO] [stdout] ... [INFO] [stdout] 148 | } [INFO] [stdout] 149 ~ } _ => { [INFO] [stdout] 150 | break None; [INFO] [stdout] 151 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | if let Some(ref token) = self.peeked[self.read_index] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:204:9 [INFO] [stdout] | [INFO] [stdout] 204 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 191 ~ match self.peeked[self.read_index] { Some(ref token) => { [INFO] [stdout] 192 | if skip_line_terminators && token.kind() == &TokenKind::LineTerminator { [INFO] [stdout] ... [INFO] [stdout] 203 | Ok(tok) [INFO] [stdout] 204 ~ } _ => { [INFO] [stdout] 205 | // We do not update the read index, since we should always return `None` from now on. [INFO] [stdout] 206 | Ok(None) [INFO] [stdout] 207 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:245:16 [INFO] [stdout] | [INFO] [stdout] 245 | if let Some(ref token) = self.peeked[read_index] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:257:13 [INFO] [stdout] | [INFO] [stdout] 257 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 245 ~ match self.peeked[read_index] { Some(ref token) => { [INFO] [stdout] 246 | if skip_line_terminators && token.kind() == &TokenKind::LineTerminator { [INFO] [stdout] ... [INFO] [stdout] 256 | } [INFO] [stdout] 257 ~ } _ => { [INFO] [stdout] 258 | break None; [INFO] [stdout] 259 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:160:15 [INFO] [stdout] | [INFO] [stdout] 160 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:194:9 [INFO] [stdout] | [INFO] [stdout] 194 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: aborting due to 13 previous errors; 6 warnings emitted [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:279:15 [INFO] [stdout] | [INFO] [stdout] 279 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:347:9 [INFO] [stdout] | [INFO] [stdout] 347 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 386 | / expression!( [INFO] [stdout] 387 | | BitwiseORExpression, [INFO] [stdout] 388 | | BitwiseXORExpression, [INFO] [stdout] 389 | | [Punctuator::Or], [INFO] [stdout] 390 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 391 | | None:: [INFO] [stdout] 392 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 386 | / expression!( [INFO] [stdout] 387 | | BitwiseORExpression, [INFO] [stdout] 388 | | BitwiseXORExpression, [INFO] [stdout] 389 | | [Punctuator::Or], [INFO] [stdout] 390 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 391 | | None:: [INFO] [stdout] 392 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 428 | / expression!( [INFO] [stdout] 429 | | BitwiseXORExpression, [INFO] [stdout] 430 | | BitwiseANDExpression, [INFO] [stdout] 431 | | [Punctuator::Xor], [INFO] [stdout] 432 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 433 | | None:: [INFO] [stdout] 434 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 428 | / expression!( [INFO] [stdout] 429 | | BitwiseXORExpression, [INFO] [stdout] 430 | | BitwiseANDExpression, [INFO] [stdout] 431 | | [Punctuator::Xor], [INFO] [stdout] 432 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 433 | | None:: [INFO] [stdout] 434 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 470 | / expression!( [INFO] [stdout] 471 | | BitwiseANDExpression, [INFO] [stdout] 472 | | EqualityExpression, [INFO] [stdout] 473 | | [Punctuator::And], [INFO] [stdout] 474 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 475 | | None:: [INFO] [stdout] 476 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 470 | / expression!( [INFO] [stdout] 471 | | BitwiseANDExpression, [INFO] [stdout] 472 | | EqualityExpression, [INFO] [stdout] 473 | | [Punctuator::And], [INFO] [stdout] 474 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 475 | | None:: [INFO] [stdout] 476 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 512 | / expression!( [INFO] [stdout] 513 | | EqualityExpression, [INFO] [stdout] 514 | | RelationalExpression, [INFO] [stdout] 515 | | [ [INFO] [stdout] ... | [INFO] [stdout] 522 | | None:: [INFO] [stdout] 523 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 512 | / expression!( [INFO] [stdout] 513 | | EqualityExpression, [INFO] [stdout] 514 | | RelationalExpression, [INFO] [stdout] 515 | | [ [INFO] [stdout] ... | [INFO] [stdout] 522 | | None:: [INFO] [stdout] 523 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:598:15 [INFO] [stdout] | [INFO] [stdout] 598 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:636:9 [INFO] [stdout] | [INFO] [stdout] 636 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 673 | / expression!( [INFO] [stdout] 674 | | ShiftExpression, [INFO] [stdout] 675 | | AdditiveExpression, [INFO] [stdout] 676 | | [ [INFO] [stdout] ... | [INFO] [stdout] 682 | | None:: [INFO] [stdout] 683 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 673 | / expression!( [INFO] [stdout] 674 | | ShiftExpression, [INFO] [stdout] 675 | | AdditiveExpression, [INFO] [stdout] 676 | | [ [INFO] [stdout] ... | [INFO] [stdout] 682 | | None:: [INFO] [stdout] 683 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 718 | / expression!( [INFO] [stdout] 719 | | AdditiveExpression, [INFO] [stdout] 720 | | MultiplicativeExpression, [INFO] [stdout] 721 | | [Punctuator::Add, Punctuator::Sub], [INFO] [stdout] 722 | | [name, allow_yield, allow_await], [INFO] [stdout] 723 | | None:: [INFO] [stdout] 724 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 718 | / expression!( [INFO] [stdout] 719 | | AdditiveExpression, [INFO] [stdout] 720 | | MultiplicativeExpression, [INFO] [stdout] 721 | | [Punctuator::Add, Punctuator::Sub], [INFO] [stdout] 722 | | [name, allow_yield, allow_await], [INFO] [stdout] 723 | | None:: [INFO] [stdout] 724 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 759 | / expression!( [INFO] [stdout] 760 | | MultiplicativeExpression, [INFO] [stdout] 761 | | ExponentiationExpression, [INFO] [stdout] 762 | | [Punctuator::Mul, Punctuator::Div, Punctuator::Mod], [INFO] [stdout] 763 | | [name, allow_yield, allow_await], [INFO] [stdout] 764 | | Some(InputElement::Div) [INFO] [stdout] 765 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 759 | / expression!( [INFO] [stdout] 760 | | MultiplicativeExpression, [INFO] [stdout] 761 | | ExponentiationExpression, [INFO] [stdout] 762 | | [Punctuator::Mul, Punctuator::Div, Punctuator::Mod], [INFO] [stdout] 763 | | [name, allow_yield, allow_await], [INFO] [stdout] 764 | | Some(InputElement::Div) [INFO] [stdout] 765 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:121:20 [INFO] [stdout] | [INFO] [stdout] 121 | if let Ok(tok) = [INFO] [stdout] | ____________________^ [INFO] [stdout] 122 | | cursor.peek_expect_no_lineterminator(skip_n, "assignment expression", interner) [INFO] [stdout] | |_____________________------------------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 121 ~ match cursor.peek_expect_no_lineterminator(skip_n, "assignment expression", interner) [INFO] [stdout] 122 ~ { Ok(tok) => { [INFO] [stdout] 123 | if tok.kind() == &TokenKind::Punctuator(Punctuator::Arrow) { [INFO] [stdout] ... [INFO] [stdout] 132 | } [INFO] [stdout] 133 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:250:24 [INFO] [stdout] | [INFO] [stdout] 250 | if let Some(target) = AssignTarget::from_expression(&lhs, cursor.strict()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^---------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:256:21 [INFO] [stdout] | [INFO] [stdout] 256 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 250 ~ match AssignTarget::from_expression(&lhs, cursor.strict()) { Some(target) => { [INFO] [stdout] 251 | if let Expression::Identifier(ident) = lhs { [INFO] [stdout] ... [INFO] [stdout] 255 | lhs = Assign::new(AssignOp::Assign, target, expr).into(); [INFO] [stdout] 256 ~ } _ => { [INFO] [stdout] 257 | return Err(Error::lex(LexError::Syntax( [INFO] [stdout] ... [INFO] [stdout] 260 | ))); [INFO] [stdout] 261 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:265:24 [INFO] [stdout] | [INFO] [stdout] 265 | if let Some(target) = [INFO] [stdout] | ________________________^ [INFO] [stdout] 266 | | AssignTarget::from_expression_simple(&lhs, cursor.strict()) [INFO] [stdout] | |_________________________----------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:280:21 [INFO] [stdout] | [INFO] [stdout] 280 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 265 ~ match AssignTarget::from_expression_simple(&lhs, cursor.strict()) [INFO] [stdout] 266 ~ { Some(target) => { [INFO] [stdout] 267 | let assignop = p.as_assign_op().expect("assignop disappeared"); [INFO] [stdout] ... [INFO] [stdout] 278 | lhs = Assign::new(assignop, target, rhs).into(); [INFO] [stdout] 279 ~ } _ => { [INFO] [stdout] 280 | return Err(Error::lex(LexError::Syntax( [INFO] [stdout] ... [INFO] [stdout] 283 | ))); [INFO] [stdout] 284 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:273:32 [INFO] [stdout] | [INFO] [stdout] 273 | ... if let AssignTarget::Identifier(ident) = target { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:275:29 [INFO] [stdout] | [INFO] [stdout] 275 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 273 ~ match target { AssignTarget::Identifier(ident) => { [INFO] [stdout] 274 | self.name = Some(ident); [INFO] [stdout] 275 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/mod.rs:107:28 [INFO] [stdout] | [INFO] [stdout] 107 | if let Some(next) = cursor.peek(1, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/mod.rs:111:25 [INFO] [stdout] | [INFO] [stdout] 111 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 107 ~ match cursor.peek(1, interner)? { Some(next) => { [INFO] [stdout] 108 | if next.kind() == &TokenKind::Punctuator(Punctuator::OpenParen) { [INFO] [stdout] 109 | return Ok(true); [INFO] [stdout] 110 | } [INFO] [stdout] 111 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/call.rs:125:15 [INFO] [stdout] | [INFO] [stdout] 125 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/call.rs:187:9 [INFO] [stdout] | [INFO] [stdout] 187 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/member.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/member.rs:282:9 [INFO] [stdout] | [INFO] [stdout] 282 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/optional/mod.rs:109:15 [INFO] [stdout] | [INFO] [stdout] 109 | while let Some(token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/optional/mod.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 166 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/primary/mod.rs:253:20 [INFO] [stdout] | [INFO] [stdout] 253 | if let TokenKind::RegularExpressionLiteral(body, flags) = *tok.kind() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/primary/mod.rs:255:17 [INFO] [stdout] | [INFO] [stdout] 255 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 253 ~ match *tok.kind() { TokenKind::RegularExpressionLiteral(body, flags) => { [INFO] [stdout] 254 | Ok(AstRegExp::new(body, flags).into()) [INFO] [stdout] 255 ~ } _ => { [INFO] [stdout] 256 | // A regex was expected and nothing else. [INFO] [stdout] ... [INFO] [stdout] 261 | )) [INFO] [stdout] 262 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:559:28 [INFO] [stdout] | [INFO] [stdout] 559 | if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:660:25 [INFO] [stdout] | [INFO] [stdout] 660 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 559 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 560 | match peek_token.kind() { [INFO] [stdout] ... [INFO] [stdout] 659 | } [INFO] [stdout] 660 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:565:40 [INFO] [stdout] | [INFO] [stdout] 565 | ... if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:589:37 [INFO] [stdout] | [INFO] [stdout] 589 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 565 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 566 | match peek_token.kind() { [INFO] [stdout] ... [INFO] [stdout] 588 | } [INFO] [stdout] 589 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:598:40 [INFO] [stdout] | [INFO] [stdout] 598 | ... if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:624:37 [INFO] [stdout] | [INFO] [stdout] 624 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 598 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 599 | match peek_token.kind() { [INFO] [stdout] ... [INFO] [stdout] 623 | } [INFO] [stdout] 624 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:633:40 [INFO] [stdout] | [INFO] [stdout] 633 | ... if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:657:37 [INFO] [stdout] | [INFO] [stdout] 657 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 633 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 634 | match peek_token.kind() { [INFO] [stdout] ... [INFO] [stdout] 656 | } [INFO] [stdout] 657 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:692:16 [INFO] [stdout] | [INFO] [stdout] 692 | if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:700:13 [INFO] [stdout] | [INFO] [stdout] 700 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 692 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 693 | if peek_token.kind() == &TokenKind::Punctuator(Punctuator::Comma) { [INFO] [stdout] ... [INFO] [stdout] 699 | } [INFO] [stdout] 700 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:890:16 [INFO] [stdout] | [INFO] [stdout] 890 | if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:903:13 [INFO] [stdout] | [INFO] [stdout] 903 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 890 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 891 | if peek_token.kind() == &TokenKind::Punctuator(Punctuator::Comma) { [INFO] [stdout] ... [INFO] [stdout] 902 | } [INFO] [stdout] 903 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/break_stm/mod.rs:64:24 [INFO] [stdout] | [INFO] [stdout] 64 | let label = if let SemicolonResult::Found(tok) = cursor.peek_semicolon(interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/break_stm/mod.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 64 ~ let label = match cursor.peek_semicolon(interner)? { SemicolonResult::Found(tok) => { [INFO] [stdout] 65 | if tok.map(Token::kind) == Some(&TokenKind::Punctuator(Punctuator::Semicolon)) { [INFO] [stdout] ... [INFO] [stdout] 69 | None [INFO] [stdout] 70 ~ } _ => { [INFO] [stdout] 71 | let label = LabelIdentifier::new(self.allow_yield, self.allow_await) [INFO] [stdout] ... [INFO] [stdout] 76 | Some(label) [INFO] [stdout] 77 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/continue_stm/mod.rs:64:24 [INFO] [stdout] | [INFO] [stdout] 64 | let label = if let SemicolonResult::Found(tok) = cursor.peek_semicolon(interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/continue_stm/mod.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 64 ~ let label = match cursor.peek_semicolon(interner)? { SemicolonResult::Found(tok) => { [INFO] [stdout] 65 | if let Some(token) = tok { [INFO] [stdout] ... [INFO] [stdout] 77 | None [INFO] [stdout] 78 ~ } _ => { [INFO] [stdout] 79 | let label = LabelIdentifier::new(self.allow_yield, self.allow_await) [INFO] [stdout] ... [INFO] [stdout] 84 | Some(label) [INFO] [stdout] 85 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/continue_stm/mod.rs:69:24 [INFO] [stdout] | [INFO] [stdout] 69 | if let Some(token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/continue_stm/mod.rs:73:21 [INFO] [stdout] | [INFO] [stdout] 73 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 69 ~ match cursor.peek(0, interner)? { Some(token) => { [INFO] [stdout] 70 | if token.kind() == &TokenKind::Punctuator(Punctuator::Semicolon) { [INFO] [stdout] 71 | cursor.advance(interner); [INFO] [stdout] 72 | } [INFO] [stdout] 73 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/declaration/hoistable/class_decl/mod.rs:191:20 [INFO] [stdout] | [INFO] [stdout] 191 | if let Some(constructor) = &constructor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^----------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/declaration/hoistable/class_decl/mod.rs:198:17 [INFO] [stdout] | [INFO] [stdout] 198 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 191 ~ match &constructor { Some(constructor) => { [INFO] [stdout] 192 | if contains(constructor, ContainsSymbol::SuperCall) { [INFO] [stdout] ... [INFO] [stdout] 197 | } [INFO] [stdout] 198 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/declaration/import.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | if let Some(token) = cursor.peek(1, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/declaration/import.rs:64:17 [INFO] [stdout] | [INFO] [stdout] 64 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 56 ~ match cursor.peek(1, interner)? { Some(token) => { [INFO] [stdout] 57 | match token.kind() { [INFO] [stdout] ... [INFO] [stdout] 63 | } [INFO] [stdout] 64 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/if_stm/mod.rs:101:28 [INFO] [stdout] | [INFO] [stdout] 101 | let else_stmt = if let Some(token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/if_stm/mod.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 101 ~ let else_stmt = match cursor.peek(0, interner)? { Some(token) => { [INFO] [stdout] 102 | match token.kind() { [INFO] [stdout] ... [INFO] [stdout] 152 | } [INFO] [stdout] 153 ~ } _ => { [INFO] [stdout] 154 | None [INFO] [stdout] 155 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/iteration/for_statement.rs:341:19 [INFO] [stdout] | [INFO] [stdout] 341 | while let ast::Expression::Parenthesized(p) = expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/iteration/for_statement.rs:343:13 [INFO] [stdout] | [INFO] [stdout] 343 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/function/mod.rs:256:12 [INFO] [stdout] | [INFO] [stdout] 256 | if let Some(t) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/function/mod.rs:304:9 [INFO] [stdout] | [INFO] [stdout] 304 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 256 ~ match cursor.peek(0, interner)? { Some(t) => { [INFO] [stdout] 257 | let declaration = match *t.kind() { [INFO] [stdout] ... [INFO] [stdout] 303 | Ok(Self::Output::new(declaration, true)) [INFO] [stdout] 304 ~ } _ => { [INFO] [stdout] 305 | Ok(Self::Output::new( [INFO] [stdout] ... [INFO] [stdout] 308 | )) [INFO] [stdout] 309 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/function/mod.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 350 | if let Some(t) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/function/mod.rs:402:9 [INFO] [stdout] | [INFO] [stdout] 402 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 350 ~ match cursor.peek(0, interner)? { Some(t) => { [INFO] [stdout] 351 | let declaration = match *t.kind() { [INFO] [stdout] ... [INFO] [stdout] 401 | Ok(Self::Output::new(declaration, false)) [INFO] [stdout] 402 ~ } _ => { [INFO] [stdout] 403 | Ok(Self::Output::new( [INFO] [stdout] ... [INFO] [stdout] 406 | )) [INFO] [stdout] 407 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 68 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `boa_parser` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/lexer/operator.rs [INFO] [stderr] * src/lexer/template.rs [INFO] [stderr] * src/lexer/token.rs [INFO] [stderr] * src/parser/expression/mod.rs [INFO] [stderr] * src/parser/expression/primary/function_expression/tests.rs [INFO] [stderr] * src/parser/statement/declaration/hoistable/function_decl/tests.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:13:43 [INFO] [stderr] | [INFO] [stderr] 13 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:23:21 [INFO] [stderr] | [INFO] [stderr] 23 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021), +}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:23:43 [INFO] [stderr] | [INFO] [stderr] 23 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021), +}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:23:74 [INFO] [stderr] | [INFO] [stderr] 23 | ($cursor:ident, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021), +}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:41:21 [INFO] [stderr] | [INFO] [stderr] 41 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:41:43 [INFO] [stderr] | [INFO] [stderr] 41 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:41:65 [INFO] [stderr] | [INFO] [stderr] 41 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:47:21 [INFO] [stderr] | [INFO] [stderr] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:47:43 [INFO] [stderr] | [INFO] [stderr] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:47:65 [INFO] [stderr] | [INFO] [stderr] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lexer/operator.rs:47:96 [INFO] [stderr] | [INFO] [stderr] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr_2021, $op:expr_2021, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/parser/expression/mod.rs:73:79 [INFO] [stderr] | [INFO] [stderr] 73 | ($name:ident, $lower:ident, [$( $op:path ),*], [$( $low_param:ident ),*], $goal:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/parser/expression/primary/function_expression/tests.rs:107:28 [INFO] [stderr] | [INFO] [stderr] 107 | ($keyword:literal, $interner:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/parser/statement/declaration/hoistable/function_decl/tests.rs:33:28 [INFO] [stderr] | [INFO] [stderr] 33 | ($keyword:literal, $interner:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stderr] --> src/lexer/token.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 20 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let gen = interner.get_or_intern_static("gen", utf16!("gen")); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | gen.into(), [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:25:30 [INFO] [stdout] | [INFO] [stdout] 25 | Some(gen.into()), [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let gen = interner.get_or_intern_static("gen", utf16!("gen")); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/lexer/token.rs:59:12 [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | gen.into(), [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stderr] 59 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:60:30 [INFO] [stdout] | [INFO] [stdout] 60 | Some(gen.into()), [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/lexer/token.rs:94:12 [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 94 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:293:16 [INFO] [stdout] | [INFO] [stdout] 293 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:13:32 [INFO] [stdout] | [INFO] [stdout] 13 | ($cursor:ident, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 13 | ($cursor:ident, $assign_op:expr_2021, $op:expr) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:13:42 [INFO] [stdout] | [INFO] [stdout] 13 | ($cursor:ident, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 13 | ($cursor:ident, $assign_op:expr, $op:expr_2021) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:23:32 [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr_2021, $op:expr, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stderr] --> src/lexer/token.rs:325:12 [INFO] [stderr] | [INFO] [stderr] 325 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stderr] --> src/lexer/token.rs:293:16 [INFO] [stderr] | [INFO] [stderr] 293 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `deser` [INFO] [stderr] --> src/lexer/template.rs:12:12 [INFO] [stderr] | [INFO] [stderr] 12 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:23:42 [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr_2021, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:23:71 [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr, {$($case:pat => $block:expr), +}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 23 | ($cursor:ident, $assign_op:expr, $op:expr, {$($case:pat => $block:expr_2021), +}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] error: aborting due to 15 previous errors; 6 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:41:32 [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:41:49 [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr_2021, $op:expr) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:41:59 [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 41 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr_2021) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:47:32 [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr_2021, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:47:49 [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr_2021, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:47:59 [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr_2021, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lexer/operator.rs:47:88 [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr),+}) => ({ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ($cursor:ident, $start_pos:expr, $assign_op:expr, $op:expr, {$($case:pat => $block:expr_2021),+}) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/template.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/parser/expression/primary/function_expression/tests.rs:107:38 [INFO] [stdout] | [INFO] [stdout] 107 | ($keyword:literal, $interner:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 107 | ($keyword:literal, $interner:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/parser/expression/mod.rs:73:85 [INFO] [stdout] | [INFO] [stdout] 73 | ($name:ident, $lower:ident, [$( $op:path ),*], [$( $low_param:ident ),*], $goal:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 73 | ($name:ident, $lower:ident, [$( $op:path ),*], [$( $low_param:ident ),*], $goal:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/parser/statement/declaration/hoistable/function_decl/tests.rs:33:38 [INFO] [stdout] | [INFO] [stdout] 33 | ($keyword:literal, $interner:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 33 | ($keyword:literal, $interner:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/error/tests.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | if let Error::Expected { [INFO] [stdout] | ________^ [INFO] [stdout] 20 | | expected, [INFO] [stdout] 21 | | found, [INFO] [stdout] 22 | | span, [INFO] [stdout] 23 | | context, [INFO] [stdout] 24 | | } = error [INFO] [stdout] | |_________----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/error/tests.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 19 ~ match error [INFO] [stdout] 20 ~ { Error::Expected { [INFO] [stdout] 21 + expected, [INFO] [stdout] 22 + found, [INFO] [stdout] 23 + span, [INFO] [stdout] 24 + context, [INFO] [stdout] 25 ~ } => { [INFO] [stdout] 26 | assert_eq!(expected.as_ref(), &["testing".to_owned()]); [INFO] [stdout] ... [INFO] [stdout] 29 | assert_eq!(context, "after"); [INFO] [stdout] 30 ~ } _ => { [INFO] [stdout] 31 | unreachable!(); [INFO] [stdout] 32 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/error/tests.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | if let Error::General { message, position } = err { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/error/tests.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 56 ~ match err { Error::General { message, position } => { [INFO] [stdout] 57 | assert_eq!( [INFO] [stdout] ... [INFO] [stdout] 61 | assert_eq!(position, Position::new(1, 1)); [INFO] [stdout] 62 ~ } _ => { [INFO] [stdout] 63 | unreachable!() [INFO] [stdout] 64 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/error/tests.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | if let Error::General { message, position } = err { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/error/tests.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 67 ~ match err { Error::General { message, position } => { [INFO] [stdout] 68 | assert_eq!( [INFO] [stdout] ... [INFO] [stdout] 72 | assert_eq!(position, Position::new(1, 1)); [INFO] [stdout] 73 ~ } _ => { [INFO] [stdout] 74 | unreachable!() [INFO] [stdout] 75 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/error/tests.rs:81:8 [INFO] [stdout] | [INFO] [stdout] 81 | if let Error::General { message, position } = err { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/error/tests.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 87 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 81 ~ match err { Error::General { message, position } => { [INFO] [stdout] 82 | assert_eq!( [INFO] [stdout] ... [INFO] [stdout] 86 | assert_eq!(position, Position::new(1, 1)); [INFO] [stdout] 87 ~ } _ => { [INFO] [stdout] 88 | unreachable!() [INFO] [stdout] 89 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/mod.rs:132:12 [INFO] [stdout] | [INFO] [stdout] 132 | if let Some(c) = self.cursor.peek_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/mod.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 132 ~ match self.cursor.peek_char()? { Some(c) => { [INFO] [stdout] 133 | match c { [INFO] [stdout] ... [INFO] [stdout] 170 | } [INFO] [stdout] 171 ~ } _ => { [INFO] [stdout] 172 | Err(Error::syntax( [INFO] [stdout] ... [INFO] [stdout] 175 | )) [INFO] [stdout] 176 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/error.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | if let Error::Syntax(err, pos) = err { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/error.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 79 ~ match err { Error::Syntax(err, pos) => { [INFO] [stdout] 80 | assert_eq!(err.as_ref(), "testing"); [INFO] [stdout] 81 | assert_eq!(pos, Position::new(1, 1)); [INFO] [stdout] 82 ~ } _ => { [INFO] [stdout] 83 | unreachable!() [INFO] [stdout] 84 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/error.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | if let Error::IO(err) = err { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^--- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/error.rs:97:9 [INFO] [stdout] | [INFO] [stdout] 97 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 95 ~ match err { Error::IO(err) => { [INFO] [stdout] 96 | assert_eq!(err.to_string(), "I/O error"); [INFO] [stdout] 97 ~ } _ => { [INFO] [stdout] 98 | unreachable!() [INFO] [stdout] 99 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/regex.rs:79:32 [INFO] [stdout] | [INFO] [stdout] 79 | ... if let Some(sc) = cursor.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/regex.rs:91:29 [INFO] [stdout] | [INFO] [stdout] 91 | ... } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 79 ~ match cursor.next_char()? { Some(sc) => { [INFO] [stdout] 80 | match sc { [INFO] [stdout] ... [INFO] [stdout] 90 | } [INFO] [stdout] 91 ~ } _ => { [INFO] [stdout] 92 | // Abrupt end of regex. [INFO] [stdout] ... [INFO] [stdout] 96 | )); [INFO] [stdout] 97 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | while let Some(ch) = cursor.peek_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:74:15 [INFO] [stdout] | [INFO] [stdout] 74 | while let Some(ch) = cursor.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 92 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:122:15 [INFO] [stdout] | [INFO] [stdout] 122 | while let Some(ch) = cursor.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/comment.rs:128:9 [INFO] [stdout] | [INFO] [stdout] 128 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/cursor.rs:141:23 [INFO] [stdout] | [INFO] [stdout] 141 | } else if let Some(c) = self.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/cursor.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 141 ~ } else { match self.next_char()? { Some(c) => { [INFO] [stdout] 142 | buf.push(c); [INFO] [stdout] 143 ~ } _ => { [INFO] [stdout] 144 | return Err(Error::new( [INFO] [stdout] ... [INFO] [stdout] 147 | )); [INFO] [stdout] 148 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/cursor.rs:165:23 [INFO] [stdout] | [INFO] [stdout] 165 | } else if let Some(byte) = self.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/cursor.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 165 ~ } else { match self.next_char()? { Some(byte) => { [INFO] [stdout] 166 | #[allow(clippy::cast_possible_truncation)] [INFO] [stdout] 167 | buf.push(byte as u8); [INFO] [stdout] 168 ~ } _ => { [INFO] [stdout] 169 | // next_is_pred will return false if the next value is None so the None case should already be handled. [INFO] [stdout] 170 | unreachable!(); [INFO] [stdout] 171 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/number.rs:205:16 [INFO] [stdout] | [INFO] [stdout] 205 | if let Some(ch) = c? { [INFO] [stdout] | ^^^^^^^^^^^^^^^-- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/number.rs:309:13 [INFO] [stdout] | [INFO] [stdout] 309 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 205 ~ match c? { Some(ch) => { [INFO] [stdout] 206 | match ch { [INFO] [stdout] ... [INFO] [stdout] 308 | } [INFO] [stdout] 309 ~ } _ => { [INFO] [stdout] 310 | // DecimalLiteral lexing. [INFO] [stdout] ... [INFO] [stdout] 315 | )); [INFO] [stdout] 316 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/private_identifier.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | if let Some(next_ch) = cursor.next_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/private_identifier.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 37 ~ match cursor.next_char()? { Some(next_ch) => { [INFO] [stdout] 38 | if let Ok(c) = char::try_from(next_ch) { [INFO] [stdout] ... [INFO] [stdout] 68 | } [INFO] [stdout] 69 ~ } _ => { [INFO] [stdout] 70 | Err(Error::syntax( [INFO] [stdout] ... [INFO] [stdout] 73 | )) [INFO] [stdout] 74 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/string.rs:384:24 [INFO] [stdout] | [INFO] [stdout] 384 | if let Some(c) = cursor.peek_char()? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/string.rs:389:21 [INFO] [stdout] | [INFO] [stdout] 389 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 384 ~ match cursor.peek_char()? { Some(c) => { [INFO] [stdout] 385 | if (0x30..=0x37/* 0..=7 */).contains(&c) { [INFO] [stdout] ... [INFO] [stdout] 388 | } [INFO] [stdout] 389 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:842:8 [INFO] [stdout] | [INFO] [stdout] 842 | if let Error::Syntax(_, pos) = err { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^--- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:844:5 [INFO] [stdout] | [INFO] [stdout] 844 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 842 ~ match err { Error::Syntax(_, pos) => { [INFO] [stdout] 843 | assert_eq!(pos, Position::new(1, 5)); [INFO] [stdout] 844 ~ } _ => { [INFO] [stdout] 845 | panic!("invalid error type"); [INFO] [stdout] 846 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:852:8 [INFO] [stdout] | [INFO] [stdout] 852 | if let Error::Syntax(_, pos) = lexer [INFO] [stdout] | ________^ - [INFO] [stdout] | |____________________________________| [INFO] [stdout] 853 | || .next(interner) [INFO] [stdout] 854 | || .expect_err("IdentifierStart '$' following NumericLiteral not rejected as expected") [INFO] [stdout] | ||____________________________________________________________________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |____________________________________________________________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:857:5 [INFO] [stdout] | [INFO] [stdout] 857 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 852 ~ match lexer [INFO] [stdout] 853 | .next(interner) [INFO] [stdout] 854 | .expect_err("IdentifierStart '$' following NumericLiteral not rejected as expected") [INFO] [stdout] 855 ~ { Error::Syntax(_, pos) => { [INFO] [stdout] 856 | assert_eq!(pos, Position::new(1, 5)); [INFO] [stdout] 857 ~ } _ => { [INFO] [stdout] 858 | panic!("invalid error type"); [INFO] [stdout] 859 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:864:8 [INFO] [stdout] | [INFO] [stdout] 864 | if let Error::Syntax(_, pos) = lexer [INFO] [stdout] | ________^ - [INFO] [stdout] | |____________________________________| [INFO] [stdout] 865 | || .next(interner) [INFO] [stdout] 866 | || .expect_err("IdentifierStart '_' following NumericLiteral not rejected as expected") [INFO] [stdout] | ||____________________________________________________________________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |____________________________________________________________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:869:5 [INFO] [stdout] | [INFO] [stdout] 869 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 864 ~ match lexer [INFO] [stdout] 865 | .next(interner) [INFO] [stdout] 866 | .expect_err("IdentifierStart '_' following NumericLiteral not rejected as expected") [INFO] [stdout] 867 ~ { Error::Syntax(_, pos) => { [INFO] [stdout] 868 | assert_eq!(pos, Position::new(1, 5)); [INFO] [stdout] 869 ~ } _ => { [INFO] [stdout] 870 | panic!("invalid error type"); [INFO] [stdout] 871 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:926:8 [INFO] [stdout] | [INFO] [stdout] 926 | if let Error::Syntax(_, pos) = lexer [INFO] [stdout] | ________^ - [INFO] [stdout] | |____________________________________| [INFO] [stdout] 927 | || .next(interner) [INFO] [stdout] 928 | || .expect_err("Malformed Unicode character sequence expected") [INFO] [stdout] | ||____________________________________________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |____________________________________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:931:5 [INFO] [stdout] | [INFO] [stdout] 931 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 926 ~ match lexer [INFO] [stdout] 927 | .next(interner) [INFO] [stdout] 928 | .expect_err("Malformed Unicode character sequence expected") [INFO] [stdout] 929 ~ { Error::Syntax(_, pos) => { [INFO] [stdout] 930 | assert_eq!(pos, Position::new(1, 1)); [INFO] [stdout] 931 ~ } _ => { [INFO] [stdout] 932 | panic!("invalid error type"); [INFO] [stdout] 933 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:937:8 [INFO] [stdout] | [INFO] [stdout] 937 | if let Error::Syntax(_, pos) = lexer [INFO] [stdout] | ________^ - [INFO] [stdout] | |____________________________________| [INFO] [stdout] 938 | || .next(interner) [INFO] [stdout] 939 | || .expect_err("Malformed Unicode character sequence expected") [INFO] [stdout] | ||____________________________________________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |____________________________________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:942:5 [INFO] [stdout] | [INFO] [stdout] 942 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 937 ~ match lexer [INFO] [stdout] 938 | .next(interner) [INFO] [stdout] 939 | .expect_err("Malformed Unicode character sequence expected") [INFO] [stdout] 940 ~ { Error::Syntax(_, pos) => { [INFO] [stdout] 941 | assert_eq!(pos, Position::new(1, 1)); [INFO] [stdout] 942 ~ } _ => { [INFO] [stdout] 943 | panic!("invalid error type"); [INFO] [stdout] 944 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:1003:12 [INFO] [stdout] | [INFO] [stdout] 1003 | if let Error::Syntax(_, pos) = lexer [INFO] [stdout] | ____________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 1004 | || .next(interner) [INFO] [stdout] 1005 | || .expect_err("Octal-escape in strict mode not rejected as expected") [INFO] [stdout] | ||_______________________________________________________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________________________________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:1008:9 [INFO] [stdout] | [INFO] [stdout] 1008 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1003 ~ match lexer [INFO] [stdout] 1004 | .next(interner) [INFO] [stdout] 1005 | .expect_err("Octal-escape in strict mode not rejected as expected") [INFO] [stdout] 1006 ~ { Error::Syntax(_, pos) => { [INFO] [stdout] 1007 | assert_eq!(pos, Position::new(1, 2)); [INFO] [stdout] 1008 ~ } _ => { [INFO] [stdout] 1009 | panic!("invalid error type"); [INFO] [stdout] 1010 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:1051:12 [INFO] [stdout] | [INFO] [stdout] 1051 | if let Error::Syntax(_, pos) = lexer [INFO] [stdout] | ____________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 1052 | || .next(interner) [INFO] [stdout] 1053 | || .expect_err("Non-octal-decimal-escape in strict mode not rejected as expected") [INFO] [stdout] | ||___________________________________________________________________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |___________________________________________________________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lexer/tests.rs:1056:9 [INFO] [stdout] | [INFO] [stdout] 1056 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1051 ~ match lexer [INFO] [stdout] 1052 | .next(interner) [INFO] [stdout] 1053 | .expect_err("Non-octal-decimal-escape in strict mode not rejected as expected") [INFO] [stdout] 1054 ~ { Error::Syntax(_, pos) => { [INFO] [stdout] 1055 | assert_eq!(pos, Position::new(1, 2)); [INFO] [stdout] 1056 ~ } _ => { [INFO] [stdout] 1057 | panic!("invalid error type"); [INFO] [stdout] 1058 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/mod.rs:287:15 [INFO] [stdout] | [INFO] [stdout] 287 | Ok(if let Some(token) = self.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/mod.rs:293:9 [INFO] [stdout] | [INFO] [stdout] 293 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 287 ~ Ok(match self.peek(0, interner)? { Some(token) => { [INFO] [stdout] 288 | if token.kind() == &kind.into() { [INFO] [stdout] ... [INFO] [stdout] 292 | } [INFO] [stdout] 293 ~ } _ => { [INFO] [stdout] 294 | None [INFO] [stdout] 295 ~ }}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | if let Some(ref token) = self.peeked[previous_index] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^--------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 136 ~ match self.peeked[previous_index] { Some(ref token) => { [INFO] [stdout] 137 | if token.kind() == &TokenKind::LineTerminator { [INFO] [stdout] ... [INFO] [stdout] 157 | } [INFO] [stdout] 158 ~ } _ => { [INFO] [stdout] 159 | self.peeked[self.write_index] = self.lexer.next(interner)?; [INFO] [stdout] 160 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:143:24 [INFO] [stdout] | [INFO] [stdout] 143 | if let Some(ref token) = next { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 149 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 143 ~ match next { Some(ref token) => { [INFO] [stdout] 144 | match token.kind() { [INFO] [stdout] ... [INFO] [stdout] 148 | } [INFO] [stdout] 149 ~ } _ => { [INFO] [stdout] 150 | break None; [INFO] [stdout] 151 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | if let Some(ref token) = self.peeked[self.read_index] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:204:9 [INFO] [stdout] | [INFO] [stdout] 204 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 191 ~ match self.peeked[self.read_index] { Some(ref token) => { [INFO] [stdout] 192 | if skip_line_terminators && token.kind() == &TokenKind::LineTerminator { [INFO] [stdout] ... [INFO] [stdout] 203 | Ok(tok) [INFO] [stdout] 204 ~ } _ => { [INFO] [stdout] 205 | // We do not update the read index, since we should always return `None` from now on. [INFO] [stdout] 206 | Ok(None) [INFO] [stdout] 207 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:245:16 [INFO] [stdout] | [INFO] [stdout] 245 | if let Some(ref token) = self.peeked[read_index] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/cursor/buffered_lexer/mod.rs:257:13 [INFO] [stdout] | [INFO] [stdout] 257 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 245 ~ match self.peeked[read_index] { Some(ref token) => { [INFO] [stdout] 246 | if skip_line_terminators && token.kind() == &TokenKind::LineTerminator { [INFO] [stdout] ... [INFO] [stdout] 256 | } [INFO] [stdout] 257 ~ } _ => { [INFO] [stdout] 258 | break None; [INFO] [stdout] 259 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:160:15 [INFO] [stdout] | [INFO] [stdout] 160 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:194:9 [INFO] [stdout] | [INFO] [stdout] 194 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:279:15 [INFO] [stdout] | [INFO] [stdout] 279 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:347:9 [INFO] [stdout] | [INFO] [stdout] 347 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 386 | / expression!( [INFO] [stdout] 387 | | BitwiseORExpression, [INFO] [stdout] 388 | | BitwiseXORExpression, [INFO] [stdout] 389 | | [Punctuator::Or], [INFO] [stdout] 390 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 391 | | None:: [INFO] [stdout] 392 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 386 | / expression!( [INFO] [stdout] 387 | | BitwiseORExpression, [INFO] [stdout] 388 | | BitwiseXORExpression, [INFO] [stdout] 389 | | [Punctuator::Or], [INFO] [stdout] 390 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 391 | | None:: [INFO] [stdout] 392 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 428 | / expression!( [INFO] [stdout] 429 | | BitwiseXORExpression, [INFO] [stdout] 430 | | BitwiseANDExpression, [INFO] [stdout] 431 | | [Punctuator::Xor], [INFO] [stdout] 432 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 433 | | None:: [INFO] [stdout] 434 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 428 | / expression!( [INFO] [stdout] 429 | | BitwiseXORExpression, [INFO] [stdout] 430 | | BitwiseANDExpression, [INFO] [stdout] 431 | | [Punctuator::Xor], [INFO] [stdout] 432 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 433 | | None:: [INFO] [stdout] 434 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 470 | / expression!( [INFO] [stdout] 471 | | BitwiseANDExpression, [INFO] [stdout] 472 | | EqualityExpression, [INFO] [stdout] 473 | | [Punctuator::And], [INFO] [stdout] 474 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 475 | | None:: [INFO] [stdout] 476 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 470 | / expression!( [INFO] [stdout] 471 | | BitwiseANDExpression, [INFO] [stdout] 472 | | EqualityExpression, [INFO] [stdout] 473 | | [Punctuator::And], [INFO] [stdout] 474 | | [name, allow_in, allow_yield, allow_await], [INFO] [stdout] 475 | | None:: [INFO] [stdout] 476 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 512 | / expression!( [INFO] [stdout] 513 | | EqualityExpression, [INFO] [stdout] 514 | | RelationalExpression, [INFO] [stdout] 515 | | [ [INFO] [stdout] ... | [INFO] [stdout] 522 | | None:: [INFO] [stdout] 523 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 512 | / expression!( [INFO] [stdout] 513 | | EqualityExpression, [INFO] [stdout] 514 | | RelationalExpression, [INFO] [stdout] 515 | | [ [INFO] [stdout] ... | [INFO] [stdout] 522 | | None:: [INFO] [stdout] 523 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:598:15 [INFO] [stdout] | [INFO] [stdout] 598 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:636:9 [INFO] [stdout] | [INFO] [stdout] 636 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 673 | / expression!( [INFO] [stdout] 674 | | ShiftExpression, [INFO] [stdout] 675 | | AdditiveExpression, [INFO] [stdout] 676 | | [ [INFO] [stdout] ... | [INFO] [stdout] 682 | | None:: [INFO] [stdout] 683 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 673 | / expression!( [INFO] [stdout] 674 | | ShiftExpression, [INFO] [stdout] 675 | | AdditiveExpression, [INFO] [stdout] 676 | | [ [INFO] [stdout] ... | [INFO] [stdout] 682 | | None:: [INFO] [stdout] 683 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 718 | / expression!( [INFO] [stdout] 719 | | AdditiveExpression, [INFO] [stdout] 720 | | MultiplicativeExpression, [INFO] [stdout] 721 | | [Punctuator::Add, Punctuator::Sub], [INFO] [stdout] 722 | | [name, allow_yield, allow_await], [INFO] [stdout] 723 | | None:: [INFO] [stdout] 724 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 718 | / expression!( [INFO] [stdout] 719 | | AdditiveExpression, [INFO] [stdout] 720 | | MultiplicativeExpression, [INFO] [stdout] 721 | | [Punctuator::Add, Punctuator::Sub], [INFO] [stdout] 722 | | [name, allow_yield, allow_await], [INFO] [stdout] 723 | | None:: [INFO] [stdout] 724 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:89:23 [INFO] [stdout] | [INFO] [stdout] 89 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 759 | / expression!( [INFO] [stdout] 760 | | MultiplicativeExpression, [INFO] [stdout] 761 | | ExponentiationExpression, [INFO] [stdout] 762 | | [Punctuator::Mul, Punctuator::Div, Punctuator::Mod], [INFO] [stdout] 763 | | [name, allow_yield, allow_await], [INFO] [stdout] 764 | | Some(InputElement::Div) [INFO] [stdout] 765 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/mod.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 759 | / expression!( [INFO] [stdout] 760 | | MultiplicativeExpression, [INFO] [stdout] 761 | | ExponentiationExpression, [INFO] [stdout] 762 | | [Punctuator::Mul, Punctuator::Div, Punctuator::Mod], [INFO] [stdout] 763 | | [name, allow_yield, allow_await], [INFO] [stdout] 764 | | Some(InputElement::Div) [INFO] [stdout] 765 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `expression` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:121:20 [INFO] [stdout] | [INFO] [stdout] 121 | if let Ok(tok) = [INFO] [stdout] | ____________________^ [INFO] [stdout] 122 | | cursor.peek_expect_no_lineterminator(skip_n, "assignment expression", interner) [INFO] [stdout] | |_____________________------------------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 121 ~ match cursor.peek_expect_no_lineterminator(skip_n, "assignment expression", interner) [INFO] [stdout] 122 ~ { Ok(tok) => { [INFO] [stdout] 123 | if tok.kind() == &TokenKind::Punctuator(Punctuator::Arrow) { [INFO] [stdout] ... [INFO] [stdout] 132 | } [INFO] [stdout] 133 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:250:24 [INFO] [stdout] | [INFO] [stdout] 250 | if let Some(target) = AssignTarget::from_expression(&lhs, cursor.strict()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^---------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:256:21 [INFO] [stdout] | [INFO] [stdout] 256 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 250 ~ match AssignTarget::from_expression(&lhs, cursor.strict()) { Some(target) => { [INFO] [stdout] 251 | if let Expression::Identifier(ident) = lhs { [INFO] [stdout] ... [INFO] [stdout] 255 | lhs = Assign::new(AssignOp::Assign, target, expr).into(); [INFO] [stdout] 256 ~ } _ => { [INFO] [stdout] 257 | return Err(Error::lex(LexError::Syntax( [INFO] [stdout] ... [INFO] [stdout] 260 | ))); [INFO] [stdout] 261 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:265:24 [INFO] [stdout] | [INFO] [stdout] 265 | if let Some(target) = [INFO] [stdout] | ________________________^ [INFO] [stdout] 266 | | AssignTarget::from_expression_simple(&lhs, cursor.strict()) [INFO] [stdout] | |_________________________----------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:280:21 [INFO] [stdout] | [INFO] [stdout] 280 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 265 ~ match AssignTarget::from_expression_simple(&lhs, cursor.strict()) [INFO] [stdout] 266 ~ { Some(target) => { [INFO] [stdout] 267 | let assignop = p.as_assign_op().expect("assignop disappeared"); [INFO] [stdout] ... [INFO] [stdout] 278 | lhs = Assign::new(assignop, target, rhs).into(); [INFO] [stdout] 279 ~ } _ => { [INFO] [stdout] 280 | return Err(Error::lex(LexError::Syntax( [INFO] [stdout] ... [INFO] [stdout] 283 | ))); [INFO] [stdout] 284 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:273:32 [INFO] [stdout] | [INFO] [stdout] 273 | ... if let AssignTarget::Identifier(ident) = target { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/assignment/mod.rs:275:29 [INFO] [stdout] | [INFO] [stdout] 275 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 273 ~ match target { AssignTarget::Identifier(ident) => { [INFO] [stdout] 274 | self.name = Some(ident); [INFO] [stdout] 275 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/mod.rs:107:28 [INFO] [stdout] | [INFO] [stdout] 107 | if let Some(next) = cursor.peek(1, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/mod.rs:111:25 [INFO] [stdout] | [INFO] [stdout] 111 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 107 ~ match cursor.peek(1, interner)? { Some(next) => { [INFO] [stdout] 108 | if next.kind() == &TokenKind::Punctuator(Punctuator::OpenParen) { [INFO] [stdout] 109 | return Ok(true); [INFO] [stdout] 110 | } [INFO] [stdout] 111 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/call.rs:125:15 [INFO] [stdout] | [INFO] [stdout] 125 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/call.rs:187:9 [INFO] [stdout] | [INFO] [stdout] 187 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/member.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | while let Some(tok) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/member.rs:282:9 [INFO] [stdout] | [INFO] [stdout] 282 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/optional/mod.rs:109:15 [INFO] [stdout] | [INFO] [stdout] 109 | while let Some(token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/left_hand_side/optional/mod.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 166 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/expression/primary/mod.rs:253:20 [INFO] [stdout] | [INFO] [stdout] 253 | if let TokenKind::RegularExpressionLiteral(body, flags) = *tok.kind() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/expression/primary/mod.rs:255:17 [INFO] [stdout] | [INFO] [stdout] 255 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 253 ~ match *tok.kind() { TokenKind::RegularExpressionLiteral(body, flags) => { [INFO] [stdout] 254 | Ok(AstRegExp::new(body, flags).into()) [INFO] [stdout] 255 ~ } _ => { [INFO] [stdout] 256 | // A regex was expected and nothing else. [INFO] [stdout] ... [INFO] [stdout] 261 | )) [INFO] [stdout] 262 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:559:28 [INFO] [stdout] | [INFO] [stdout] 559 | if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:660:25 [INFO] [stdout] | [INFO] [stdout] 660 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 559 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 560 | match peek_token.kind() { [INFO] [stdout] ... [INFO] [stdout] 659 | } [INFO] [stdout] 660 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:565:40 [INFO] [stdout] | [INFO] [stdout] 565 | ... if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:589:37 [INFO] [stdout] | [INFO] [stdout] 589 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 565 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 566 | match peek_token.kind() { [INFO] [stdout] ... [INFO] [stdout] 588 | } [INFO] [stdout] 589 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:598:40 [INFO] [stdout] | [INFO] [stdout] 598 | ... if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:624:37 [INFO] [stdout] | [INFO] [stdout] 624 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 598 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 599 | match peek_token.kind() { [INFO] [stdout] ... [INFO] [stdout] 623 | } [INFO] [stdout] 624 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:633:40 [INFO] [stdout] | [INFO] [stdout] 633 | ... if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:657:37 [INFO] [stdout] | [INFO] [stdout] 657 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 633 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 634 | match peek_token.kind() { [INFO] [stdout] ... [INFO] [stdout] 656 | } [INFO] [stdout] 657 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:692:16 [INFO] [stdout] | [INFO] [stdout] 692 | if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:700:13 [INFO] [stdout] | [INFO] [stdout] 700 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 692 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 693 | if peek_token.kind() == &TokenKind::Punctuator(Punctuator::Comma) { [INFO] [stdout] ... [INFO] [stdout] 699 | } [INFO] [stdout] 700 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:890:16 [INFO] [stdout] | [INFO] [stdout] 890 | if let Some(peek_token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/mod.rs:903:13 [INFO] [stdout] | [INFO] [stdout] 903 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 890 ~ match cursor.peek(0, interner)? { Some(peek_token) => { [INFO] [stdout] 891 | if peek_token.kind() == &TokenKind::Punctuator(Punctuator::Comma) { [INFO] [stdout] ... [INFO] [stdout] 902 | } [INFO] [stdout] 903 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/break_stm/mod.rs:64:24 [INFO] [stdout] | [INFO] [stdout] 64 | let label = if let SemicolonResult::Found(tok) = cursor.peek_semicolon(interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/break_stm/mod.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 64 ~ let label = match cursor.peek_semicolon(interner)? { SemicolonResult::Found(tok) => { [INFO] [stdout] 65 | if tok.map(Token::kind) == Some(&TokenKind::Punctuator(Punctuator::Semicolon)) { [INFO] [stdout] ... [INFO] [stdout] 69 | None [INFO] [stdout] 70 ~ } _ => { [INFO] [stdout] 71 | let label = LabelIdentifier::new(self.allow_yield, self.allow_await) [INFO] [stdout] ... [INFO] [stdout] 76 | Some(label) [INFO] [stdout] 77 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/continue_stm/mod.rs:64:24 [INFO] [stdout] | [INFO] [stdout] 64 | let label = if let SemicolonResult::Found(tok) = cursor.peek_semicolon(interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/continue_stm/mod.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 64 ~ let label = match cursor.peek_semicolon(interner)? { SemicolonResult::Found(tok) => { [INFO] [stdout] 65 | if let Some(token) = tok { [INFO] [stdout] ... [INFO] [stdout] 77 | None [INFO] [stdout] 78 ~ } _ => { [INFO] [stdout] 79 | let label = LabelIdentifier::new(self.allow_yield, self.allow_await) [INFO] [stdout] ... [INFO] [stdout] 84 | Some(label) [INFO] [stdout] 85 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/continue_stm/mod.rs:69:24 [INFO] [stdout] | [INFO] [stdout] 69 | if let Some(token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/continue_stm/mod.rs:73:21 [INFO] [stdout] | [INFO] [stdout] 73 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 69 ~ match cursor.peek(0, interner)? { Some(token) => { [INFO] [stdout] 70 | if token.kind() == &TokenKind::Punctuator(Punctuator::Semicolon) { [INFO] [stdout] 71 | cursor.advance(interner); [INFO] [stdout] 72 | } [INFO] [stdout] 73 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/declaration/hoistable/class_decl/mod.rs:191:20 [INFO] [stdout] | [INFO] [stdout] 191 | if let Some(constructor) = &constructor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^----------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/declaration/hoistable/class_decl/mod.rs:198:17 [INFO] [stdout] | [INFO] [stdout] 198 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 191 ~ match &constructor { Some(constructor) => { [INFO] [stdout] 192 | if contains(constructor, ContainsSymbol::SuperCall) { [INFO] [stdout] ... [INFO] [stdout] 197 | } [INFO] [stdout] 198 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/declaration/import.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | if let Some(token) = cursor.peek(1, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/declaration/import.rs:64:17 [INFO] [stdout] | [INFO] [stdout] 64 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 56 ~ match cursor.peek(1, interner)? { Some(token) => { [INFO] [stdout] 57 | match token.kind() { [INFO] [stdout] ... [INFO] [stdout] 63 | } [INFO] [stdout] 64 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/if_stm/mod.rs:101:28 [INFO] [stdout] | [INFO] [stdout] 101 | let else_stmt = if let Some(token) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/if_stm/mod.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 101 ~ let else_stmt = match cursor.peek(0, interner)? { Some(token) => { [INFO] [stdout] 102 | match token.kind() { [INFO] [stdout] ... [INFO] [stdout] 152 | } [INFO] [stdout] 153 ~ } _ => { [INFO] [stdout] 154 | None [INFO] [stdout] 155 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/statement/iteration/for_statement.rs:341:19 [INFO] [stdout] | [INFO] [stdout] 341 | while let ast::Expression::Parenthesized(p) = expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/statement/iteration/for_statement.rs:343:13 [INFO] [stdout] | [INFO] [stdout] 343 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/function/mod.rs:256:12 [INFO] [stdout] | [INFO] [stdout] 256 | if let Some(t) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/function/mod.rs:304:9 [INFO] [stdout] | [INFO] [stdout] 304 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 256 ~ match cursor.peek(0, interner)? { Some(t) => { [INFO] [stdout] 257 | let declaration = match *t.kind() { [INFO] [stdout] ... [INFO] [stdout] 303 | Ok(Self::Output::new(declaration, true)) [INFO] [stdout] 304 ~ } _ => { [INFO] [stdout] 305 | Ok(Self::Output::new( [INFO] [stdout] ... [INFO] [stdout] 308 | )) [INFO] [stdout] 309 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parser/function/mod.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 350 | if let Some(t) = cursor.peek(0, interner)? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parser/function/mod.rs:402:9 [INFO] [stdout] | [INFO] [stdout] 402 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 350 ~ match cursor.peek(0, interner)? { Some(t) => { [INFO] [stdout] 351 | let declaration = match *t.kind() { [INFO] [stdout] ... [INFO] [stdout] 401 | Ok(Self::Output::new(declaration, false)) [INFO] [stdout] 402 ~ } _ => { [INFO] [stdout] 403 | Ok(Self::Output::new( [INFO] [stdout] ... [INFO] [stdout] 406 | )) [INFO] [stdout] 407 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/source/mod.rs:152:15 [INFO] [stdout] | [INFO] [stdout] 152 | while let Some(c) = source.reader.next_char().unwrap() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------------------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/source/mod.rs:154:9 [INFO] [stdout] | [INFO] [stdout] 154 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/source/mod.rs:168:15 [INFO] [stdout] | [INFO] [stdout] 168 | while let Some(c) = source.reader.next_char().unwrap() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------------------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/source/mod.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/source/mod.rs:183:15 [INFO] [stdout] | [INFO] [stdout] 183 | while let Some(c) = source.reader.next_char().unwrap() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------------------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/source/mod.rs:185:9 [INFO] [stdout] | [INFO] [stdout] 185 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/source/mod.rs:196:15 [INFO] [stdout] | [INFO] [stdout] 196 | while let Some(c) = source.reader.next_char().unwrap() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------------------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/source/mod.rs:198:9 [INFO] [stdout] | [INFO] [stdout] 198 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 93 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.53s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking boa_parser v0.19.1 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let gen = interner.get_or_intern_static("gen", utf16!("gen")); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 14 | let r#gen = interner.get_or_intern_static("gen", utf16!("gen")); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let gen = interner.get_or_intern_static("gen", utf16!("gen")); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 49 | let r#gen = interner.get_or_intern_static("gen", utf16!("gen")); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | gen.into(), [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | gen.into(), [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:293:16 [INFO] [stdout] | [INFO] [stdout] 293 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/template.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/token.rs:293:16 [INFO] [stdout] | [INFO] [stdout] 293 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `deser` [INFO] [stdout] --> src/lexer/template.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | #[cfg_attr(feature = "deser", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `annex-b` [INFO] [stdout] = help: consider adding `deser` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Expression`, `FormalParameterList`, `FunctionBody`, `Generator`, `StatementListItem`, `Statement`, `Variable`, `Yield`, and `literal::Literal` [INFO] [stdout] --> src/parser/expression/primary/generator_expression/tests.rs:3:39 [INFO] [stdout] | [INFO] [stdout] 3 | declaration::{LexicalDeclaration, Variable}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 4 | expression::{literal::Literal, Yield}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stdout] 5 | function::{FormalParameterList, FunctionBody, Generator}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] 6 | Declaration, Expression, Statement, StatementListItem, [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `-W unused-imports` implied by `-W unused` [INFO] [stdout] = help: to override `-W unused` add `#[allow(unused_imports)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors; 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `boa_parser` (lib test) due to 5 previous errors; 7 warnings emitted [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "32d1c09f4096d99b0d007c46d021d4a798b89043ae76e1c5cfd1991f4a86458a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "32d1c09f4096d99b0d007c46d021d4a798b89043ae76e1c5cfd1991f4a86458a", kill_on_drop: false }` [INFO] [stdout] 32d1c09f4096d99b0d007c46d021d4a798b89043ae76e1c5cfd1991f4a86458a