[INFO] cloning repository https://github.com/starlite-project/craneboy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/starlite-project/craneboy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstarlite-project%2Fcraneboy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstarlite-project%2Fcraneboy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7c10bde4c6117c640328dcb9c7c7bd8285ad0a5a [INFO] checking starlite-project/craneboy against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstarlite-project%2Fcraneboy" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-6-tc2/source/.cargo/config.toml [INFO] removed /workspace/builds/worker-6-tc2/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/starlite-project/craneboy [INFO] finished tweaking git repo https://github.com/starlite-project/craneboy [INFO] tweaked toml for git repo https://github.com/starlite-project/craneboy written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/starlite-project/craneboy on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/starlite-project/craneboy 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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1f5f1ca566fbd47a6d13360c78a433bed7a3a27321184d2dbbc46e3a7796abf5 [INFO] running `Command { std: "docker" "start" "-a" "1f5f1ca566fbd47a6d13360c78a433bed7a3a27321184d2dbbc46e3a7796abf5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1f5f1ca566fbd47a6d13360c78a433bed7a3a27321184d2dbbc46e3a7796abf5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1f5f1ca566fbd47a6d13360c78a433bed7a3a27321184d2dbbc46e3a7796abf5", kill_on_drop: false }` [INFO] [stdout] 1f5f1ca566fbd47a6d13360c78a433bed7a3a27321184d2dbbc46e3a7796abf5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 65766eec68747e0779e1b92772e3fb5764fd53576451a1a99b66512c28e40ebd [INFO] running `Command { std: "docker" "start" "-a" "65766eec68747e0779e1b92772e3fb5764fd53576451a1a99b66512c28e40ebd", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.96 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling typeid v1.0.3 [INFO] [stderr] Checking cfg-if v1.0.1 [INFO] [stderr] Checking ciborium-io v0.2.2 [INFO] [stderr] Compiling craneboy v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking inventory v0.3.20 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Checking blip_buf v0.1.5 [INFO] [stderr] Checking half v2.6.0 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling typetag-impl v0.2.20 [INFO] [stderr] Checking erased-serde v0.4.6 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking serde_arrays v0.2.0 [INFO] [stderr] Checking bitflags v2.9.1 [INFO] [stderr] Checking typetag v0.2.20 [INFO] [stdout] warning: unused import: `CpuFlags` [INFO] [stdout] --> src/cpu.rs:6:14 [INFO] [stdout] | [INFO] [stdout] 6 | registers::{CpuFlags, Registers}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SerialCallback`, `StrResult`, `gb_mode::GbMode`, `keypad::KeypadKey`, `mbc`, `printer::GbPrinter`, `self`, and `sound` [INFO] [stdout] --> src/device.rs:4:2 [INFO] [stdout] | [INFO] [stdout] 4 | StrResult, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 5 | cpu::CPU, [INFO] [stdout] 6 | gb_mode::GbMode, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 7 | keypad::KeypadKey, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | mbc, [INFO] [stdout] | ^^^ [INFO] [stdout] 9 | printer::GbPrinter, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | serial::{self, SerialCallback}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] 11 | sound, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CpuFlags` [INFO] [stdout] --> src/cpu.rs:6:14 [INFO] [stdout] | [INFO] [stdout] 6 | registers::{CpuFlags, Registers}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SerialCallback`, `StrResult`, `gb_mode::GbMode`, `keypad::KeypadKey`, `mbc`, `printer::GbPrinter`, `self`, and `sound` [INFO] [stdout] --> src/device.rs:4:2 [INFO] [stdout] | [INFO] [stdout] 4 | StrResult, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 5 | cpu::CPU, [INFO] [stdout] 6 | gb_mode::GbMode, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 7 | keypad::KeypadKey, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | mbc, [INFO] [stdout] | ^^^ [INFO] [stdout] 9 | printer::GbPrinter, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | serial::{self, SerialCallback}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] 11 | sound, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CPU` is never constructed [INFO] [stdout] --> src/cpu.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct CPU { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/cpu.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | impl CPU { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 21 | pub fn classic( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn cgb( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn do_cycle(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | fn get_ticks(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn handle_interrupt(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn push_stack(&mut self, value: u16) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | fn update_ime(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | fn call(&mut self) -> u32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Device` is never constructed [INFO] [stdout] --> src/device.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Device { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `GbSpeed` is never used [INFO] [stdout] --> src/gb_mode.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum GbSpeed { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VRAM_SIZE` is never used [INFO] [stdout] --> src/gpu.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const VRAM_SIZE: usize = 0x4000; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VOAM_SIZE` is never used [INFO] [stdout] --> src/gpu.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const VOAM_SIZE: usize = 0xA0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPU` is never constructed [INFO] [stdout] --> src/gpu.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct GPU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/gpu.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 63 | impl GPU { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 64 | pub fn classic() -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn cgb() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn do_cycle(&mut self, ticks: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | const fn check_interrupt_lyc(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | fn change_mode(&mut self, mode: u8) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 266 | fn rbvram0(&self, a: u16) -> u8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | fn rbvram1(&self, a: u16) -> u8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 394 | fn clear_screen(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 402 | fn update_pal(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 410 | const fn get_monochrome_pal_val(value: u8, index: usize) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | fn render_scan(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 433 | fn set_color(&mut self, x: usize, color: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 439 | fn set_rgb(&mut self, x: usize, r: u8, g: u8, b: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 451 | fn draw_bg(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 554 | fn draw_sprites(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 664 | pub const fn may_hdma(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PrioType` is never used [INFO] [stdout] --> src/gpu.rs:670:6 [INFO] [stdout] | [INFO] [stdout] 670 | enum PrioType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dmg_sprite_order` is never used [INFO] [stdout] --> src/gpu.rs:677:4 [INFO] [stdout] | [INFO] [stdout] 677 | fn dmg_sprite_order(a: &(i32, i32, u8), b: &(i32, i32, u8)) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cgb_sprite_order` is never used [INFO] [stdout] --> src/gpu.rs:686:4 [INFO] [stdout] | [INFO] [stdout] 686 | fn cgb_sprite_order(a: &(i32, i32, u8), b: &(i32, i32, u8)) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | impl FileBackedMBC { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 24 | pub fn new(rom_path: PathBuf, skip_checksum: bool) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_mbc` is never used [INFO] [stdout] --> src/mbc/mod.rs:139:8 [INFO] [stdout] | [INFO] [stdout] 139 | pub fn get_mbc(data: Vec, skip_checksum: bool) -> StrResult> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ram_banks` is never used [INFO] [stdout] --> src/mbc/mod.rs:158:10 [INFO] [stdout] | [INFO] [stdout] 158 | const fn ram_banks(v: u8) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rom_banks` is never used [INFO] [stdout] --> src/mbc/mod.rs:168:10 [INFO] [stdout] | [INFO] [stdout] 168 | const fn rom_banks(v: u8) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc0.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 11 | impl MBC0 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 12 | pub const fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc1.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 21 | impl MBC1 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 22 | pub fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc2.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | impl MBC2 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 19 | pub fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc3.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | impl MBC3 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 24 | pub fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc5.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | impl MBC5 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 21 | pub fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WRAM_SIZE` is never used [INFO] [stdout] --> src/mmu.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const WRAM_SIZE: usize = 0x8000; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ZRAM_SIZE` is never used [INFO] [stdout] --> src/mmu.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const ZRAM_SIZE: usize = 0x7F; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MMU` is never constructed [INFO] [stdout] --> src/mmu.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct MMU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/mmu.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | impl MMU { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 47 | pub fn classic( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn cgb( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | fn determine_mode(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 138 | fn set_initial(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn rb(&mut self, address: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 214 | pub fn rw(&mut self, address: u16) -> u16 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn wb(&mut self, address: u16, value: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 259 | pub fn do_cycle(&mut self, ticks: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn ww(&mut self, address: u16, value: u16) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 285 | pub const fn switch_speed(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 297 | fn oamdma(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | fn hdma_read(&self, a: u16) -> u8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 320 | fn hdma_write(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | fn perform_vramdma(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 363 | fn perform_hdma(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 377 | fn perform_gdma(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 387 | fn perform_vramdma_row(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DMAType` is never used [INFO] [stdout] --> src/mmu.rs:405:6 [INFO] [stdout] | [INFO] [stdout] 405 | enum DMAType { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fill_random` is never used [INFO] [stdout] --> src/mmu.rs:411:4 [INFO] [stdout] | [INFO] [stdout] 411 | fn fill_random(slice: &mut [u8], start: u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GbPrinter` is never constructed [INFO] [stdout] --> src/printer.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct GbPrinter { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/printer.rs:23:15 [INFO] [stdout] | [INFO] [stdout] 22 | impl GbPrinter { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 23 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | fn check_crc(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | const fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | fn show(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn show_inner(&mut self) -> ::std::io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | fn receive(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | fn command(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn send(&mut self, v: u8) -> u8 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Serial` is never constructed [INFO] [stdout] --> src/serial.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Serial { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_callback`, `wb`, `rb`, `set_callback`, and `clear_callback` are never used [INFO] [stdout] --> src/serial.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 12 | impl Serial { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 13 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn with_callback(cb: Box) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn set_callback(&mut self, cb: Box) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn clear_callback(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WAVE_PATTERN` is never used [INFO] [stdout] --> src/sound.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const WAVE_PATTERN: [[i32; 8]; 4] = [ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLOCKS_PER_SECOND` is never used [INFO] [stdout] --> src/sound.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const CLOCKS_PER_SECOND: u32 = 1 << 22; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLOCKS_PER_FRAME` is never used [INFO] [stdout] --> src/sound.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const CLOCKS_PER_FRAME: u32 = CLOCKS_PER_SECOND / 512; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OUTPUT_SAMPLE_COUNT` is never used [INFO] [stdout] --> src/sound.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const OUTPUT_SAMPLE_COUNT: usize = 2000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SWEEP_DELAY_ZERO_PERIOD` is never used [INFO] [stdout] --> src/sound.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const SWEEP_DELAY_ZERO_PERIOD: u8 = 8; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WAVE_INITIAL_DELAY` is never used [INFO] [stdout] --> src/sound.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const WAVE_INITIAL_DELAY: u32 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sound` is never constructed [INFO] [stdout] --> src/sound.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Sound { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/sound.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 38 | impl Sound { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 39 | pub fn dmg(player: Box) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn cgb(player: Box) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | fn create(player: Box, dmg_mode: bool) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn rb(&mut self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn do_cycle(&mut self, cycles: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub const fn sync(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | fn do_output(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | fn run(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | fn mix_buffers(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 291 | fn clear_buffers(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VolumeEnvelope` is never constructed [INFO] [stdout] --> src/sound.rs:299:8 [INFO] [stdout] | [INFO] [stdout] 299 | struct VolumeEnvelope { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rb`, `wb`, and `step` are never used [INFO] [stdout] --> src/sound.rs:308:11 [INFO] [stdout] | [INFO] [stdout] 307 | impl VolumeEnvelope { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 308 | const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | const fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 329 | const fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 345 | const fn step(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LengthCounter` is never constructed [INFO] [stdout] --> src/sound.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 359 | struct LengthCounter { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/sound.rs:366:11 [INFO] [stdout] | [INFO] [stdout] 365 | impl LengthCounter { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 366 | const fn new(max: u16) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 374 | const fn is_active(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 378 | const fn extra_step(frame_step: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 382 | const fn enable(&mut self, enable: bool, frame_step: u8) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 389 | const fn set(&mut self, minus_value: u8) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 393 | const fn trigger(&mut self, frame_step: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 402 | const fn step(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SquareChannel` is never constructed [INFO] [stdout] --> src/sound.rs:409:8 [INFO] [stdout] | [INFO] [stdout] 409 | struct SquareChannel { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/sound.rs:432:11 [INFO] [stdout] | [INFO] [stdout] 431 | impl SquareChannel { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 432 | const fn new(blip: BlipBuf, with_sweep: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | const fn on(&self) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 460 | fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 475 | const fn wb(&mut self, a: u16, v: u8, frame_step: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 534 | fn run(&mut self, start_time: u32, end_time: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 561 | const fn step_sweep(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 585 | const fn calculate_period(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 593 | const fn step_length(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | const fn sweep_calculate_frequency(&mut self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WaveChannel` is never constructed [INFO] [stdout] --> src/sound.rs:617:8 [INFO] [stdout] | [INFO] [stdout] 617 | struct WaveChannel { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/sound.rs:634:11 [INFO] [stdout] | [INFO] [stdout] 633 | impl WaveChannel { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 634 | const fn new(blip: BlipBuf, dmg_mode: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 652 | const fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 671 | const fn wb(&mut self, a: u16, v: u8, frame_step: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 714 | const fn calculate_period(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 722 | const fn on(&self) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 726 | const fn step_length(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 731 | const fn dmg_maybe_corrupt_waveram(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 749 | fn run(&mut self, start_time: u32, end_time: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NoiseChannel` is never constructed [INFO] [stdout] --> src/sound.rs:796:8 [INFO] [stdout] | [INFO] [stdout] 796 | struct NoiseChannel { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rb`, `wb`, `on`, `run`, and `step_length` are never used [INFO] [stdout] --> src/sound.rs:811:11 [INFO] [stdout] | [INFO] [stdout] 810 | impl NoiseChannel { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 811 | const fn new(blip: BlipBuf) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 827 | const fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 837 | fn wb(&mut self, a: u16, v: u8, frame_step: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 875 | const fn on(&self) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 879 | fn run(&mut self, start_time: u32, end_time: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 909 | const fn step_length(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_blipbuf` is never used [INFO] [stdout] --> src/sound.rs:923:4 [INFO] [stdout] | [INFO] [stdout] 923 | fn create_blipbuf(samples_rate: u32) -> BlipBuf { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Timer` is never constructed [INFO] [stdout] --> src/timer.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Timer { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rb`, `wb`, and `do_cycle` are never used [INFO] [stdout] --> src/timer.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 15 | impl Timer { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 16 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub const fn do_cycle(&mut self, ticks: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CPU` is never constructed [INFO] [stdout] --> src/cpu.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct CPU { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/cpu.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | impl CPU { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 21 | pub fn classic( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn cgb( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn do_cycle(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | fn get_ticks(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn handle_interrupt(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn push_stack(&mut self, value: u16) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | fn update_ime(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | fn call(&mut self) -> u32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Device` is never constructed [INFO] [stdout] --> src/device.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Device { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `GbMode` is never used [INFO] [stdout] --> src/gb_mode.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum GbMode { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `GbSpeed` is never used [INFO] [stdout] --> src/gb_mode.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum GbSpeed { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VRAM_SIZE` is never used [INFO] [stdout] --> src/gpu.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const VRAM_SIZE: usize = 0x4000; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VOAM_SIZE` is never used [INFO] [stdout] --> src/gpu.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const VOAM_SIZE: usize = 0xA0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPU` is never constructed [INFO] [stdout] --> src/gpu.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct GPU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/gpu.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 63 | impl GPU { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 64 | pub fn classic() -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn cgb() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn do_cycle(&mut self, ticks: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | const fn check_interrupt_lyc(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | fn change_mode(&mut self, mode: u8) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 266 | fn rbvram0(&self, a: u16) -> u8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | fn rbvram1(&self, a: u16) -> u8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 394 | fn clear_screen(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 402 | fn update_pal(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 410 | const fn get_monochrome_pal_val(value: u8, index: usize) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | fn render_scan(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 433 | fn set_color(&mut self, x: usize, color: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 439 | fn set_rgb(&mut self, x: usize, r: u8, g: u8, b: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 451 | fn draw_bg(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 554 | fn draw_sprites(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 664 | pub const fn may_hdma(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PrioType` is never used [INFO] [stdout] --> src/gpu.rs:670:6 [INFO] [stdout] | [INFO] [stdout] 670 | enum PrioType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dmg_sprite_order` is never used [INFO] [stdout] --> src/gpu.rs:677:4 [INFO] [stdout] | [INFO] [stdout] 677 | fn dmg_sprite_order(a: &(i32, i32, u8), b: &(i32, i32, u8)) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cgb_sprite_order` is never used [INFO] [stdout] --> src/gpu.rs:686:4 [INFO] [stdout] | [INFO] [stdout] 686 | fn cgb_sprite_order(a: &(i32, i32, u8), b: &(i32, i32, u8)) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Keypad` is never constructed [INFO] [stdout] --> src/keypad.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Keypad { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rb`, `wb`, `update`, `keydown`, and `keyup` are never used [INFO] [stdout] --> src/keypad.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 11 | impl Keypad { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 12 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub const fn rb(&self) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub const fn wb(&mut self, value: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 30 | const fn update(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub const fn keydown(&mut self, key: KeypadKey) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub const fn keyup(&mut self, key: KeypadKey) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | impl FileBackedMBC { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 24 | pub fn new(rom_path: PathBuf, skip_checksum: bool) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_mbc` is never used [INFO] [stdout] --> src/mbc/mod.rs:139:8 [INFO] [stdout] | [INFO] [stdout] 139 | pub fn get_mbc(data: Vec, skip_checksum: bool) -> StrResult> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ram_banks` is never used [INFO] [stdout] --> src/mbc/mod.rs:158:10 [INFO] [stdout] | [INFO] [stdout] 158 | const fn ram_banks(v: u8) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rom_banks` is never used [INFO] [stdout] --> src/mbc/mod.rs:168:10 [INFO] [stdout] | [INFO] [stdout] 168 | const fn rom_banks(v: u8) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_checksum` is never used [INFO] [stdout] --> src/mbc/mod.rs:172:4 [INFO] [stdout] | [INFO] [stdout] 172 | fn check_checksum(data: &[u8]) -> StrResult<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc0.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 11 | impl MBC0 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 12 | pub const fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc1.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 21 | impl MBC1 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 22 | pub fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc2.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | impl MBC2 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 19 | pub fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc3.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | impl MBC3 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 24 | pub fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mbc/mbc5.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | impl MBC5 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 21 | pub fn new(data: Vec) -> StrResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WRAM_SIZE` is never used [INFO] [stdout] --> src/mmu.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const WRAM_SIZE: usize = 0x8000; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ZRAM_SIZE` is never used [INFO] [stdout] --> src/mmu.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const ZRAM_SIZE: usize = 0x7F; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MMU` is never constructed [INFO] [stdout] --> src/mmu.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct MMU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/mmu.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | impl MMU { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 47 | pub fn classic( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn cgb( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | fn determine_mode(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 138 | fn set_initial(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn rb(&mut self, address: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 214 | pub fn rw(&mut self, address: u16) -> u16 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn wb(&mut self, address: u16, value: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 259 | pub fn do_cycle(&mut self, ticks: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn ww(&mut self, address: u16, value: u16) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 285 | pub const fn switch_speed(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 297 | fn oamdma(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | fn hdma_read(&self, a: u16) -> u8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 320 | fn hdma_write(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | fn perform_vramdma(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 363 | fn perform_hdma(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 377 | fn perform_gdma(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 387 | fn perform_vramdma_row(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DMAType` is never used [INFO] [stdout] --> src/mmu.rs:405:6 [INFO] [stdout] | [INFO] [stdout] 405 | enum DMAType { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fill_random` is never used [INFO] [stdout] --> src/mmu.rs:411:4 [INFO] [stdout] | [INFO] [stdout] 411 | fn fill_random(slice: &mut [u8], start: u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GbPrinter` is never constructed [INFO] [stdout] --> src/printer.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct GbPrinter { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/printer.rs:23:15 [INFO] [stdout] | [INFO] [stdout] 22 | impl GbPrinter { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 23 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | fn check_crc(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | const fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | fn show(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn show_inner(&mut self) -> ::std::io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | fn receive(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | fn command(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn send(&mut self, v: u8) -> u8 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Registers` is never constructed [INFO] [stdout] --> src/registers.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Registers { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/registers.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | impl Registers { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 21 | pub fn new(mode: GbMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub const fn af(self) -> u16 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub const fn bc(self) -> u16 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub const fn de(self) -> u16 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub const fn hl(self) -> u16 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub const fn hld(&mut self) -> u16 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub const fn hli(&mut self) -> u16 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub const fn set_af(&mut self, value: u16) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub const fn set_bc(&mut self, value: u16) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub const fn set_de(&mut self, value: u16) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub const fn set_hl(&mut self, value: u16) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn flag(&mut self, flags: CpuFlags, set: bool) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub const fn get_flag(self, flag: CpuFlags) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Serial` is never constructed [INFO] [stdout] --> src/serial.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Serial { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_callback`, `wb`, `rb`, `set_callback`, and `clear_callback` are never used [INFO] [stdout] --> src/serial.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 12 | impl Serial { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 13 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn with_callback(cb: Box) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn set_callback(&mut self, cb: Box) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn clear_callback(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WAVE_PATTERN` is never used [INFO] [stdout] --> src/sound.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const WAVE_PATTERN: [[i32; 8]; 4] = [ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLOCKS_PER_SECOND` is never used [INFO] [stdout] --> src/sound.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const CLOCKS_PER_SECOND: u32 = 1 << 22; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLOCKS_PER_FRAME` is never used [INFO] [stdout] --> src/sound.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const CLOCKS_PER_FRAME: u32 = CLOCKS_PER_SECOND / 512; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OUTPUT_SAMPLE_COUNT` is never used [INFO] [stdout] --> src/sound.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const OUTPUT_SAMPLE_COUNT: usize = 2000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SWEEP_DELAY_ZERO_PERIOD` is never used [INFO] [stdout] --> src/sound.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const SWEEP_DELAY_ZERO_PERIOD: u8 = 8; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WAVE_INITIAL_DELAY` is never used [INFO] [stdout] --> src/sound.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const WAVE_INITIAL_DELAY: u32 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sound` is never constructed [INFO] [stdout] --> src/sound.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Sound { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/sound.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 38 | impl Sound { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 39 | pub fn dmg(player: Box) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn cgb(player: Box) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | fn create(player: Box, dmg_mode: bool) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn rb(&mut self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn do_cycle(&mut self, cycles: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub const fn sync(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | fn do_output(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | fn run(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | fn mix_buffers(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 291 | fn clear_buffers(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VolumeEnvelope` is never constructed [INFO] [stdout] --> src/sound.rs:299:8 [INFO] [stdout] | [INFO] [stdout] 299 | struct VolumeEnvelope { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rb`, `wb`, and `step` are never used [INFO] [stdout] --> src/sound.rs:308:11 [INFO] [stdout] | [INFO] [stdout] 307 | impl VolumeEnvelope { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 308 | const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | const fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 329 | const fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 345 | const fn step(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LengthCounter` is never constructed [INFO] [stdout] --> src/sound.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 359 | struct LengthCounter { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/sound.rs:366:11 [INFO] [stdout] | [INFO] [stdout] 365 | impl LengthCounter { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 366 | const fn new(max: u16) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 374 | const fn is_active(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 378 | const fn extra_step(frame_step: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 382 | const fn enable(&mut self, enable: bool, frame_step: u8) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 389 | const fn set(&mut self, minus_value: u8) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 393 | const fn trigger(&mut self, frame_step: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 402 | const fn step(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SquareChannel` is never constructed [INFO] [stdout] --> src/sound.rs:409:8 [INFO] [stdout] | [INFO] [stdout] 409 | struct SquareChannel { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/sound.rs:432:11 [INFO] [stdout] | [INFO] [stdout] 431 | impl SquareChannel { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 432 | const fn new(blip: BlipBuf, with_sweep: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | const fn on(&self) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 460 | fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 475 | const fn wb(&mut self, a: u16, v: u8, frame_step: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 534 | fn run(&mut self, start_time: u32, end_time: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 561 | const fn step_sweep(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 585 | const fn calculate_period(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 593 | const fn step_length(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | const fn sweep_calculate_frequency(&mut self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WaveChannel` is never constructed [INFO] [stdout] --> src/sound.rs:617:8 [INFO] [stdout] | [INFO] [stdout] 617 | struct WaveChannel { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/sound.rs:634:11 [INFO] [stdout] | [INFO] [stdout] 633 | impl WaveChannel { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 634 | const fn new(blip: BlipBuf, dmg_mode: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 652 | const fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 671 | const fn wb(&mut self, a: u16, v: u8, frame_step: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 714 | const fn calculate_period(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 722 | const fn on(&self) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 726 | const fn step_length(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 731 | const fn dmg_maybe_corrupt_waveram(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 749 | fn run(&mut self, start_time: u32, end_time: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NoiseChannel` is never constructed [INFO] [stdout] --> src/sound.rs:796:8 [INFO] [stdout] | [INFO] [stdout] 796 | struct NoiseChannel { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rb`, `wb`, `on`, `run`, and `step_length` are never used [INFO] [stdout] --> src/sound.rs:811:11 [INFO] [stdout] | [INFO] [stdout] 810 | impl NoiseChannel { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 811 | const fn new(blip: BlipBuf) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 827 | const fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 837 | fn wb(&mut self, a: u16, v: u8, frame_step: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 875 | const fn on(&self) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 879 | fn run(&mut self, start_time: u32, end_time: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 909 | const fn step_length(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_blipbuf` is never used [INFO] [stdout] --> src/sound.rs:923:4 [INFO] [stdout] | [INFO] [stdout] 923 | fn create_blipbuf(samples_rate: u32) -> BlipBuf { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Timer` is never constructed [INFO] [stdout] --> src/timer.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Timer { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rb`, `wb`, and `do_cycle` are never used [INFO] [stdout] --> src/timer.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 15 | impl Timer { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 16 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn rb(&self, a: u16) -> u8 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn wb(&mut self, a: u16, v: u8) { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub const fn do_cycle(&mut self, ticks: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.94s [INFO] running `Command { std: "docker" "inspect" "65766eec68747e0779e1b92772e3fb5764fd53576451a1a99b66512c28e40ebd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "65766eec68747e0779e1b92772e3fb5764fd53576451a1a99b66512c28e40ebd", kill_on_drop: false }` [INFO] [stdout] 65766eec68747e0779e1b92772e3fb5764fd53576451a1a99b66512c28e40ebd