[INFO] cloning repository https://github.com/pranansh-s/egba
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pranansh-s/egba" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpranansh-s%2Fegba", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpranansh-s%2Fegba'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9de886c48441aa91495cc79a5b22671f2465bf4d
[INFO] checking pranansh-s/egba against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpranansh-s%2Fegba" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/pranansh-s/egba
[INFO] finished tweaking git repo https://github.com/pranansh-s/egba
[INFO] tweaked toml for git repo https://github.com/pranansh-s/egba written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/pranansh-s/egba on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/pranansh-s/egba 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2b314677d93deb884cf8e05e9f88948182c16eeb44e7527e89ff9be69fa1112a
[INFO] running `Command { std: "docker" "start" "-a" "2b314677d93deb884cf8e05e9f88948182c16eeb44e7527e89ff9be69fa1112a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2b314677d93deb884cf8e05e9f88948182c16eeb44e7527e89ff9be69fa1112a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2b314677d93deb884cf8e05e9f88948182c16eeb44e7527e89ff9be69fa1112a", kill_on_drop: false }`
[INFO] [stdout] 2b314677d93deb884cf8e05e9f88948182c16eeb44e7527e89ff9be69fa1112a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dunmustuse_in_always_ok" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3a9d04cc0763b9f320659db4fcc5fe8bc19fabe6b094d9d562d3d403b47407ae
[INFO] running `Command { std: "docker" "start" "-a" "3a9d04cc0763b9f320659db4fcc5fe8bc19fabe6b094d9d562d3d403b47407ae", kill_on_drop: false }`
[INFO] [stderr]    Compiling either v1.12.0
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]    Compiling version-compare v0.1.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]     Checking log v0.4.25
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking foldhash v0.1.4
[INFO] [stderr]     Checking castaway v0.2.3
[INFO] [stderr]     Checking bit v0.1.1
[INFO] [stderr]    Compiling indoc v2.0.5
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling sdl2 v0.36.0
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]     Checking anstream v0.6.15
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]    Compiling syn v2.0.96
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]     Checking clap_lex v0.7.2
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]    Compiling sdl2-sys v0.36.0
[INFO] [stderr]     Checking clap_builder v4.5.17
[INFO] [stderr]     Checking hashbrown v0.15.2
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling boolean_expression v0.3.11
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking clap v4.5.17
[INFO] [stderr]     Checking egba-ui v0.1.0 (/opt/rustwide/workdir/egba-ui)
[INFO] [stdout] warning: field `audio` is never read
[INFO] [stdout]   --> egba-ui/src/window.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct EgbaUI {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 36 |     audio: AudioSubsystem,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `audio` is never read
[INFO] [stdout]   --> egba-ui/src/window.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct EgbaUI {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 36 |     audio: AudioSubsystem,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling darling_core v0.20.10
[INFO] [stderr]    Compiling bitmatch v0.1.1
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking egba-core v0.1.0 (/opt/rustwide/workdir/egba-core)
[INFO] [stdout] warning: unused import: `BackupBuffer`
[INFO] [stdout]  --> egba-core/src/cartridge/mod.rs:5:56
[INFO] [stdout]   |
[INFO] [stdout] 5 | use backup::{eeprom::EEPROM, flash::Flash, sram::SRAM, BackupBuffer, BackupMedia, BackupType};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BackupBuffer`
[INFO] [stdout]  --> egba-core/src/cartridge/mod.rs:5:56
[INFO] [stdout]   |
[INFO] [stdout] 5 | use backup::{eeprom::EEPROM, flash::Flash, sram::SRAM, BackupBuffer, BackupMedia, BackupType};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> egba-core/src/cartridge/backup/mod.rs:30:24
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn load(&mut self, path: &PathBuf) {}
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> egba-core/src/cartridge/backup/mod.rs:31:20
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn save(&self, path: &PathBuf) {}
[INFO] [stdout]    |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]  --> egba-core/src/bus.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn write_byte(&mut self, addr: u32, value: u8) {}
[INFO] [stdout]   |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]  --> egba-core/src/bus.rs:7:41
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn write_byte(&mut self, addr: u32, value: u8) {}
[INFO] [stdout]   |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> egba-core/src/cartridge/backup/mod.rs:30:24
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn load(&mut self, path: &PathBuf) {}
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> egba-core/src/cartridge/backup/mod.rs:31:20
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn save(&self, path: &PathBuf) {}
[INFO] [stdout]    |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]  --> egba-core/src/cartridge/backup/eeprom.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct EEPROM {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 4 |     data: Box<[u8]>
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `skip_bios` is never read
[INFO] [stdout]  --> egba-core/src/bios.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Bios {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 4 |     rom: Rom,
[INFO] [stdout] 5 |     skip_bios: bool,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> egba-core/src/control.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum InterruptType {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] 18 |     VBlank = 0,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 19 |     HBlank = 1,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 20 |     VCounter = 2,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 21 |     Timer0 = 3,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 22 |     Timer1 = 4,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 23 |     Timer2 = 5,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     Timer3 = 6,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     Serial = 7,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 26 |     DMA0 = 8,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 27 |     DMA1 = 9,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 28 |     DMA2 = 10,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 29 |     DMA3 = 11,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 30 |     Keypad = 12,
[INFO] [stdout] 31 |     Cartridge = 13,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InterruptType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> egba-core/src/control.rs:65:18
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct WaitState(usize, usize);
[INFO] [stdout]    |        --------- ^^^^^  ^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing these fields
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DISPCNT` is never used
[INFO] [stdout]  --> egba-core/src/constants.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub(crate) const DISPCNT: u32 = 0x000;
[INFO] [stdout]   |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `AND` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn AND(&mut self, op: u32, op2: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `and`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `EOR` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn EOR(&mut self, op: u32, op2: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `eor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `SUB` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn SUB(&mut self, op: u32, op2: u32, update_cpsr: bool) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `sub`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ADD` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn ADD(&mut self, op: u32, op2: u32, update_cpsr: bool) ->  u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `add`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ADC` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn ADC(&mut self, op: u32, op2: u32, update_cpsr: bool, carry: bool) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `adc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `SBC` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn SBC(&mut self, op: u32, op2: u32, update_cpsr: bool, carry: bool) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `sbc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ORR` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn ORR(&mut self, op: u32, op2: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `orr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `MOV` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn MOV(&mut self, op: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `mov`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `BIC` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn BIC(&mut self, op: u32, op2: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `bic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `MVN` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn MVN(&mut self, op: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `mvn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_NZ` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/mod.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn set_NZ(&mut self, val: u32) {
[INFO] [stdout]    |            ^^^^^^ help: convert the identifier to snake case: `set_nz`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_NZ_64` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/mod.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn set_NZ_64(&mut self, val: u64) {
[INFO] [stdout]    |            ^^^^^^^^^ help: convert the identifier to snake case: `set_nz_64`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ASR` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/mod.rs:106:8
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn ASR(&mut self, value: u32, rot: u8, set_condition: bool) -> u32 {
[INFO] [stdout]     |        ^^^ help: convert the identifier to snake case: `asr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `LSL` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/mod.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn LSL(&mut self, value: u32, rot: u8, set_condition: bool) -> u32 {
[INFO] [stdout]     |        ^^^ help: convert the identifier to snake case: `lsl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `LSR` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/mod.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn LSR(&mut self, value: u32, rot: u8, set_condition: bool) -> u32 {
[INFO] [stdout]     |        ^^^ help: convert the identifier to snake case: `lsr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ROR` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/mod.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn ROR(&mut self, value: u32, rot: u8, set_condition: bool) -> u32 {
[INFO] [stdout]     |            ^^^ help: convert the identifier to snake case: `ror`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_BX` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/arm.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub(crate) fn arm_BX(&mut self, bus: &mut impl Bus, rn: usize) {
[INFO] [stdout]    |                   ^^^^^^ help: convert the identifier to snake case: `arm_bx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_B_BL` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/arm.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn arm_B_BL(&mut self, bus: &mut impl Bus, l: bool, offset: usize) {
[INFO] [stdout]    |        ^^^^^^^^ help: convert the identifier to snake case: `arm_b_bl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_MRS` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/arm.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn arm_MRS(&mut self, p: bool, rd: usize) {
[INFO] [stdout]    |        ^^^^^^^ help: convert the identifier to snake case: `arm_mrs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_MSR` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/arm.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn arm_MSR(&mut self, i: bool, p: bool, f: bool, op: usize) {
[INFO] [stdout]    |        ^^^^^^^ help: convert the identifier to snake case: `arm_msr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_LDR_STR` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub(crate) fn arm_LDR_STR(&mut self, bus: &mut impl Bus, l: bool, i: bool, p: bool, u: bool, b: bool, w: bool, rn: usize, rd: usize, ...
[INFO] [stdout]     |                   ^^^^^^^^^^^ help: convert the identifier to snake case: `arm_ldr_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_LDRH_LDRSB_LDRSH_STRH` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:193:19
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub(crate) fn arm_LDRH_LDRSB_LDRSH_STRH(&mut self, bus: &mut impl Bus, p: bool, u: bool, i: bool, w: bool, l: bool, rn: usize, rd: us...
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `arm_ldrh_ldrsb_ldrsh_strh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_LDM_STM` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:235:19
[INFO] [stdout]     |
[INFO] [stdout] 235 |     pub(crate) fn arm_LDM_STM(&mut self, bus: &mut impl Bus, l: bool, p: bool, u: bool, s: bool, w: bool, rn: usize, r_list: u16) {
[INFO] [stdout]     |                   ^^^^^^^^^^^ help: convert the identifier to snake case: `arm_ldm_stm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_MUL_MLA` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:286:8
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn arm_MUL_MLA(&mut self, a: bool, s: bool, rd: usize, rn: usize, rs: usize, rm: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^ help: convert the identifier to snake case: `arm_mul_mla`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_UMULL_UMLAL_SMULL_SMLAL` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 |     fn arm_UMULL_UMLAL_SMULL_SMLAL(&mut self, u: bool, a: bool, s: bool, rd_hi: usize, rd_lo: usize, rs: usize, rm: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `arm_umull_umlal_smull_smlal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_SWP` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:312:8
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn arm_SWP(&mut self, bus: &mut impl Bus, b: bool, rn: usize, rd: usize, rm: usize) {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `arm_swp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<[u8; 2], Infallible>
[INFO] [stdout]   --> egba-core/src/bus.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 |         u16::from_le_bytes([self.read_byte(addr), self.read_byte(addr.wrapping_add(1))].try_into().unwrap_or_default())
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<[u8; 4], Infallible>
[INFO] [stdout]   --> egba-core/src/bus.rs:21:28
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...es([self.read_byte(addr), self.read_byte(addr.wrapping_add(1)), self.read_byte(addr.wrapping_add(2)), self.read_byte(addr.wrapping_add(3))].try_into().un...
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `egba-core` (lib test) due to 2 previous errors; 36 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]  --> egba-core/src/bus.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn write_byte(&mut self, addr: u32, value: u8) {}
[INFO] [stdout]   |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]  --> egba-core/src/bus.rs:7:41
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn write_byte(&mut self, addr: u32, value: u8) {}
[INFO] [stdout]   |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]  --> egba-core/src/cartridge/backup/eeprom.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct EEPROM {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 4 |     data: Box<[u8]>
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `skip_bios` is never read
[INFO] [stdout]  --> egba-core/src/bios.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Bios {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 4 |     rom: Rom,
[INFO] [stdout] 5 |     skip_bios: bool,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> egba-core/src/control.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum InterruptType {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] 18 |     VBlank = 0,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 19 |     HBlank = 1,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 20 |     VCounter = 2,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 21 |     Timer0 = 3,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 22 |     Timer1 = 4,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 23 |     Timer2 = 5,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     Timer3 = 6,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     Serial = 7,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 26 |     DMA0 = 8,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 27 |     DMA1 = 9,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 28 |     DMA2 = 10,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 29 |     DMA3 = 11,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 30 |     Keypad = 12,
[INFO] [stdout] 31 |     Cartridge = 13,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InterruptType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> egba-core/src/control.rs:65:18
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct WaitState(usize, usize);
[INFO] [stdout]    |        --------- ^^^^^  ^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing these fields
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DISPCNT` is never used
[INFO] [stdout]  --> egba-core/src/constants.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub(crate) const DISPCNT: u32 = 0x000;
[INFO] [stdout]   |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `AND` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn AND(&mut self, op: u32, op2: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `and`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `EOR` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn EOR(&mut self, op: u32, op2: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `eor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `SUB` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn SUB(&mut self, op: u32, op2: u32, update_cpsr: bool) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `sub`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ADD` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn ADD(&mut self, op: u32, op2: u32, update_cpsr: bool) ->  u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `add`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ADC` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn ADC(&mut self, op: u32, op2: u32, update_cpsr: bool, carry: bool) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `adc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `SBC` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn SBC(&mut self, op: u32, op2: u32, update_cpsr: bool, carry: bool) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `sbc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ORR` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn ORR(&mut self, op: u32, op2: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `orr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `MOV` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn MOV(&mut self, op: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `mov`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `BIC` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn BIC(&mut self, op: u32, op2: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `bic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `MVN` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/alu.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn MVN(&mut self, op: u32) -> u32 {
[INFO] [stdout]    |            ^^^ help: convert the identifier to snake case: `mvn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_NZ` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/mod.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn set_NZ(&mut self, val: u32) {
[INFO] [stdout]    |            ^^^^^^ help: convert the identifier to snake case: `set_nz`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_NZ_64` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/mod.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn set_NZ_64(&mut self, val: u64) {
[INFO] [stdout]    |            ^^^^^^^^^ help: convert the identifier to snake case: `set_nz_64`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ASR` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/mod.rs:106:8
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn ASR(&mut self, value: u32, rot: u8, set_condition: bool) -> u32 {
[INFO] [stdout]     |        ^^^ help: convert the identifier to snake case: `asr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `LSL` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/mod.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn LSL(&mut self, value: u32, rot: u8, set_condition: bool) -> u32 {
[INFO] [stdout]     |        ^^^ help: convert the identifier to snake case: `lsl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `LSR` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/mod.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn LSR(&mut self, value: u32, rot: u8, set_condition: bool) -> u32 {
[INFO] [stdout]     |        ^^^ help: convert the identifier to snake case: `lsr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ROR` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/mod.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn ROR(&mut self, value: u32, rot: u8, set_condition: bool) -> u32 {
[INFO] [stdout]     |            ^^^ help: convert the identifier to snake case: `ror`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_BX` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/arm.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub(crate) fn arm_BX(&mut self, bus: &mut impl Bus, rn: usize) {
[INFO] [stdout]    |                   ^^^^^^ help: convert the identifier to snake case: `arm_bx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_B_BL` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/arm.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn arm_B_BL(&mut self, bus: &mut impl Bus, l: bool, offset: usize) {
[INFO] [stdout]    |        ^^^^^^^^ help: convert the identifier to snake case: `arm_b_bl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_MRS` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/arm.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn arm_MRS(&mut self, p: bool, rd: usize) {
[INFO] [stdout]    |        ^^^^^^^ help: convert the identifier to snake case: `arm_mrs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_MSR` should have a snake case name
[INFO] [stdout]   --> egba-core/src/cpu/modes/arm.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn arm_MSR(&mut self, i: bool, p: bool, f: bool, op: usize) {
[INFO] [stdout]    |        ^^^^^^^ help: convert the identifier to snake case: `arm_msr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_LDR_STR` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub(crate) fn arm_LDR_STR(&mut self, bus: &mut impl Bus, l: bool, i: bool, p: bool, u: bool, b: bool, w: bool, rn: usize, rd: usize, ...
[INFO] [stdout]     |                   ^^^^^^^^^^^ help: convert the identifier to snake case: `arm_ldr_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_LDRH_LDRSB_LDRSH_STRH` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:193:19
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub(crate) fn arm_LDRH_LDRSB_LDRSH_STRH(&mut self, bus: &mut impl Bus, p: bool, u: bool, i: bool, w: bool, l: bool, rn: usize, rd: us...
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `arm_ldrh_ldrsb_ldrsh_strh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_LDM_STM` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:235:19
[INFO] [stdout]     |
[INFO] [stdout] 235 |     pub(crate) fn arm_LDM_STM(&mut self, bus: &mut impl Bus, l: bool, p: bool, u: bool, s: bool, w: bool, rn: usize, r_list: u16) {
[INFO] [stdout]     |                   ^^^^^^^^^^^ help: convert the identifier to snake case: `arm_ldm_stm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_MUL_MLA` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:286:8
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn arm_MUL_MLA(&mut self, a: bool, s: bool, rd: usize, rn: usize, rs: usize, rm: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^ help: convert the identifier to snake case: `arm_mul_mla`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_UMULL_UMLAL_SMULL_SMLAL` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 |     fn arm_UMULL_UMLAL_SMULL_SMLAL(&mut self, u: bool, a: bool, s: bool, rd_hi: usize, rd_lo: usize, rs: usize, rm: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `arm_umull_umlal_smull_smlal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_SWP` should have a snake case name
[INFO] [stdout]    --> egba-core/src/cpu/modes/arm.rs:312:8
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn arm_SWP(&mut self, bus: &mut impl Bus, b: bool, rn: usize, rd: usize, rm: usize) {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `arm_swp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<[u8; 2], Infallible>
[INFO] [stdout]   --> egba-core/src/bus.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 |         u16::from_le_bytes([self.read_byte(addr), self.read_byte(addr.wrapping_add(1))].try_into().unwrap_or_default())
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<[u8; 4], Infallible>
[INFO] [stdout]   --> egba-core/src/bus.rs:21:28
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...es([self.read_byte(addr), self.read_byte(addr.wrapping_add(1)), self.read_byte(addr.wrapping_add(2)), self.read_byte(addr.wrapping_add(3))].try_into().un...
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `egba-core` (lib) due to 2 previous errors; 36 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "3a9d04cc0763b9f320659db4fcc5fe8bc19fabe6b094d9d562d3d403b47407ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3a9d04cc0763b9f320659db4fcc5fe8bc19fabe6b094d9d562d3d403b47407ae", kill_on_drop: false }`
[INFO] [stdout] 3a9d04cc0763b9f320659db4fcc5fe8bc19fabe6b094d9d562d3d403b47407ae
