[INFO] cloning repository https://github.com/cmdneo/gbemu [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cmdneo/gbemu" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcmdneo%2Fgbemu", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcmdneo%2Fgbemu'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0e30749d7b60b068a637a605c6f80954d8254ea5 [INFO] checking cmdneo/gbemu/0e30749d7b60b068a637a605c6f80954d8254ea5 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcmdneo%2Fgbemu" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/cmdneo/gbemu 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 git repo https://github.com/cmdneo/gbemu [INFO] finished tweaking git repo https://github.com/cmdneo/gbemu [INFO] tweaked toml for git repo https://github.com/cmdneo/gbemu written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/cmdneo/gbemu already has a lockfile, it will not be regenerated [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-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 07968e7832c2258f23aad2366d58421c4e2404b617bb1232f06aa63d51ec883b [INFO] running `Command { std: "docker" "start" "-a" "07968e7832c2258f23aad2366d58421c4e2404b617bb1232f06aa63d51ec883b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "07968e7832c2258f23aad2366d58421c4e2404b617bb1232f06aa63d51ec883b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "07968e7832c2258f23aad2366d58421c4e2404b617bb1232f06aa63d51ec883b", kill_on_drop: false }` [INFO] [stdout] 07968e7832c2258f23aad2366d58421c4e2404b617bb1232f06aa63d51ec883b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4905dcc675de7223a3946ebafb33312e055f77476714a6943e78fb9067d7c7de [INFO] running `Command { std: "docker" "start" "-a" "4905dcc675de7223a3946ebafb33312e055f77476714a6943e78fb9067d7c7de", 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] Compiling version_check v0.9.5 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Compiling miniquad v0.4.5 [INFO] [stderr] Checking color_quant v1.1.0 [INFO] [stderr] Checking bytemuck v1.16.3 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking ttf-parser v0.15.2 [INFO] [stderr] Checking glam v0.27.0 [INFO] [stderr] Compiling macroquad_macro v0.1.8 [INFO] [stderr] Checking crc32fast v1.4.2 [INFO] [stderr] Checking quad-rand v0.2.1 [INFO] [stderr] Checking miniz_oxide v0.7.4 [INFO] [stderr] Checking fdeflate v0.3.4 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking flate2 v1.0.31 [INFO] [stderr] Checking hashbrown v0.13.2 [INFO] [stderr] Checking png v0.17.13 [INFO] [stderr] Checking fontdue v0.7.3 [INFO] [stderr] Checking image v0.24.9 [INFO] [stderr] Checking macroquad v0.4.12 [INFO] [stderr] Checking gbemu v0.1.0 (/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 `gbemu` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/cpu/table.rs [INFO] [stderr] * src/macros.rs [INFO] [stderr] * src/mem.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/cpu/table.rs:10:6 [INFO] [stderr] | [INFO] [stderr] 10 | ($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/cpu/table.rs:17:6 [INFO] [stderr] | [INFO] [stderr] 17 | ($op:expr_2021, $op1: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/cpu/table.rs:17:21 [INFO] [stderr] | [INFO] [stderr] 17 | ($op:expr_2021, $op1: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/cpu/table.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | ($op:expr_2021, $op1:expr_2021, $op2: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/cpu/table.rs:24:21 [INFO] [stderr] | [INFO] [stderr] 24 | ($op:expr_2021, $op1:expr_2021, $op2: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/cpu/table.rs:24:37 [INFO] [stderr] | [INFO] [stderr] 24 | ($op:expr_2021, $op1:expr_2021, $op2: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/macros.rs:69:14 [INFO] [stderr] | [INFO] [stderr] 69 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal) => { [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/macros.rs:69:30 [INFO] [stderr] | [INFO] [stderr] 69 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal) => { [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/macros.rs:72:14 [INFO] [stderr] | [INFO] [stderr] 72 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal, $($vars:expr_2021 ; $ws:literal),+) => { [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/macros.rs:72:30 [INFO] [stderr] | [INFO] [stderr] 72 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal, $($vars:expr_2021 ; $ws:literal),+) => { [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/macros.rs:72:61 [INFO] [stderr] | [INFO] [stderr] 72 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal, $($vars:expr_2021 ; $ws:literal),+) => { [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/macros.rs:77:12 [INFO] [stderr] | [INFO] [stderr] 77 | (@pack $val:expr_2021 ; $w:literal) => { $val & !(!0 << $w)}; [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/macros.rs:78:12 [INFO] [stderr] | [INFO] [stderr] 78 | (@pack $val:expr_2021 ; $w:literal, $($vals:expr_2021 ; $ws:literal),+) => { [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/macros.rs:78:43 [INFO] [stderr] | [INFO] [stderr] 78 | (@pack $val:expr_2021 ; $w:literal, $($vals:expr_2021 ; $ws:literal),+) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cpu/table.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | ($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] 10 | ($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/cpu/table.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | ($op:expr, $op1: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] 17 | ($op:expr_2021, $op1: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/cpu/table.rs:17:21 [INFO] [stdout] | [INFO] [stdout] 17 | ($op:expr, $op1: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] 17 | ($op:expr, $op1:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cpu/table.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | ($op:expr, $op1:expr, $op2: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] 24 | ($op:expr_2021, $op1:expr, $op2:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cpu/table.rs:24:21 [INFO] [stdout] | [INFO] [stdout] 24 | ($op:expr, $op1:expr, $op2: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] 24 | ($op:expr, $op1:expr_2021, $op2:expr) => { [INFO] [stdout] | ~~~~~~~~~ [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] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cpu/table.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | ($op:expr, $op1:expr, $op2: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] 24 | ($op:expr, $op1:expr, $op2: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/macros.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | (@unpack $val:expr, $var:expr ; $w:literal) => { [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] 69 | (@unpack $val:expr_2021, $var:expr ; $w:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:69:30 [INFO] [stdout] | [INFO] [stdout] 69 | (@unpack $val:expr, $var:expr ; $w:literal) => { [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] 69 | (@unpack $val:expr, $var:expr_2021 ; $w:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/macros.rs:112:11 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:72:19 [INFO] [stdout] | [INFO] [stdout] 72 | (@unpack $val:expr, $var:expr ; $w:literal, $($vars:expr ; $ws:literal),+) => { [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] 72 | (@unpack $val:expr_2021, $var:expr ; $w:literal, $($vars:expr ; $ws:literal),+) => { [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/macros.rs:72:30 [INFO] [stdout] | [INFO] [stdout] 72 | (@unpack $val:expr, $var:expr ; $w:literal, $($vars:expr ; $ws:literal),+) => { [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] 72 | (@unpack $val:expr, $var:expr_2021 ; $w:literal, $($vars:expr ; $ws:literal),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 112 | $($range:expr_2021 => $action:block)* [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:72:57 [INFO] [stdout] | [INFO] [stdout] 72 | (@unpack $val:expr, $var:expr ; $w:literal, $($vars:expr ; $ws:literal),+) => { [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] 72 | (@unpack $val:expr, $var:expr ; $w:literal, $($vars:expr_2021 ; $ws:literal),+) => { [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/macros.rs:77:17 [INFO] [stdout] | [INFO] [stdout] 77 | (@pack $val:expr ; $w:literal) => { $val & !(!0 << $w)}; [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] 77 | (@pack $val:expr_2021 ; $w:literal) => { $val & !(!0 << $w)}; [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/macros.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 78 | (@pack $val:expr ; $w:literal, $($vals:expr ; $ws:literal),+) => { [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] 78 | (@pack $val:expr_2021 ; $w:literal, $($vals:expr ; $ws:literal),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:78:44 [INFO] [stdout] | [INFO] [stdout] 78 | (@pack $val:expr ; $w:literal, $($vals:expr ; $ws:literal),+) => { [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] 78 | (@pack $val:expr ; $w:literal, $($vals:expr_2021 ; $ws:literal),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:112:18 [INFO] [stdout] | [INFO] [stdout] 112 | $($range:expr => $action:block)* [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] 112 | $($range:expr_2021 => $action:block)* [INFO] [stdout] | ~~~~~~~~~ [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] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:131:11 [INFO] [stdout] | [INFO] [stdout] 131 | ($val:expr, $rng: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] 131 | ($val:expr_2021, $rng: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/macros.rs:131:22 [INFO] [stdout] | [INFO] [stdout] 131 | ($val:expr, $rng: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] 131 | ($val:expr, $rng:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:134:11 [INFO] [stdout] | [INFO] [stdout] 134 | ($val:expr, $rng:expr, $($rngs: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] 134 | ($val:expr_2021, $rng:expr, $($rngs:expr),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/macros.rs:131:6 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:134:22 [INFO] [stdout] | [INFO] [stdout] 134 | ($val:expr, $rng:expr, $($rngs: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] 134 | ($val:expr, $rng:expr_2021, $($rngs: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/macros.rs:134:36 [INFO] [stdout] | [INFO] [stdout] 134 | ($val:expr, $rng:expr, $($rngs: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] 134 | ($val:expr, $rng:expr, $($rngs:expr_2021),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 131 | ($val:expr_2021, $rng:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/mem.rs:235:19 [INFO] [stdout] | [INFO] [stdout] 235 | ($val:expr, $keep_mask: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] 235 | ($val:expr_2021, $keep_mask: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/mem.rs:235:36 [INFO] [stdout] | [INFO] [stdout] 235 | ($val:expr, $keep_mask: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] 235 | ($val:expr, $keep_mask:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: constant `CART_HEADER` is never used [INFO] [stdout] --> src/info.rs:186:18 [INFO] [stdout] | [INFO] [stdout] 186 | pub(crate) const CART_HEADER: URange = 0x100..=0x14F; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: constant `CART_ENTRY` is never used [INFO] [stdout] --> src/info.rs:188:18 [INFO] [stdout] | [INFO] [stdout] 188 | pub(crate) const CART_ENTRY: URange = 0x100..=0x103; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: constant `CART_LOGO` is never used [INFO] [stdout] --> src/info.rs:189:18 [INFO] [stdout] | [INFO] [stdout] 189 | pub(crate) const CART_LOGO: URange = 0x104..=0x133; [INFO] [stdout] | ^^^^^^^^^ [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] [stdout] warning: constant `CART_TITLE` is never used [INFO] [stdout] --> src/info.rs:190:18 [INFO] [stdout] | [INFO] [stdout] 190 | pub(crate) const CART_TITLE: URange = 0x134..=0x143; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: constant `CART_SGB_FLAG` is never used [INFO] [stdout] --> src/info.rs:192:18 [INFO] [stdout] | [INFO] [stdout] 192 | pub(crate) const CART_SGB_FLAG: usize = 0x146; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: constant `CART_RAM_SIZE` is never used [INFO] [stdout] --> src/info.rs:194:18 [INFO] [stdout] | [INFO] [stdout] 194 | pub(crate) const CART_RAM_SIZE: usize = 0x149; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/macros.rs:131:22 [INFO] [stdout] warning: constant `CART_HEADER_CSUM` is never used [INFO] [stdout] --> src/info.rs:195:18 [INFO] [stdout] | [INFO] [stdout] 195 | pub(crate) const CART_HEADER_CSUM: usize = 0x14D; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: constant `CART_GLOBAL_CSUM` is never used [INFO] [stdout] --> src/info.rs:196:18 [INFO] [stdout] | [INFO] [stdout] 196 | pub(crate) const CART_GLOBAL_CSUM: URange = 0x14E..=0x14F; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 131 | ($val:expr_2021, $rng:expr_2021) => { [INFO] [stdout] warning: constant `CART_LOGO_VAL` is never used [INFO] [stdout] --> src/info.rs:202:18 [INFO] [stdout] | [INFO] [stdout] 202 | pub(crate) const CART_LOGO_VAL: [u8; 48] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] warning: constant `CART_SGB_TOO` is never used [INFO] [stdout] --> src/info.rs:213:18 [INFO] [stdout] | [INFO] [stdout] 213 | pub(crate) const CART_SGB_TOO: u8 = 0x03; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: function `debug` is never used [INFO] [stdout] --> src/log.rs:1:15 [INFO] [stdout] | [INFO] [stdout] 1 | pub(crate) fn debug(m: &str) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: 33 warnings emitted [INFO] [stdout] [INFO] [stdout] [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/macros.rs:134:6 [INFO] [stderr] | [INFO] [stderr] 134 | ($val:expr_2021, $rng:expr_2021, $($rngs: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/macros.rs:134:22 [INFO] [stderr] | [INFO] [stderr] 134 | ($val:expr_2021, $rng:expr_2021, $($rngs: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/macros.rs:134:40 [INFO] [stderr] | [INFO] [stderr] 134 | ($val:expr_2021, $rng:expr_2021, $($rngs: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/mem.rs:235:14 [INFO] [stderr] | [INFO] [stderr] 235 | ($val:expr_2021, $keep_mask: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/mem.rs:235:30 [INFO] [stderr] | [INFO] [stderr] 235 | ($val:expr_2021, $keep_mask: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: aborting due to 22 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stderr] Migrating src/main.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `gbemu` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/cpu/table.rs [INFO] [stderr] * src/macros.rs [INFO] [stderr] * src/mem.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/cpu/table.rs:10:6 [INFO] [stderr] | [INFO] [stderr] 10 | ($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/cpu/table.rs:17:6 [INFO] [stderr] | [INFO] [stderr] 17 | ($op:expr_2021, $op1: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/cpu/table.rs:17:21 [INFO] [stderr] | [INFO] [stderr] 17 | ($op:expr_2021, $op1: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/cpu/table.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | ($op:expr_2021, $op1:expr_2021, $op2: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/cpu/table.rs:24:21 [INFO] [stderr] | [INFO] [stderr] 24 | ($op:expr_2021, $op1:expr_2021, $op2: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/cpu/table.rs:24:37 [INFO] [stderr] | [INFO] [stderr] 24 | ($op:expr_2021, $op1:expr_2021, $op2: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/macros.rs:69:14 [INFO] [stderr] | [INFO] [stderr] 69 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal) => { [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/macros.rs:69:30 [INFO] [stderr] | [INFO] [stderr] 69 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal) => { [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/macros.rs:72:14 [INFO] [stderr] | [INFO] [stderr] 72 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal, $($vars:expr_2021 ; $ws:literal),+) => { [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/macros.rs:72:30 [INFO] [stderr] | [INFO] [stderr] 72 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal, $($vars:expr_2021 ; $ws:literal),+) => { [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/macros.rs:72:61 [INFO] [stderr] | [INFO] [stderr] 72 | (@unpack $val:expr_2021, $var:expr_2021 ; $w:literal, $($vars:expr_2021 ; $ws:literal),+) => { [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/macros.rs:77:12 [INFO] [stderr] | [INFO] [stderr] 77 | (@pack $val:expr_2021 ; $w:literal) => { $val & !(!0 << $w)}; [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/macros.rs:78:12 [INFO] [stderr] | [INFO] [stderr] 78 | (@pack $val:expr_2021 ; $w:literal, $($vals:expr_2021 ; $ws:literal),+) => { [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/macros.rs:78:43 [INFO] [stderr] | [INFO] [stderr] 78 | (@pack $val:expr_2021 ; $w:literal, $($vals:expr_2021 ; $ws:literal),+) => { [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/macros.rs:112:11 [INFO] [stderr] | [INFO] [stderr] 112 | $($range:expr_2021 => $action:block)* [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/macros.rs:131:6 [INFO] [stderr] | [INFO] [stderr] 131 | ($val:expr_2021, $rng: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/macros.rs:131:22 [INFO] [stderr] | [INFO] [stderr] 131 | ($val:expr_2021, $rng: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/macros.rs:134:6 [INFO] [stderr] | [INFO] [stderr] 134 | ($val:expr_2021, $rng:expr_2021, $($rngs: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/macros.rs:134:22 [INFO] [stderr] | [INFO] [stderr] 134 | ($val:expr_2021, $rng:expr_2021, $($rngs: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/macros.rs:134:40 [INFO] [stderr] | [INFO] [stderr] 134 | ($val:expr_2021, $rng:expr_2021, $($rngs: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/mem.rs:235:14 [INFO] [stderr] | [INFO] [stderr] 235 | ($val:expr_2021, $keep_mask: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/mem.rs:235:30 [INFO] [stderr] | [INFO] [stderr] 235 | ($val:expr_2021, $keep_mask: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: aborting due to 22 previous errors [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/cpu/table.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | ($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] 10 | ($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/cpu/table.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | ($op:expr, $op1: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] 17 | ($op:expr_2021, $op1: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/cpu/table.rs:17:21 [INFO] [stdout] | [INFO] [stdout] 17 | ($op:expr, $op1: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] 17 | ($op:expr, $op1: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/cpu/table.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | ($op:expr, $op1:expr, $op2: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] 24 | ($op:expr_2021, $op1:expr, $op2: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/cpu/table.rs:24:21 [INFO] [stdout] | [INFO] [stdout] 24 | ($op:expr, $op1:expr, $op2: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] 24 | ($op:expr, $op1:expr_2021, $op2: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/cpu/table.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | ($op:expr, $op1:expr, $op2: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] 24 | ($op:expr, $op1:expr, $op2: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/macros.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | (@unpack $val:expr, $var:expr ; $w:literal) => { [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] 69 | (@unpack $val:expr_2021, $var:expr ; $w:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:69:30 [INFO] [stdout] | [INFO] [stdout] 69 | (@unpack $val:expr, $var:expr ; $w:literal) => { [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] 69 | (@unpack $val:expr, $var:expr_2021 ; $w:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:72:19 [INFO] [stdout] | [INFO] [stdout] 72 | (@unpack $val:expr, $var:expr ; $w:literal, $($vars:expr ; $ws:literal),+) => { [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] 72 | (@unpack $val:expr_2021, $var:expr ; $w:literal, $($vars:expr ; $ws:literal),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:72:30 [INFO] [stdout] | [INFO] [stdout] 72 | (@unpack $val:expr, $var:expr ; $w:literal, $($vars:expr ; $ws:literal),+) => { [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] 72 | (@unpack $val:expr, $var:expr_2021 ; $w:literal, $($vars:expr ; $ws:literal),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:72:57 [INFO] [stdout] | [INFO] [stdout] 72 | (@unpack $val:expr, $var:expr ; $w:literal, $($vars:expr ; $ws:literal),+) => { [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] 72 | (@unpack $val:expr, $var:expr ; $w:literal, $($vars:expr_2021 ; $ws:literal),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:77:17 [INFO] [stdout] | [INFO] [stdout] 77 | (@pack $val:expr ; $w:literal) => { $val & !(!0 << $w)}; [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] 77 | (@pack $val:expr_2021 ; $w:literal) => { $val & !(!0 << $w)}; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 78 | (@pack $val:expr ; $w:literal, $($vals:expr ; $ws:literal),+) => { [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] 78 | (@pack $val:expr_2021 ; $w:literal, $($vals:expr ; $ws:literal),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:78:44 [INFO] [stdout] | [INFO] [stdout] 78 | (@pack $val:expr ; $w:literal, $($vals:expr ; $ws:literal),+) => { [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] 78 | (@pack $val:expr ; $w:literal, $($vals:expr_2021 ; $ws:literal),+) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:112:18 [INFO] [stdout] | [INFO] [stdout] 112 | $($range:expr => $action:block)* [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] 112 | $($range:expr_2021 => $action:block)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:131:11 [INFO] [stdout] | [INFO] [stdout] 131 | ($val:expr, $rng: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] 131 | ($val:expr_2021, $rng: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/macros.rs:131:22 [INFO] [stdout] | [INFO] [stdout] 131 | ($val:expr, $rng: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] 131 | ($val:expr, $rng: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/macros.rs:134:11 [INFO] [stdout] | [INFO] [stdout] 134 | ($val:expr, $rng:expr, $($rngs: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] 134 | ($val:expr_2021, $rng:expr, $($rngs: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/macros.rs:134:22 [INFO] [stdout] | [INFO] [stdout] 134 | ($val:expr, $rng:expr, $($rngs: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] 134 | ($val:expr, $rng:expr_2021, $($rngs: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/macros.rs:134:36 [INFO] [stdout] | [INFO] [stdout] 134 | ($val:expr, $rng:expr, $($rngs: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] 134 | ($val:expr, $rng:expr, $($rngs: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/mem.rs:235:19 [INFO] [stdout] | [INFO] [stdout] 235 | ($val:expr, $keep_mask: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] 235 | ($val:expr_2021, $keep_mask: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/mem.rs:235:36 [INFO] [stdout] | [INFO] [stdout] 235 | ($val:expr, $keep_mask: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] 235 | ($val:expr, $keep_mask:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_HEADER` is never used [INFO] [stdout] --> src/info.rs:186:18 [INFO] [stdout] | [INFO] [stdout] 186 | pub(crate) const CART_HEADER: URange = 0x100..=0x14F; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_ENTRY` is never used [INFO] [stdout] --> src/info.rs:188:18 [INFO] [stdout] | [INFO] [stdout] 188 | pub(crate) const CART_ENTRY: URange = 0x100..=0x103; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_LOGO` is never used [INFO] [stdout] --> src/info.rs:189:18 [INFO] [stdout] | [INFO] [stdout] 189 | pub(crate) const CART_LOGO: URange = 0x104..=0x133; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TITLE` is never used [INFO] [stdout] --> src/info.rs:190:18 [INFO] [stdout] | [INFO] [stdout] 190 | pub(crate) const CART_TITLE: URange = 0x134..=0x143; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_SGB_FLAG` is never used [INFO] [stdout] --> src/info.rs:192:18 [INFO] [stdout] | [INFO] [stdout] 192 | pub(crate) const CART_SGB_FLAG: usize = 0x146; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_RAM_SIZE` is never used [INFO] [stdout] --> src/info.rs:194:18 [INFO] [stdout] | [INFO] [stdout] 194 | pub(crate) const CART_RAM_SIZE: usize = 0x149; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_HEADER_CSUM` is never used [INFO] [stdout] --> src/info.rs:195:18 [INFO] [stdout] | [INFO] [stdout] 195 | pub(crate) const CART_HEADER_CSUM: usize = 0x14D; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_GLOBAL_CSUM` is never used [INFO] [stdout] --> src/info.rs:196:18 [INFO] [stdout] | [INFO] [stdout] 196 | pub(crate) const CART_GLOBAL_CSUM: URange = 0x14E..=0x14F; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_LOGO_VAL` is never used [INFO] [stdout] --> src/info.rs:202:18 [INFO] [stdout] | [INFO] [stdout] 202 | pub(crate) const CART_LOGO_VAL: [u8; 48] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_SGB_TOO` is never used [INFO] [stdout] --> src/info.rs:213:18 [INFO] [stdout] | [INFO] [stdout] 213 | pub(crate) const CART_SGB_TOO: u8 = 0x03; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `debug` is never used [INFO] [stdout] --> src/log.rs:1:15 [INFO] [stdout] | [INFO] [stdout] 1 | pub(crate) fn debug(m: &str) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 33 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.65s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking gbemu v0.1.0 (/tmp/fixit) [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/cartridge.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | _ => { unreachable!() } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/cartridge.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | _ => { unreachable!() } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/cartridge.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | _ => { unreachable!() } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/cartridge.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | _ => { unreachable!() } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/mem.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | _ => { unreachable!() } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/mem.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | _ => { unreachable!() } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/mem.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | _ => { panic!("'{addr:#X}' is not a register addres") } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/mem.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | _ => { unreachable!() } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/mem.rs:230:13 [INFO] [stdout] | [INFO] [stdout] 230 | _ => { panic!("{addr:#X} is not a register addres") } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/mem.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | _ => { unreachable!() } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/mem.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | _ => { panic!("'{addr:#X}' is not a register addres") } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: local ambiguity when calling macro `match_range`: multiple parsing options: built-in NTs expr ('range') or 1 other option. [INFO] [stdout] --> src/mem.rs:230:13 [INFO] [stdout] | [INFO] [stdout] 230 | _ => { panic!("{addr:#X} is not a register addres") } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `gbemu` (lib test) due to 7 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `gbemu` (lib) due to 7 previous errors [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" "4905dcc675de7223a3946ebafb33312e055f77476714a6943e78fb9067d7c7de", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4905dcc675de7223a3946ebafb33312e055f77476714a6943e78fb9067d7c7de", kill_on_drop: false }` [INFO] [stdout] 4905dcc675de7223a3946ebafb33312e055f77476714a6943e78fb9067d7c7de