[INFO] cloning repository https://github.com/sonhs99/RustyNES
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sonhs99/RustyNES" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsonhs99%2FRustyNES", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsonhs99%2FRustyNES'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 026e12ba653ee899691d9fb91c0401fd582beb37
[INFO] checking sonhs99/RustyNES against try#c8085cfed34c45021fc8f66d073f6394b3e35431 for pr-148939
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsonhs99%2FRustyNES" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/sonhs99/RustyNES
[INFO] finished tweaking git repo https://github.com/sonhs99/RustyNES
[INFO] tweaked toml for git repo https://github.com/sonhs99/RustyNES written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sonhs99/RustyNES on toolchain c8085cfed34c45021fc8f66d073f6394b3e35431
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c8085cfed34c45021fc8f66d073f6394b3e35431" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sonhs99/RustyNES 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" "+c8085cfed34c45021fc8f66d073f6394b3e35431" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded symphonia-codec-adpcm v0.5.4
[INFO] [stderr]   Downloaded symphonia-format-mkv v0.5.4
[INFO] [stderr]   Downloaded libc-print v0.1.23
[INFO] [stderr]   Downloaded rsor v0.1.4
[INFO] [stderr]   Downloaded numeric-array v0.5.2
[INFO] [stderr]   Downloaded realfft v3.3.0
[INFO] [stderr]   Downloaded primal-check v0.3.3
[INFO] [stderr]   Downloaded symphonia-codec-alac v0.5.4
[INFO] [stderr]   Downloaded symphonia-format-caf v0.5.4
[INFO] [stderr]   Downloaded serde v1.0.198
[INFO] [stderr]   Downloaded thingbuf v0.1.6
[INFO] [stderr]   Downloaded serde_derive v1.0.198
[INFO] [stderr]   Downloaded rustfft v6.2.0
[INFO] [stderr]   Downloaded fundsp v0.17.1
[INFO] [stderr]   Downloaded funutd v0.14.0
[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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+c8085cfed34c45021fc8f66d073f6394b3e35431" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1439bb5796fc1cb80abc1580878797fc3b8fe356fbf43166e29bfb45bf0c7305
[INFO] running `Command { std: "docker" "start" "-a" "1439bb5796fc1cb80abc1580878797fc3b8fe356fbf43166e29bfb45bf0c7305", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1439bb5796fc1cb80abc1580878797fc3b8fe356fbf43166e29bfb45bf0c7305", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1439bb5796fc1cb80abc1580878797fc3b8fe356fbf43166e29bfb45bf0c7305", kill_on_drop: false }`
[INFO] [stdout] 1439bb5796fc1cb80abc1580878797fc3b8fe356fbf43166e29bfb45bf0c7305
[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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+c8085cfed34c45021fc8f66d073f6394b3e35431" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b6b32aa8680bb1abb6d1d1c6c5522ca2573d0cb9679e7613f611fe5111b933f6
[INFO] running `Command { std: "docker" "start" "-a" "b6b32aa8680bb1abb6d1d1c6c5522ca2573d0cb9679e7613f611fe5111b933f6", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]     Checking bytemuck v1.15.0
[INFO] [stderr]    Compiling xml-rs v0.8.20
[INFO] [stderr]     Checking libloading v0.8.3
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]    Compiling rustfft v6.2.0
[INFO] [stderr]    Compiling rustix v0.38.32
[INFO] [stderr]     Checking strength_reduce v0.2.4
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking extended v0.1.0
[INFO] [stderr]     Checking symphonia-core v0.5.4
[INFO] [stderr]    Compiling cc v1.0.95
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking linux-raw-sys v0.4.13
[INFO] [stderr]     Checking dyn-clone v1.0.17
[INFO] [stderr]     Checking fastrand v2.0.2
[INFO] [stderr]     Checking xcursor v0.3.5
[INFO] [stderr]     Checking cty v0.2.2
[INFO] [stderr]     Checking raw-window-handle v0.4.3
[INFO] [stderr]     Checking funutd v0.14.0
[INFO] [stderr]     Checking hashbrown v0.14.3
[INFO] [stderr]     Checking rsor v0.1.4
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking symphonia-metadata v0.5.4
[INFO] [stderr]     Checking symphonia-codec-adpcm v0.5.4
[INFO] [stderr]     Checking symphonia-codec-pcm v0.5.4
[INFO] [stderr]     Checking symphonia-codec-aac v0.5.4
[INFO] [stderr]     Checking symphonia-codec-alac v0.5.4
[INFO] [stderr]    Compiling minifb v0.25.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking nix v0.24.3
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking libc-print v0.1.23
[INFO] [stderr]     Checking rustynes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling duplicate v1.0.0
[INFO] [stderr]     Checking symphonia-utils-xiph v0.5.4
[INFO] [stderr]     Checking symphonia-bundle-mp3 v0.5.4
[INFO] [stderr]     Checking symphonia-format-riff v0.5.4
[INFO] [stderr]     Checking symphonia-format-caf v0.5.4
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/apu/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/apu/noise.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::CPU_CLOCK`
[INFO] [stdout]  --> src/apu/noise.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::CPU_CLOCK;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/apu/pulse.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/pulse.rs:53:38
[INFO] [stdout]    |
[INFO] [stdout] 53 |         self.sequence.set_timer_high((value & 0b0000_0111));
[INFO] [stdout]    |                                      ^                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 53 -         self.sequence.set_timer_high((value & 0b0000_0111));
[INFO] [stdout] 53 +         self.sequence.set_timer_high(value & 0b0000_0111 );
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/apu/triangle.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/cartridge/uxrom.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/cartridge/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `libc_print` and `libc_println`
[INFO] [stdout]  --> src/cpu/mod.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use libc_print::{libc_print, libc_println};
[INFO] [stdout]   |                  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/joypad.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/memory.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/ppu/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::vec::Vec`
[INFO] [stdout]  --> src/ppu/frame.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use alloc::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `exclusive_range_pattern` has been stable since 1.80.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(exclusive_range_pattern)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking parking_lot v0.12.2
[INFO] [stderr]     Checking symphonia-codec-vorbis v0.5.4
[INFO] [stderr]     Checking symphonia-format-isomp4 v0.5.4
[INFO] [stderr]     Checking symphonia-format-mkv v0.5.4
[INFO] [stderr]     Checking symphonia-bundle-flac v0.5.4
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/apu/mod.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |     fn read(&mut self, mmu: &MemoryBus, address: u16) -> MemoryRead {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/apu/mod.rs:185:25
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn write(&mut self, mmu: &MemoryBus, address: u16, value: u8) -> MemoryWrite {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cartridge/mod.rs:151:24
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn read(&mut self, mmu: &MemoryBus, address: u16) -> MemoryRead {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cartridge/mod.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn write(&mut self, mmu: &MemoryBus, address: u16, value: u8) -> MemoryWrite {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:522:5
[INFO] [stdout]     |
[INFO] [stdout] 522 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:571:5
[INFO] [stdout]     |
[INFO] [stdout] 571 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:572:5
[INFO] [stdout]     |
[INFO] [stdout] 572 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:580:5
[INFO] [stdout]     |
[INFO] [stdout] 580 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:581:5
[INFO] [stdout]     |
[INFO] [stdout] 581 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:589:5
[INFO] [stdout]     |
[INFO] [stdout] 589 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:590:5
[INFO] [stdout]     |
[INFO] [stdout] 590 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:599:5
[INFO] [stdout]     |
[INFO] [stdout] 599 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:689:5
[INFO] [stdout]     |
[INFO] [stdout] 689 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:690:5
[INFO] [stdout]     |
[INFO] [stdout] 690 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:701:5
[INFO] [stdout]     |
[INFO] [stdout] 701 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:702:5
[INFO] [stdout]     |
[INFO] [stdout] 702 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:757:5
[INFO] [stdout]     |
[INFO] [stdout] 757 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:758:5
[INFO] [stdout]     |
[INFO] [stdout] 758 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:769:5
[INFO] [stdout]     |
[INFO] [stdout] 769 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:770:5
[INFO] [stdout]     |
[INFO] [stdout] 770 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/cpu/opcode.rs:918:27
[INFO] [stdout]     |
[INFO] [stdout] 918 |     let page_crossed = if let operend = AddressingMode::NoneAddressing {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:918:31
[INFO] [stdout]     |
[INFO] [stdout] 918 |     let page_crossed = if let operend = AddressingMode::NoneAddressing {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:963:5
[INFO] [stdout]     |
[INFO] [stdout] 963 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:972:5
[INFO] [stdout]     |
[INFO] [stdout] 972 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:981:5
[INFO] [stdout]     |
[INFO] [stdout] 981 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:992:5
[INFO] [stdout]     |
[INFO] [stdout] 992 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1066:5
[INFO] [stdout]      |
[INFO] [stdout] 1066 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1076:5
[INFO] [stdout]      |
[INFO] [stdout] 1076 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1112:5
[INFO] [stdout]      |
[INFO] [stdout] 1112 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1113:5
[INFO] [stdout]      |
[INFO] [stdout] 1113 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1121:5
[INFO] [stdout]      |
[INFO] [stdout] 1121 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1122:5
[INFO] [stdout]      |
[INFO] [stdout] 1122 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1130:5
[INFO] [stdout]      |
[INFO] [stdout] 1130 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1131:5
[INFO] [stdout]      |
[INFO] [stdout] 1131 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `page_crossed`
[INFO] [stdout]     --> src/cpu/opcode.rs:1161:15
[INFO] [stdout]      |
[INFO] [stdout] 1161 |     let (ptr, page_crossed) = operend.fetch_addr(cpu, mmu);
[INFO] [stdout]      |               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_page_crossed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `page_crossed`
[INFO] [stdout]     --> src/cpu/opcode.rs:1176:15
[INFO] [stdout]      |
[INFO] [stdout] 1176 |     let (ptr, page_crossed) = operend.fetch_addr(cpu, mmu);
[INFO] [stdout]      |               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_page_crossed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1188:5
[INFO] [stdout]      |
[INFO] [stdout] 1188 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1189:5
[INFO] [stdout]      |
[INFO] [stdout] 1189 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1199:5
[INFO] [stdout]      |
[INFO] [stdout] 1199 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1200:5
[INFO] [stdout]      |
[INFO] [stdout] 1200 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1210:5
[INFO] [stdout]      |
[INFO] [stdout] 1210 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1211:5
[INFO] [stdout]      |
[INFO] [stdout] 1211 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1221:5
[INFO] [stdout]      |
[INFO] [stdout] 1221 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1222:5
[INFO] [stdout]      |
[INFO] [stdout] 1222 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1232:5
[INFO] [stdout]      |
[INFO] [stdout] 1232 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1233:5
[INFO] [stdout]      |
[INFO] [stdout] 1233 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1241:5
[INFO] [stdout]      |
[INFO] [stdout] 1241 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1242:5
[INFO] [stdout]      |
[INFO] [stdout] 1242 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1251:5
[INFO] [stdout]      |
[INFO] [stdout] 1251 |     cpu: &mut Cpu2A03,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1252:5
[INFO] [stdout]      |
[INFO] [stdout] 1252 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1253:5
[INFO] [stdout]      |
[INFO] [stdout] 1253 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]     Checking symphonia-format-ogg v0.5.4
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/ppu/mod.rs:480:24
[INFO] [stdout]     |
[INFO] [stdout] 480 |     fn read(&mut self, mmu: &MemoryBus, address: u16) -> MemoryRead {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rom` is never read
[INFO] [stdout]   --> src/lib.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct Nes {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     rom: Device<Rom>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `log` is never used
[INFO] [stdout]    --> src/lib.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout]  47 | impl Nes {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 127 |     fn log(&mut self, instruction: &Instruction) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `value` is never used
[INFO] [stdout]    --> src/apu/util.rs:249:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | impl Sequence {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn value(&self) -> u8 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rom` is never constructed
[INFO] [stdout]   --> src/cartridge/mmc1.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Rom {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/cartridge/mmc1.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Rom {
[INFO] [stdout]    | -------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `trainer` and `mirroring` are never read
[INFO] [stdout]   --> src/cartridge/nrom.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Rom {
[INFO] [stdout]    |            --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub trainer: Vec<u8>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 14 |     pub prg_ram: Vec<u8>,
[INFO] [stdout] 15 |     pub mirroring: Mirroring,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `trainer` and `mirroring` are never read
[INFO] [stdout]   --> src/cartridge/uxrom.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Rom {
[INFO] [stdout]    |            --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub trainer: Vec<u8>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 15 |     pub prg_ram: Vec<u8>,
[INFO] [stdout] 16 |     pub mirroring: Mirroring,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instruction` is never constructed
[INFO] [stdout]   --> src/cpu/mod.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct Instruction {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/cpu/mod.rs:141:18
[INFO] [stdout]     |
[INFO] [stdout] 140 | impl Instruction {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] 141 |     pub const fn new(
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `decode` is never used
[INFO] [stdout]   --> src/cpu/opcode.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl OpCode {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn decode(&self, opcode: u8, cpu: &Cpu2A03) -> Instruction {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `mediate` is never used
[INFO] [stdout]   --> src/device.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl<T> Device<T> {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn mediate(inner: T) -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_word` is never used
[INFO] [stdout]   --> src/memory.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub trait Bus {
[INFO] [stdout]    |           --- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 12 |     fn write_word(&mut self, address: u16, value: u16) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `dma_enable`, `cycle`, and `scanline` are never used
[INFO] [stdout]    --> src/ppu/mod.rs:433:12
[INFO] [stdout]     |
[INFO] [stdout]  83 | impl Ppu {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 433 |     pub fn dma_enable(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 470 |     pub fn cycle(&self) -> usize {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 474 |     pub fn scanline(&self) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set` is never used
[INFO] [stdout]   --> src/ppu/addr.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout]  6 | impl AddressRegister {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub fn set(&mut self, data: u16) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `master_slave_select` is never used
[INFO] [stdout]   --> src/ppu/control.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl ControllRegister {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn master_slave_select(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update`, `bus`, `sprite_overflow`, and `sprite_0_hit` are never used
[INFO] [stdout]   --> src/ppu/status.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl StatusRegister {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  8 |     pub fn update(&mut self, data: u8) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn bus(&self) -> u8 {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn sprite_overflow(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn sprite_0_hit(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking alsa v0.9.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.5
[INFO] [stderr]     Checking numeric-array v0.5.2
[INFO] [stderr]     Checking primal-check v0.3.3
[INFO] [stderr]     Checking transpose v0.2.3
[INFO] [stderr]     Checking symphonia v0.5.4
[INFO] [stderr]     Checking tempfile v3.10.1
[INFO] [stderr]     Checking wayland-commons v0.29.5
[INFO] [stderr]     Checking cpal v0.15.3
[INFO] [stderr]     Checking wayland-cursor v0.29.5
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]     Checking pin-project v1.1.5
[INFO] [stderr]     Checking thingbuf v0.1.6
[INFO] [stderr]     Checking realfft v3.3.0
[INFO] [stderr]     Checking fundsp v0.17.1
[INFO] [stdout] warning: unused import: `Stream`
[INFO] [stdout]  --> examples/pc/hardware.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 |     FromSample, SizedSample, Stream,
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rustynes::Rom`
[INFO] [stdout]  --> examples/pc/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rustynes::Rom;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ch4_fr`
[INFO] [stdout]    --> examples/pc/hardware.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     ch4_fr: Shared<f64>,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_ch4_fr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ch4_fr` and `ch4_vo` are never read
[INFO] [stdout]   --> examples/pc/hardware.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Hardware {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     ch4_fr: Shared<f64>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 34 |     ch4_vo: Shared<f64>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::cartrige`
[INFO] [stdout]    --> src/memory.rs:105:16
[INFO] [stdout]     |
[INFO] [stdout] 105 |     use crate::cartrige::Mirroring;
[INFO] [stdout]     |                ^^^^^^^^ could not find `cartrige` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `vec` in this scope
[INFO] [stdout]    --> src/ppu/mod.rs:690:32
[INFO] [stdout]     |
[INFO] [stdout] 690 |         let mut ppu = Ppu::new(vec![0; 2048], Mirroring::Vertical);
[INFO] [stdout]     |                                ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro `crate::memory::test::vec` exists but is inaccessible
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout] 602 +     use alloc::vec;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/apu/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/apu/noise.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::CPU_CLOCK`
[INFO] [stdout]  --> src/apu/noise.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::CPU_CLOCK;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/apu/pulse.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/pulse.rs:53:38
[INFO] [stdout]    |
[INFO] [stdout] 53 |         self.sequence.set_timer_high((value & 0b0000_0111));
[INFO] [stdout]    |                                      ^                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 53 -         self.sequence.set_timer_high((value & 0b0000_0111));
[INFO] [stdout] 53 +         self.sequence.set_timer_high(value & 0b0000_0111 );
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/apu/triangle.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/cartridge/uxrom.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/cartridge/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `libc_print` and `libc_println`
[INFO] [stdout]  --> src/cpu/mod.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use libc_print::{libc_print, libc_println};
[INFO] [stdout]   |                  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/joypad.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/memory.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc_print::libc_println`
[INFO] [stdout]  --> src/ppu/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc_print::libc_println;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::vec::Vec`
[INFO] [stdout]  --> src/ppu/frame.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use alloc::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `exclusive_range_pattern` has been stable since 1.80.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(exclusive_range_pattern)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 3 arguments were supplied
[INFO] [stdout]    --> src/memory.rs:122:31
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let ppu = Device::new(Ppu::new(vec![0; 0x2000], Mirroring::Horizontal, false));
[INFO] [stdout]     |                               ^^^^^^^^                                         ----- unexpected argument #3 of type `bool`
[INFO] [stdout]     |
[INFO] [stdout] note: expected `DevHandler<Rom>`, found `Vec<{integer}>`
[INFO] [stdout]    --> src/memory.rs:122:40
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let ppu = Device::new(Ppu::new(vec![0; 0x2000], Mirroring::Horizontal, false));
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected struct `DevHandler<cartridge::Rom>`
[INFO] [stdout]                found struct `Vec<{integer}>`
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/ppu/mod.rs:89:12
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |            ^^^ --------------------
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 122 -         let ppu = Device::new(Ppu::new(vec![0; 0x2000], Mirroring::Horizontal, false));
[INFO] [stdout] 122 +         let ppu = Device::new(Ppu::new(/* DevHandler<cartridge::Rom> */, Mirroring::Horizontal));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:608:28
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 608 |         let mut ppu = Ppu::new_empty_rom();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:618:28
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 618 |         let mut ppu = Ppu::new_empty_rom();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:632:28
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 632 |         let mut ppu = Ppu::new_empty_rom();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:647:28
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 647 |         let mut ppu = Ppu::new_empty_rom();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:664:28
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 664 |         let mut ppu = Ppu::new_empty_rom();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:717:28
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 717 |         let mut ppu = Ppu::new_empty_rom();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:738:28
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 738 |         let mut ppu = Ppu::new_empty_rom();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:751:28
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 751 |         let mut ppu = Ppu::new_empty_rom();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_empty_rom` found for struct `ppu::Ppu` in the current scope
[INFO] [stdout]    --> src/ppu/mod.rs:764:36
[INFO] [stdout]     |
[INFO] [stdout]  40 | pub struct Ppu {
[INFO] [stdout]     | -------------- function or associated item `new_empty_rom` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 764 |         let ppu = Device::new(Ppu::new_empty_rom());
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^ function or associated item not found in `ppu::Ppu`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `ppu::Ppu`, consider using `ppu::Ppu::new` which returns `ppu::Ppu`
[INFO] [stdout]    --> src/ppu/mod.rs:89:5
[INFO] [stdout]     |
[INFO] [stdout]  89 |     pub fn new(rom: DevHandler<Rom>, mirroring: Mirroring) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/apu/mod.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |     fn read(&mut self, mmu: &MemoryBus, address: u16) -> MemoryRead {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/apu/mod.rs:185:25
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn write(&mut self, mmu: &MemoryBus, address: u16, value: u8) -> MemoryWrite {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cartridge/mod.rs:151:24
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn read(&mut self, mmu: &MemoryBus, address: u16) -> MemoryRead {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cartridge/mod.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn write(&mut self, mmu: &MemoryBus, address: u16, value: u8) -> MemoryWrite {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:522:5
[INFO] [stdout]     |
[INFO] [stdout] 522 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:571:5
[INFO] [stdout]     |
[INFO] [stdout] 571 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:572:5
[INFO] [stdout]     |
[INFO] [stdout] 572 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:580:5
[INFO] [stdout]     |
[INFO] [stdout] 580 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:581:5
[INFO] [stdout]     |
[INFO] [stdout] 581 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:589:5
[INFO] [stdout]     |
[INFO] [stdout] 589 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:590:5
[INFO] [stdout]     |
[INFO] [stdout] 590 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:599:5
[INFO] [stdout]     |
[INFO] [stdout] 599 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:689:5
[INFO] [stdout]     |
[INFO] [stdout] 689 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:690:5
[INFO] [stdout]     |
[INFO] [stdout] 690 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:701:5
[INFO] [stdout]     |
[INFO] [stdout] 701 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:702:5
[INFO] [stdout]     |
[INFO] [stdout] 702 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:757:5
[INFO] [stdout]     |
[INFO] [stdout] 757 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:758:5
[INFO] [stdout]     |
[INFO] [stdout] 758 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/cpu/opcode.rs:769:5
[INFO] [stdout]     |
[INFO] [stdout] 769 |     mmu: &mut MemoryBus,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:770:5
[INFO] [stdout]     |
[INFO] [stdout] 770 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/cpu/opcode.rs:918:27
[INFO] [stdout]     |
[INFO] [stdout] 918 |     let page_crossed = if let operend = AddressingMode::NoneAddressing {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:918:31
[INFO] [stdout]     |
[INFO] [stdout] 918 |     let page_crossed = if let operend = AddressingMode::NoneAddressing {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:963:5
[INFO] [stdout]     |
[INFO] [stdout] 963 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:972:5
[INFO] [stdout]     |
[INFO] [stdout] 972 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:981:5
[INFO] [stdout]     |
[INFO] [stdout] 981 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]    --> src/cpu/opcode.rs:992:5
[INFO] [stdout]     |
[INFO] [stdout] 992 |     operend: AddressingMode,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1066:5
[INFO] [stdout]      |
[INFO] [stdout] 1066 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1076:5
[INFO] [stdout]      |
[INFO] [stdout] 1076 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1112:5
[INFO] [stdout]      |
[INFO] [stdout] 1112 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1113:5
[INFO] [stdout]      |
[INFO] [stdout] 1113 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1121:5
[INFO] [stdout]      |
[INFO] [stdout] 1121 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1122:5
[INFO] [stdout]      |
[INFO] [stdout] 1122 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1130:5
[INFO] [stdout]      |
[INFO] [stdout] 1130 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1131:5
[INFO] [stdout]      |
[INFO] [stdout] 1131 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `page_crossed`
[INFO] [stdout]     --> src/cpu/opcode.rs:1161:15
[INFO] [stdout]      |
[INFO] [stdout] 1161 |     let (ptr, page_crossed) = operend.fetch_addr(cpu, mmu);
[INFO] [stdout]      |               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_page_crossed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `page_crossed`
[INFO] [stdout]     --> src/cpu/opcode.rs:1176:15
[INFO] [stdout]      |
[INFO] [stdout] 1176 |     let (ptr, page_crossed) = operend.fetch_addr(cpu, mmu);
[INFO] [stdout]      |               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_page_crossed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1188:5
[INFO] [stdout]      |
[INFO] [stdout] 1188 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1189:5
[INFO] [stdout]      |
[INFO] [stdout] 1189 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1199:5
[INFO] [stdout]      |
[INFO] [stdout] 1199 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1200:5
[INFO] [stdout]      |
[INFO] [stdout] 1200 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1210:5
[INFO] [stdout]      |
[INFO] [stdout] 1210 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1211:5
[INFO] [stdout]      |
[INFO] [stdout] 1211 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1221:5
[INFO] [stdout]      |
[INFO] [stdout] 1221 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1222:5
[INFO] [stdout]      |
[INFO] [stdout] 1222 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1232:5
[INFO] [stdout]      |
[INFO] [stdout] 1232 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1233:5
[INFO] [stdout]      |
[INFO] [stdout] 1233 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1241:5
[INFO] [stdout]      |
[INFO] [stdout] 1241 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1242:5
[INFO] [stdout]      |
[INFO] [stdout] 1242 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1251:5
[INFO] [stdout]      |
[INFO] [stdout] 1251 |     cpu: &mut Cpu2A03,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]     --> src/cpu/opcode.rs:1252:5
[INFO] [stdout]      |
[INFO] [stdout] 1252 |     mmu: &mut MemoryBus,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operend`
[INFO] [stdout]     --> src/cpu/opcode.rs:1253:5
[INFO] [stdout]      |
[INFO] [stdout] 1253 |     operend: AddressingMode,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmu`
[INFO] [stdout]    --> src/ppu/mod.rs:480:24
[INFO] [stdout]     |
[INFO] [stdout] 480 |     fn read(&mut self, mmu: &MemoryBus, address: u16) -> MemoryRead {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_mmu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustynes` (lib test) due to 12 previous errors; 67 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "b6b32aa8680bb1abb6d1d1c6c5522ca2573d0cb9679e7613f611fe5111b933f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b6b32aa8680bb1abb6d1d1c6c5522ca2573d0cb9679e7613f611fe5111b933f6", kill_on_drop: false }`
[INFO] [stdout] b6b32aa8680bb1abb6d1d1c6c5522ca2573d0cb9679e7613f611fe5111b933f6
