[INFO] cloning repository https://github.com/nopnoping/nes
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nopnoping/nes" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnopnoping%2Fnes", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnopnoping%2Fnes'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 56906058a4e706c99d4488fac371ccb3734e455e
[INFO] testing nopnoping/nes against beta-2025-09-21 for beta-1.91-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnopnoping%2Fnes" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nopnoping/nes
[INFO] finished tweaking git repo https://github.com/nopnoping/nes
[INFO] tweaked toml for git repo https://github.com/nopnoping/nes written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nopnoping/nes on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nopnoping/nes 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" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 00c511df18a5310bbf2f6e0357e61792b0558919bdf53df06d6fa25fee6eb2e8
[INFO] running `Command { std: "docker" "start" "-a" "00c511df18a5310bbf2f6e0357e61792b0558919bdf53df06d6fa25fee6eb2e8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "00c511df18a5310bbf2f6e0357e61792b0558919bdf53df06d6fa25fee6eb2e8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "00c511df18a5310bbf2f6e0357e61792b0558919bdf53df06d6fa25fee6eb2e8", kill_on_drop: false }`
[INFO] [stdout] 00c511df18a5310bbf2f6e0357e61792b0558919bdf53df06d6fa25fee6eb2e8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b03527a6d5f5877ccf74da6e20f8bb75f27de5171c8dec261488fc8fe1f82344
[INFO] running `Command { std: "docker" "start" "-a" "b03527a6d5f5877ccf74da6e20f8bb75f27de5171c8dec261488fc8fe1f82344", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling version-compare v0.0.10
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling sdl2 v0.34.5
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling sdl2-sys v0.34.5
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling nes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::arch::asm`
[INFO] [stdout]  --> src/cpu/trace.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/cpu/asm.rs:433:13
[INFO] [stdout]     |
[INFO] [stdout] 433 |             _ => {
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/cpu/asm.rs:433:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |             0x00 => ASM::BRK(OpCode::new(0x00, 1, 7, AddressingMode::NoneAddressing)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 124 |
[INFO] [stdout] 125 |             0xEA => ASM::NOP(OpCode::new(0xEA, 1, 2, AddressingMode::NoneAddressing)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 126 |
[INFO] [stdout] 127 |             0x69 => ASM::ADC(OpCode::new(0x69, 2, 2, AddressingMode::Immediate)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 128 |             0x65 => ASM::ADC(OpCode::new(0x65, 2, 3, AddressingMode::ZeroPage)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 433 |             _ => {
[INFO] [stdout]     |             ^ ...and 252 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:653:24
[INFO] [stdout]     |
[INFO] [stdout] 653 |     fn _tas(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:680:24
[INFO] [stdout]     |
[INFO] [stdout] 680 |     fn _shx(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:687:24
[INFO] [stdout]     |
[INFO] [stdout] 687 |     fn _shy(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROGRAM_START_PTR` is never used
[INFO] [stdout]   --> src/cpu.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const PROGRAM_START_PTR: u16 = 0xFFFC;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `itype` is never read
[INFO] [stdout]  --> src/cpu/interrupt.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Interrupt {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 7 |     pub itype: InterruptType,
[INFO] [stdout]   |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PPU_REGISTERS` is never used
[INFO] [stdout]   --> src/bus.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 | const PPU_REGISTERS: u16 = 0x2000;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `poll_nmi_interrupt` is never used
[INFO] [stdout]    --> src/ppu.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout]  51 | impl NesPPU {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     fn poll_nmi_interrupt(&mut self) -> Option<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_tile` is never used
[INFO] [stdout]  --> src/tiles.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn show_tile(chr_rom: &Vec<u8>, bank: usize, tile_n: usize) -> Frame {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_tile_bank` is never used
[INFO] [stdout]   --> src/tiles.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn show_tile_bank(chr_rom: &Vec<u8>, bank: usize) -> Frame {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/bin/play.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | use sdl2::pixels::{Color, PixelFormatEnum};
[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: `Mem`
[INFO] [stdout]  --> src/bin/play.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nes::bus::{Bus, Mem};
[INFO] [stdout]   |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/bin/play.rs:84:28
[INFO] [stdout]    |
[INFO] [stdout] 84 |     cpu.run_with_callback(|cpu| {
[INFO] [stdout]    |                            ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sdl2::EventPump`
[INFO] [stdout]  --> src/bin/pacman.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use sdl2::EventPump;
[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: `Color`
[INFO] [stdout]  --> src/bin/pacman.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sdl2::pixels::{Color, PixelFormatEnum};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mem`
[INFO] [stdout]  --> src/bin/pacman.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nes::bus::{Bus, Mem};
[INFO] [stdout]   |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.74s
[INFO] running `Command { std: "docker" "inspect" "b03527a6d5f5877ccf74da6e20f8bb75f27de5171c8dec261488fc8fe1f82344", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b03527a6d5f5877ccf74da6e20f8bb75f27de5171c8dec261488fc8fe1f82344", kill_on_drop: false }`
[INFO] [stdout] b03527a6d5f5877ccf74da6e20f8bb75f27de5171c8dec261488fc8fe1f82344
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0bd8e8cd936951cf7ae5edf9a0aeeb66d7bbd8a34862d3bc375153df764bd090
[INFO] running `Command { std: "docker" "start" "-a" "0bd8e8cd936951cf7ae5edf9a0aeeb66d7bbd8a34862d3bc375153df764bd090", kill_on_drop: false }`
[INFO] [stderr]    Compiling nes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::arch::asm`
[INFO] [stdout]  --> src/cpu/trace.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/cpu/asm.rs:433:13
[INFO] [stdout]     |
[INFO] [stdout] 433 |             _ => {
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/cpu/asm.rs:433:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |             0x00 => ASM::BRK(OpCode::new(0x00, 1, 7, AddressingMode::NoneAddressing)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 124 |
[INFO] [stdout] 125 |             0xEA => ASM::NOP(OpCode::new(0xEA, 1, 2, AddressingMode::NoneAddressing)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 126 |
[INFO] [stdout] 127 |             0x69 => ASM::ADC(OpCode::new(0x69, 2, 2, AddressingMode::Immediate)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 128 |             0x65 => ASM::ADC(OpCode::new(0x65, 2, 3, AddressingMode::ZeroPage)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 433 |             _ => {
[INFO] [stdout]     |             ^ ...and 252 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:653:24
[INFO] [stdout]     |
[INFO] [stdout] 653 |     fn _tas(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:680:24
[INFO] [stdout]     |
[INFO] [stdout] 680 |     fn _shx(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:687:24
[INFO] [stdout]     |
[INFO] [stdout] 687 |     fn _shy(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROGRAM_START_PTR` is never used
[INFO] [stdout]   --> src/cpu.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const PROGRAM_START_PTR: u16 = 0xFFFC;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `itype` is never read
[INFO] [stdout]  --> src/cpu/interrupt.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Interrupt {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 7 |     pub itype: InterruptType,
[INFO] [stdout]   |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PPU_REGISTERS` is never used
[INFO] [stdout]   --> src/bus.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 | const PPU_REGISTERS: u16 = 0x2000;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `poll_nmi_interrupt` is never used
[INFO] [stdout]    --> src/ppu.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout]  51 | impl NesPPU {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     fn poll_nmi_interrupt(&mut self) -> Option<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_tile` is never used
[INFO] [stdout]  --> src/tiles.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn show_tile(chr_rom: &Vec<u8>, bank: usize, tile_n: usize) -> Frame {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_tile_bank` is never used
[INFO] [stdout]   --> src/tiles.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn show_tile_bank(chr_rom: &Vec<u8>, bank: usize) -> Frame {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sdl2::EventPump`
[INFO] [stdout]  --> src/bin/pacman.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use sdl2::EventPump;
[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: `Color`
[INFO] [stdout]  --> src/bin/pacman.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sdl2::pixels::{Color, PixelFormatEnum};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mem`
[INFO] [stdout]  --> src/bin/pacman.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nes::bus::{Bus, Mem};
[INFO] [stdout]   |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/bin/play.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | use sdl2::pixels::{Color, PixelFormatEnum};
[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: `Mem`
[INFO] [stdout]  --> src/bin/play.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nes::bus::{Bus, Mem};
[INFO] [stdout]   |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/bin/play.rs:84:28
[INFO] [stdout]    |
[INFO] [stdout] 84 |     cpu.run_with_callback(|cpu| {
[INFO] [stdout]    |                            ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::arch::asm`
[INFO] [stdout]  --> src/cpu/trace.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> src/cpu/trace.rs:143:23
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let mut bus = Bus::new(test_rom());
[INFO] [stdout]     |                       ^^^^^^^^------------ argument #2 is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/bus.rs:15:12
[INFO] [stdout]     |
[INFO] [stdout]  15 |     pub fn new<F>(rom: Rom, gameloop_callback: F) -> Self
[INFO] [stdout]     |            ^^^              --------------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let mut bus = Bus::new(test_rom(), /* gameloop_callback */);
[INFO] [stdout]     |                                          +++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> src/cpu/trace.rs:175:23
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let mut bus = Bus::new(test_rom());
[INFO] [stdout]     |                       ^^^^^^^^------------ argument #2 is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/bus.rs:15:12
[INFO] [stdout]     |
[INFO] [stdout]  15 |     pub fn new<F>(rom: Rom, gameloop_callback: F) -> Self
[INFO] [stdout]     |            ^^^              --------------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let mut bus = Bus::new(test_rom(), /* gameloop_callback */);
[INFO] [stdout]     |                                          +++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/cpu/asm.rs:433:13
[INFO] [stdout]     |
[INFO] [stdout] 433 |             _ => {
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/cpu/asm.rs:433:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |             0x00 => ASM::BRK(OpCode::new(0x00, 1, 7, AddressingMode::NoneAddressing)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 124 |
[INFO] [stdout] 125 |             0xEA => ASM::NOP(OpCode::new(0xEA, 1, 2, AddressingMode::NoneAddressing)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 126 |
[INFO] [stdout] 127 |             0x69 => ASM::ADC(OpCode::new(0x69, 2, 2, AddressingMode::Immediate)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] 128 |             0x65 => ASM::ADC(OpCode::new(0x65, 2, 3, AddressingMode::ZeroPage)),
[INFO] [stdout]     |             ---- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 433 |             _ => {
[INFO] [stdout]     |             ^ ...and 252 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:653:24
[INFO] [stdout]     |
[INFO] [stdout] 653 |     fn _tas(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:680:24
[INFO] [stdout]     |
[INFO] [stdout] 680 |     fn _shx(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/cpu.rs:687:24
[INFO] [stdout]     |
[INFO] [stdout] 687 |     fn _shy(&mut self, mode: &AddressingMode) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nes` (lib test) due to 2 previous errors; 5 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "0bd8e8cd936951cf7ae5edf9a0aeeb66d7bbd8a34862d3bc375153df764bd090", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0bd8e8cd936951cf7ae5edf9a0aeeb66d7bbd8a34862d3bc375153df764bd090", kill_on_drop: false }`
[INFO] [stdout] 0bd8e8cd936951cf7ae5edf9a0aeeb66d7bbd8a34862d3bc375153df764bd090
