[INFO] cloning repository https://github.com/jomag/rustboy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jomag/rustboy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjomag%2Frustboy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjomag%2Frustboy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6ed97596013c6248b91b00565cc318202573f716 [INFO] checking jomag/rustboy against try#f47dd4da3ae8c32c9e65d307bfe640b143e674df for pr-77526 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjomag%2Frustboy" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/jomag/rustboy on toolchain f47dd4da3ae8c32c9e65d307bfe640b143e674df [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/jomag/rustboy [INFO] finished tweaking git repo https://github.com/jomag/rustboy [INFO] tweaked toml for git repo https://github.com/jomag/rustboy written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/jomag/rustboy already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "fetch" "--locked" "--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-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] daccc6579b1b72a63b9b43ded53a474e294668ddc1722b835e76f65fe1144c6a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "daccc6579b1b72a63b9b43ded53a474e294668ddc1722b835e76f65fe1144c6a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "daccc6579b1b72a63b9b43ded53a474e294668ddc1722b835e76f65fe1144c6a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "daccc6579b1b72a63b9b43ded53a474e294668ddc1722b835e76f65fe1144c6a", kill_on_drop: false }` [INFO] [stdout] daccc6579b1b72a63b9b43ded53a474e294668ddc1722b835e76f65fe1144c6a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 4bc135dfc63522c26258b946d35c1fd6f498fcd4637eda34b53d8489420accbf [INFO] running `Command { std: "docker" "start" "-a" "4bc135dfc63522c26258b946d35c1fd6f498fcd4637eda34b53d8489420accbf", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling libc v0.2.74 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Checking adler32 v1.2.0 [INFO] [stderr] Compiling sdl2 v0.34.2 [INFO] [stderr] Checking ansi_term v0.12.1 [INFO] [stderr] Checking serde v1.0.115 [INFO] [stderr] Compiling sdl2-sys v0.34.2 [INFO] [stderr] Checking inflate v0.4.5 [INFO] [stderr] Compiling num-traits v0.2.12 [INFO] [stderr] Compiling num-integer v0.1.43 [INFO] [stderr] Compiling num-iter v0.1.41 [INFO] [stderr] Checking deflate v0.7.20 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking nix v0.17.0 [INFO] [stderr] Checking png v0.14.1 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Checking ctrlc v3.1.6 [INFO] [stderr] Checking rustboy v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/debug.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/debug.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/debug.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/debug.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/apu.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | -------- matches any value [INFO] [stdout] 66 | NR42_REG => self.nr42, [INFO] [stdout] | ^^^^^^^^ unreachable pattern [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/apu.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | -------- matches any value [INFO] [stdout] 66 | NR42_REG => self.nr42, [INFO] [stdout] 67 | NR43_REG => self.nr43, [INFO] [stdout] | ^^^^^^^^ unreachable pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/apu.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | -------- matches any value [INFO] [stdout] ... [INFO] [stdout] 68 | NR44_REG => self.nr44, [INFO] [stdout] | ^^^^^^^^ unreachable pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/apu.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | -------- matches any value [INFO] [stdout] ... [INFO] [stdout] 69 | _ => 0, [INFO] [stdout] | ^ unreachable pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple patterns covering the same range [INFO] [stdout] --> src/mmu.rs:276:13 [INFO] [stdout] | [INFO] [stdout] 255 | P1_REG => self.buttons.read_p1(), [INFO] [stdout] | ------ this range overlaps on `65280_u16` [INFO] [stdout] ... [INFO] [stdout] 276 | 0xFF00..=0xFF7F => self.io_reg[(addr - 0xFF00) as usize], [INFO] [stdout] | ^^^^^^^^^^^^^^^ overlapping patterns [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(overlapping_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple patterns covering the same range [INFO] [stdout] --> src/mmu.rs:380:13 [INFO] [stdout] | [INFO] [stdout] 345 | P1_REG => self.buttons.write_p1(value), [INFO] [stdout] | ------ this range overlaps on `65280_u16` [INFO] [stdout] ... [INFO] [stdout] 378 | 0xFF7F => {} [INFO] [stdout] | ------ this range overlaps on `65407_u16` [INFO] [stdout] 379 | [INFO] [stdout] 380 | 0xFF00..=0xFF7F => self.io_reg[(addr - 0xFF00) as usize] = value, [INFO] [stdout] | ^^^^^^^^^^^^^^^ overlapping patterns [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `NR41_REG` [INFO] [stdout] --> src/apu.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NR41_REG` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `NR42_REG` [INFO] [stdout] --> src/apu.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | NR42_REG => self.nr42, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NR42_REG` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `NR43_REG` [INFO] [stdout] --> src/apu.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | NR43_REG => self.nr43, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NR43_REG` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `NR44_REG` [INFO] [stdout] --> src/apu.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | NR44_REG => self.nr44, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NR44_REG` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/apu.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | -------- matches any value [INFO] [stdout] 66 | NR42_REG => self.nr42, [INFO] [stdout] | ^^^^^^^^ unreachable pattern [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/apu.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | -------- matches any value [INFO] [stdout] 66 | NR42_REG => self.nr42, [INFO] [stdout] 67 | NR43_REG => self.nr43, [INFO] [stdout] | ^^^^^^^^ unreachable pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/apu.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | -------- matches any value [INFO] [stdout] ... [INFO] [stdout] 68 | NR44_REG => self.nr44, [INFO] [stdout] | ^^^^^^^^ unreachable pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/apu.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | -------- matches any value [INFO] [stdout] ... [INFO] [stdout] 69 | _ => 0, [INFO] [stdout] | ^ unreachable pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple patterns covering the same range [INFO] [stdout] --> src/mmu.rs:276:13 [INFO] [stdout] | [INFO] [stdout] 255 | P1_REG => self.buttons.read_p1(), [INFO] [stdout] | ------ this range overlaps on `65280_u16` [INFO] [stdout] ... [INFO] [stdout] 276 | 0xFF00..=0xFF7F => self.io_reg[(addr - 0xFF00) as usize], [INFO] [stdout] | ^^^^^^^^^^^^^^^ overlapping patterns [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(overlapping_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple patterns covering the same range [INFO] [stdout] --> src/mmu.rs:380:13 [INFO] [stdout] | [INFO] [stdout] 345 | P1_REG => self.buttons.write_p1(value), [INFO] [stdout] | ------ this range overlaps on `65280_u16` [INFO] [stdout] ... [INFO] [stdout] 378 | 0xFF7F => {} [INFO] [stdout] | ------ this range overlaps on `65407_u16` [INFO] [stdout] 379 | [INFO] [stdout] 380 | 0xFF00..=0xFF7F => self.io_reg[(addr - 0xFF00) as usize] = value, [INFO] [stdout] | ^^^^^^^^^^^^^^^ overlapping patterns [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `NR41_REG` [INFO] [stdout] --> src/apu.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NR41_REG` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `NR42_REG` [INFO] [stdout] --> src/apu.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | NR42_REG => self.nr42, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NR42_REG` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `NR43_REG` [INFO] [stdout] --> src/apu.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | NR43_REG => self.nr43, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NR43_REG` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `NR44_REG` [INFO] [stdout] --> src/apu.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | NR44_REG => self.nr44, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NR44_REG` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `period` [INFO] [stdout] --> src/apu.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | period: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `ctr` [INFO] [stdout] --> src/apu.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | ctr: u32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `volume` [INFO] [stdout] --> src/apu.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | volume: i16, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `nr11` [INFO] [stdout] --> src/apu.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | nr11: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `NoiseGenerator` [INFO] [stdout] --> src/apu.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct NoiseGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/apu.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn new(sample_rate: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `read_reg` [INFO] [stdout] --> src/apu.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn read_reg(&self, address: u16) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `write_reg` [INFO] [stdout] --> src/apu.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn write_reg(&mut self, address: u16, value: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Cpu` [INFO] [stdout] --> src/cpu.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Cpu { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/cpu.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `print_ppu_registers` [INFO] [stdout] --> src/debug.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn print_ppu_registers(mmu: &MMU) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `address_type` [INFO] [stdout] --> src/debug.rs:630:8 [INFO] [stdout] | [INFO] [stdout] 630 | pub fn address_type(addr: u16) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `serialize` [INFO] [stdout] --> src/emu.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn serialize(&mut self) {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `op_cycles` [INFO] [stdout] --> src/instructions.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn op_cycles(op: u8) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `old_update` [INFO] [stdout] --> src/lcd.rs:377:12 [INFO] [stdout] | [INFO] [stdout] 377 | pub fn old_update(&mut self, cycles: u32, _mmu: &mut [u8; 0x10000]) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR21_REG` [INFO] [stdout] --> src/mmu.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | pub const NR21_REG: u16 = 0xFF16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR22_REG` [INFO] [stdout] --> src/mmu.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | pub const NR22_REG: u16 = 0xFF17; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR23_REG` [INFO] [stdout] --> src/mmu.rs:55:1 [INFO] [stdout] | [INFO] [stdout] 55 | pub const NR23_REG: u16 = 0xFF18; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR24_REG` [INFO] [stdout] --> src/mmu.rs:56:1 [INFO] [stdout] | [INFO] [stdout] 56 | pub const NR24_REG: u16 = 0xFF19; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR30_REG` [INFO] [stdout] --> src/mmu.rs:58:1 [INFO] [stdout] | [INFO] [stdout] 58 | pub const NR30_REG: u16 = 0xFF1A; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR31_REG` [INFO] [stdout] --> src/mmu.rs:59:1 [INFO] [stdout] | [INFO] [stdout] 59 | pub const NR31_REG: u16 = 0xFF1B; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR32_REG` [INFO] [stdout] --> src/mmu.rs:60:1 [INFO] [stdout] | [INFO] [stdout] 60 | pub const NR32_REG: u16 = 0xFF1C; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR33_REG` [INFO] [stdout] --> src/mmu.rs:61:1 [INFO] [stdout] | [INFO] [stdout] 61 | pub const NR33_REG: u16 = 0xFF1D; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR34_REG` [INFO] [stdout] --> src/mmu.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub const NR34_REG: u16 = 0xFF1E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR41_REG` [INFO] [stdout] --> src/mmu.rs:64:1 [INFO] [stdout] | [INFO] [stdout] 64 | pub const NR41_REG: u16 = 0xFF20; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR42_REG` [INFO] [stdout] --> src/mmu.rs:65:1 [INFO] [stdout] | [INFO] [stdout] 65 | pub const NR42_REG: u16 = 0xFF21; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR43_REG` [INFO] [stdout] --> src/mmu.rs:66:1 [INFO] [stdout] | [INFO] [stdout] 66 | pub const NR43_REG: u16 = 0xFF22; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR44_REG` [INFO] [stdout] --> src/mmu.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | pub const NR44_REG: u16 = 0xFF23; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `OAM_OFFSET` [INFO] [stdout] --> src/mmu.rs:74:1 [INFO] [stdout] | [INFO] [stdout] 74 | pub const OAM_OFFSET: u16 = 0xFE00; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `read_i8` [INFO] [stdout] --> src/mmu.rs:284:12 [INFO] [stdout] | [INFO] [stdout] 284 | pub fn read_i8(&mut self, addr: u16) -> i8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `read_u16` [INFO] [stdout] --> src/mmu.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn read_u16(&mut self, addr: u16) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `pop` [INFO] [stdout] --> src/mmu.rs:390:12 [INFO] [stdout] | [INFO] [stdout] 390 | pub fn pop(&mut self) -> u16 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `x_one_cycle` [INFO] [stdout] --> src/timer.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 88 | fn x_one_cycle(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `MutexGuard` that must be used [INFO] [stdout] --> src/main.rs:444:17 [INFO] [stdout] | [INFO] [stdout] 444 | cvar.wait(consumed).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if unused the Mutex will immediately unlock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `NR41_REG` should have a snake case name [INFO] [stdout] --> src/apu.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `nr41_reg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `NR42_REG` should have a snake case name [INFO] [stdout] --> src/apu.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | NR42_REG => self.nr42, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `nr42_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `NR43_REG` should have a snake case name [INFO] [stdout] --> src/apu.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | NR43_REG => self.nr43, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `nr43_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `NR44_REG` should have a snake case name [INFO] [stdout] --> src/apu.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | NR44_REG => self.nr44, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `nr44_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `period` [INFO] [stdout] --> src/apu.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | period: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `ctr` [INFO] [stdout] --> src/apu.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | ctr: u32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `volume` [INFO] [stdout] --> src/apu.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | volume: i16, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `nr11` [INFO] [stdout] --> src/apu.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | nr11: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `NoiseGenerator` [INFO] [stdout] --> src/apu.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct NoiseGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/apu.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn new(sample_rate: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `read_reg` [INFO] [stdout] --> src/apu.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn read_reg(&self, address: u16) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `write_reg` [INFO] [stdout] --> src/apu.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn write_reg(&mut self, address: u16, value: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `a_or_right_mask` [INFO] [stdout] --> src/buttons.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 67 | const a_or_right_mask: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `b_or_left_mask` [INFO] [stdout] --> src/buttons.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | const b_or_left_mask: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `start_or_down_mask` [INFO] [stdout] --> src/buttons.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | const start_or_down_mask: u8 = 8; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Cpu` [INFO] [stdout] --> src/cpu.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Cpu { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/cpu.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `print_ppu_registers` [INFO] [stdout] --> src/debug.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn print_ppu_registers(mmu: &MMU) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `address_type` [INFO] [stdout] --> src/debug.rs:630:8 [INFO] [stdout] | [INFO] [stdout] 630 | pub fn address_type(addr: u16) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `serialize` [INFO] [stdout] --> src/emu.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn serialize(&mut self) {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `op_cycles` [INFO] [stdout] --> src/instructions.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn op_cycles(op: u8) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `old_update` [INFO] [stdout] --> src/lcd.rs:377:12 [INFO] [stdout] | [INFO] [stdout] 377 | pub fn old_update(&mut self, cycles: u32, _mmu: &mut [u8; 0x10000]) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR21_REG` [INFO] [stdout] --> src/mmu.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | pub const NR21_REG: u16 = 0xFF16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR22_REG` [INFO] [stdout] --> src/mmu.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | pub const NR22_REG: u16 = 0xFF17; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR23_REG` [INFO] [stdout] --> src/mmu.rs:55:1 [INFO] [stdout] | [INFO] [stdout] 55 | pub const NR23_REG: u16 = 0xFF18; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR24_REG` [INFO] [stdout] --> src/mmu.rs:56:1 [INFO] [stdout] | [INFO] [stdout] 56 | pub const NR24_REG: u16 = 0xFF19; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR30_REG` [INFO] [stdout] --> src/mmu.rs:58:1 [INFO] [stdout] | [INFO] [stdout] 58 | pub const NR30_REG: u16 = 0xFF1A; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR31_REG` [INFO] [stdout] --> src/mmu.rs:59:1 [INFO] [stdout] | [INFO] [stdout] 59 | pub const NR31_REG: u16 = 0xFF1B; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR32_REG` [INFO] [stdout] --> src/mmu.rs:60:1 [INFO] [stdout] | [INFO] [stdout] 60 | pub const NR32_REG: u16 = 0xFF1C; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR33_REG` [INFO] [stdout] --> src/mmu.rs:61:1 [INFO] [stdout] | [INFO] [stdout] 61 | pub const NR33_REG: u16 = 0xFF1D; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR34_REG` [INFO] [stdout] --> src/mmu.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub const NR34_REG: u16 = 0xFF1E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR41_REG` [INFO] [stdout] --> src/mmu.rs:64:1 [INFO] [stdout] | [INFO] [stdout] 64 | pub const NR41_REG: u16 = 0xFF20; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR42_REG` [INFO] [stdout] --> src/mmu.rs:65:1 [INFO] [stdout] | [INFO] [stdout] 65 | pub const NR42_REG: u16 = 0xFF21; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR43_REG` [INFO] [stdout] --> src/mmu.rs:66:1 [INFO] [stdout] | [INFO] [stdout] 66 | pub const NR43_REG: u16 = 0xFF22; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NR44_REG` [INFO] [stdout] --> src/mmu.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | pub const NR44_REG: u16 = 0xFF23; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `OAM_OFFSET` [INFO] [stdout] --> src/mmu.rs:74:1 [INFO] [stdout] | [INFO] [stdout] 74 | pub const OAM_OFFSET: u16 = 0xFE00; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `read_i8` [INFO] [stdout] --> src/mmu.rs:284:12 [INFO] [stdout] | [INFO] [stdout] 284 | pub fn read_i8(&mut self, addr: u16) -> i8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `read_u16` [INFO] [stdout] --> src/mmu.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn read_u16(&mut self, addr: u16) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `pop` [INFO] [stdout] --> src/mmu.rs:390:12 [INFO] [stdout] | [INFO] [stdout] 390 | pub fn pop(&mut self) -> u16 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `x_one_cycle` [INFO] [stdout] --> src/timer.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 88 | fn x_one_cycle(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 50 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `MutexGuard` that must be used [INFO] [stdout] --> src/main.rs:444:17 [INFO] [stdout] | [INFO] [stdout] 444 | cvar.wait(consumed).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if unused the Mutex will immediately unlock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `NR41_REG` should have a snake case name [INFO] [stdout] --> src/apu.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | NR41_REG => self.nr41, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `nr41_reg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `NR42_REG` should have a snake case name [INFO] [stdout] --> src/apu.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | NR42_REG => self.nr42, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `nr42_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `NR43_REG` should have a snake case name [INFO] [stdout] --> src/apu.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | NR43_REG => self.nr43, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `nr43_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `NR44_REG` should have a snake case name [INFO] [stdout] --> src/apu.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | NR44_REG => self.nr44, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `nr44_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `p14_mask` should have an upper case name [INFO] [stdout] --> src/buttons.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | const p14_mask: u8 = 1 << 4; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P14_MASK` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `p15_mask` should have an upper case name [INFO] [stdout] --> src/buttons.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | const p15_mask: u8 = 1 << 5; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P15_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `a_or_right_mask` should have an upper case name [INFO] [stdout] --> src/buttons.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | const a_or_right_mask: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `A_OR_RIGHT_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `b_or_left_mask` should have an upper case name [INFO] [stdout] --> src/buttons.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | const b_or_left_mask: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `B_OR_LEFT_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `select_or_up_mask` should have an upper case name [INFO] [stdout] --> src/buttons.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | const select_or_up_mask: u8 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SELECT_OR_UP_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `start_or_down_mask` should have an upper case name [INFO] [stdout] --> src/buttons.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | const start_or_down_mask: u8 = 8; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `START_OR_DOWN_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 59 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 28.55s [INFO] running `Command { std: "docker" "inspect" "4bc135dfc63522c26258b946d35c1fd6f498fcd4637eda34b53d8489420accbf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4bc135dfc63522c26258b946d35c1fd6f498fcd4637eda34b53d8489420accbf", kill_on_drop: false }` [INFO] [stdout] 4bc135dfc63522c26258b946d35c1fd6f498fcd4637eda34b53d8489420accbf