[INFO] cloning repository https://github.com/annethereshewent/nds_emulator [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/annethereshewent/nds_emulator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fannethereshewent%2Fnds_emulator", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fannethereshewent%2Fnds_emulator'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3614d23c33c37a6aaaa46ab933d8f4c3281381da [INFO] checking annethereshewent/nds_emulator/3614d23c33c37a6aaaa46ab933d8f4c3281381da against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fannethereshewent%2Fnds_emulator" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/annethereshewent/nds_emulator on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/annethereshewent/nds_emulator [INFO] finished tweaking git repo https://github.com/annethereshewent/nds_emulator [INFO] tweaked toml for git repo https://github.com/annethereshewent/nds_emulator written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/annethereshewent/nds_emulator 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" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f58c95c40c5a541cb8b0ad11ebc783a296178acac603983f5829f6cd7b5b0451 [INFO] running `Command { std: "docker" "start" "-a" "f58c95c40c5a541cb8b0ad11ebc783a296178acac603983f5829f6cd7b5b0451", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f58c95c40c5a541cb8b0ad11ebc783a296178acac603983f5829f6cd7b5b0451", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f58c95c40c5a541cb8b0ad11ebc783a296178acac603983f5829f6cd7b5b0451", kill_on_drop: false }` [INFO] [stdout] f58c95c40c5a541cb8b0ad11ebc783a296178acac603983f5829f6cd7b5b0451 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e947852debd4a74c11a6c528d522b72cac1b8ba573cb5e6a958f94b77c672f44 [INFO] running `Command { std: "docker" "start" "-a" "e947852debd4a74c11a6c528d522b72cac1b8ba573cb5e6a958f94b77c672f44", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling rustversion v1.0.17 [INFO] [stderr] Compiling serde v1.0.204 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Compiling serde_json v1.0.120 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Checking itoa v1.0.11 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Checking strum v0.25.0 [INFO] [stderr] Checking bitflags v2.6.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling priority-queue v1.4.0 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling syn v2.0.68 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking num-iter v0.1.45 [INFO] [stderr] Checking num-rational v0.4.2 [INFO] [stderr] Checking num v0.4.3 [INFO] [stderr] Compiling serde_derive v1.0.204 [INFO] [stderr] Compiling strum_macros v0.25.3 [INFO] [stderr] Checking ds-emulator v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/cpu/bus/cartridge.rs:424:21 [INFO] [stdout] | [INFO] [stdout] 424 | self.copy_rom((address as usize..block4k_end as usize)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 424 - self.copy_rom((address as usize..block4k_end as usize)); [INFO] [stdout] 424 + self.copy_rom(address as usize..block4k_end as usize); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `color::Color` [INFO] [stdout] --> src/gpu.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use color::Color; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Pixel3d` [INFO] [stdout] --> src/gpu.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use engine_3d::{Engine3d, Pixel3d}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem::size_of` [INFO] [stdout] --> src/gpu/engine_2d.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::mem::size_of; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/cpu/bus/cartridge.rs:424:21 [INFO] [stdout] | [INFO] [stdout] 424 | self.copy_rom((address as usize..block4k_end as usize)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 424 - self.copy_rom((address as usize..block4k_end as usize)); [INFO] [stdout] 424 + self.copy_rom(address as usize..block4k_end as usize); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `color::Color` [INFO] [stdout] --> src/gpu.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use color::Color; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Pixel3d` [INFO] [stdout] --> src/gpu.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use engine_3d::{Engine3d, Pixel3d}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem::size_of` [INFO] [stdout] --> src/gpu/engine_2d.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::mem::size_of; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `overflow2` is never read [INFO] [stdout] --> src/cpu/arm_instructions.rs:1096:13 [INFO] [stdout] | [INFO] [stdout] 1096 | let mut overflow2 = false; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `result` is never read [INFO] [stdout] --> src/cpu/bus.rs:730:13 [INFO] [stdout] | [INFO] [stdout] 730 | let mut result: i64 = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `remainder` is never read [INFO] [stdout] --> src/cpu/bus.rs:731:13 [INFO] [stdout] | [INFO] [stdout] 731 | let mut remainder: i64 = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `overflow2` is never read [INFO] [stdout] --> src/cpu/arm_instructions.rs:1096:13 [INFO] [stdout] | [INFO] [stdout] 1096 | let mut overflow2 = false; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `result` is never read [INFO] [stdout] --> src/cpu/bus.rs:730:13 [INFO] [stdout] | [INFO] [stdout] 730 | let mut result: i64 = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `remainder` is never read [INFO] [stdout] --> src/cpu/bus.rs:731:13 [INFO] [stdout] | [INFO] [stdout] 731 | let mut remainder: i64 = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/gpu/engine_2d/rendering2d.rs:780:53 [INFO] [stdout] | [INFO] [stdout] 780 | fn render_affine_line(&mut self, bg_index: usize, y: u16, vram: &VRam, affine_type: AffineType) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `x` is never read [INFO] [stdout] --> src/gpu/engine_3d/rendering3d.rs:324:13 [INFO] [stdout] | [INFO] [stdout] 324 | let mut x = min_x; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `color` is never read [INFO] [stdout] --> src/gpu/engine_3d/rendering3d.rs:441:17 [INFO] [stdout] | [INFO] [stdout] 441 | let mut color: Option = None; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `debug_on` [INFO] [stdout] --> src/gpu/engine_3d/rendering3d.rs:595:80 [INFO] [stdout] | [INFO] [stdout] 595 | ... curr_v: u32, vram: &VRam, debug_on: bool, found: &mut HashSet) -> Option { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_on` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `found` [INFO] [stdout] --> src/gpu/engine_3d/rendering3d.rs:595:96 [INFO] [stdout] | [INFO] [stdout] 595 | ... vram: &VRam, debug_on: bool, found: &mut HashSet) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_found` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gpu/vram.rs:297:9 [INFO] [stdout] | [INFO] [stdout] 297 | _ => panic!("invalid bank given for mst = {}", vramcnt.vram_mst) [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gpu/vram.rs:297:9 [INFO] [stdout] | [INFO] [stdout] 279 | Bank::BankA | Bank::BankB => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 284 | Bank::BankE => Self::add_mapping(&mut self.engine_a_obj, bank, size, 0), [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 285 | Bank::BankF | Bank::BankG => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 290 | Bank::BankC | Bank::BankD => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 297 | _ => panic!("invalid bank given for mst = {}", vramcnt.vram_mst) [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gpu/vram.rs:394:9 [INFO] [stdout] | [INFO] [stdout] 394 | _ => panic!("invalid option given") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gpu/vram.rs:394:9 [INFO] [stdout] | [INFO] [stdout] 376 | Bank::BankA | Bank::BankB => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 381 | Bank::BankE => Self::remove_mapping(&mut self.engine_a_obj, bank, size, 0), [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 382 | Bank::BankF | Bank::BankG => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 387 | Bank::BankC | Bank::BankD => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 394 | _ => panic!("invalid option given") [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_op_name` is never used [INFO] [stdout] --> src/cpu/arm_instructions.rs:1229:6 [INFO] [stdout] | [INFO] [stdout] 5 | impl CPU { [INFO] [stdout] | -------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1229 | fn get_op_name(&self, op_code: u8) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_move_compare_op_name` is never used [INFO] [stdout] --> src/cpu/thumb_instructions.rs:964:6 [INFO] [stdout] | [INFO] [stdout] 3 | impl CPU { [INFO] [stdout] | -------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 964 | fn get_move_compare_op_name(&self, op_code: u16) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cpu/bus/cartridge.rs:30:3 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Header { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | maker_code: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 31 | unit_code: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 32 | encryption_seed_select: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | device_capacity: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 34 | region: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 35 | rom_version: u8, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 36 | autostart: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/cpu/bus/spi.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn new(firmware_bytes: BackupFile) -> Self { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 9 | Self { [INFO] [stdout] 10 | firmware: Flash::new(firmware_bytes) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/gpu/engine_2d/rendering2d.rs:780:53 [INFO] [stdout] | [INFO] [stdout] 780 | fn render_affine_line(&mut self, bg_index: usize, y: u16, vram: &VRam, affine_type: AffineType) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `x` is never read [INFO] [stdout] --> src/gpu/engine_3d/rendering3d.rs:324:13 [INFO] [stdout] | [INFO] [stdout] 324 | let mut x = min_x; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `color` is never read [INFO] [stdout] --> src/gpu/engine_3d/rendering3d.rs:441:17 [INFO] [stdout] | [INFO] [stdout] 441 | let mut color: Option = None; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `debug_on` [INFO] [stdout] --> src/gpu/engine_3d/rendering3d.rs:595:80 [INFO] [stdout] | [INFO] [stdout] 595 | ... curr_v: u32, vram: &VRam, debug_on: bool, found: &mut HashSet) -> Option { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_on` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `found` [INFO] [stdout] --> src/gpu/engine_3d/rendering3d.rs:595:96 [INFO] [stdout] | [INFO] [stdout] 595 | ... vram: &VRam, debug_on: bool, found: &mut HashSet) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_found` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `ds-emulator` (lib) due to 2 previous errors; 17 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gpu/vram.rs:297:9 [INFO] [stdout] | [INFO] [stdout] 297 | _ => panic!("invalid bank given for mst = {}", vramcnt.vram_mst) [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gpu/vram.rs:297:9 [INFO] [stdout] | [INFO] [stdout] 279 | Bank::BankA | Bank::BankB => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 284 | Bank::BankE => Self::add_mapping(&mut self.engine_a_obj, bank, size, 0), [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 285 | Bank::BankF | Bank::BankG => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 290 | Bank::BankC | Bank::BankD => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 297 | _ => panic!("invalid bank given for mst = {}", vramcnt.vram_mst) [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gpu/vram.rs:394:9 [INFO] [stdout] | [INFO] [stdout] 394 | _ => panic!("invalid option given") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gpu/vram.rs:394:9 [INFO] [stdout] | [INFO] [stdout] 376 | Bank::BankA | Bank::BankB => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 381 | Bank::BankE => Self::remove_mapping(&mut self.engine_a_obj, bank, size, 0), [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 382 | Bank::BankF | Bank::BankG => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 387 | Bank::BankC | Bank::BankD => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 394 | _ => panic!("invalid option given") [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_op_name` is never used [INFO] [stdout] --> src/cpu/arm_instructions.rs:1229:6 [INFO] [stdout] | [INFO] [stdout] 5 | impl CPU { [INFO] [stdout] | -------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1229 | fn get_op_name(&self, op_code: u8) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_move_compare_op_name` is never used [INFO] [stdout] --> src/cpu/thumb_instructions.rs:964:6 [INFO] [stdout] | [INFO] [stdout] 3 | impl CPU { [INFO] [stdout] | -------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 964 | fn get_move_compare_op_name(&self, op_code: u16) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cpu/bus/cartridge.rs:30:3 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Header { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | maker_code: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 31 | unit_code: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 32 | encryption_seed_select: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | device_capacity: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 34 | region: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 35 | rom_version: u8, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 36 | autostart: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/cpu/bus/spi.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn new(firmware_bytes: BackupFile) -> Self { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 9 | Self { [INFO] [stdout] 10 | firmware: Flash::new(firmware_bytes) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `ds-emulator` (lib test) due to 2 previous errors; 17 warnings emitted [INFO] running `Command { std: "docker" "inspect" "e947852debd4a74c11a6c528d522b72cac1b8ba573cb5e6a958f94b77c672f44", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e947852debd4a74c11a6c528d522b72cac1b8ba573cb5e6a958f94b77c672f44", kill_on_drop: false }` [INFO] [stdout] e947852debd4a74c11a6c528d522b72cac1b8ba573cb5e6a958f94b77c672f44