[INFO] cloning repository https://github.com/etnad101/Gameboy-Emulator
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/etnad101/Gameboy-Emulator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fetnad101%2FGameboy-Emulator", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fetnad101%2FGameboy-Emulator'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6bc1a122d1fcf76ae3a15d077e6649ebbf36ce5f
[INFO] testing etnad101/Gameboy-Emulator/6bc1a122d1fcf76ae3a15d077e6649ebbf36ce5f against nightly-2024-10-28+rustflags=-Zrandomize-layout for randomize-layout
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fetnad101%2FGameboy-Emulator" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/etnad101/Gameboy-Emulator on toolchain nightly-2024-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/etnad101/Gameboy-Emulator
[INFO] finished tweaking git repo https://github.com/etnad101/Gameboy-Emulator
[INFO] tweaked toml for git repo https://github.com/etnad101/Gameboy-Emulator written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/etnad101/Gameboy-Emulator 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" "+nightly-2024-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7885caff91d757e4bc797772894fef52b3068fd17e2b898d8a30f5a2ba579ce4
[INFO] running `Command { std: "docker" "start" "-a" "7885caff91d757e4bc797772894fef52b3068fd17e2b898d8a30f5a2ba579ce4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7885caff91d757e4bc797772894fef52b3068fd17e2b898d8a30f5a2ba579ce4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7885caff91d757e4bc797772894fef52b3068fd17e2b898d8a30f5a2ba579ce4", kill_on_drop: false }`
[INFO] [stdout] 7885caff91d757e4bc797772894fef52b3068fd17e2b898d8a30f5a2ba579ce4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b3dd6aad90a282cf9850b262e33dc309e3a7248b7700913da62f8f117d5fb77d
[INFO] running `Command { std: "docker" "start" "-a" "b3dd6aad90a282cf9850b262e33dc309e3a7248b7700913da62f8f117d5fb77d", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]    Compiling xml-rs v0.8.22
[INFO] [stderr]    Compiling libc v0.2.158
[INFO] [stderr]    Compiling once_cell v1.20.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling libloading v0.8.5
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling rustix v0.38.37
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling serde v1.0.210
[INFO] [stderr]    Compiling fastrand v2.1.1
[INFO] [stderr]    Compiling cty v0.2.2
[INFO] [stderr]    Compiling xcursor v0.3.8
[INFO] [stderr]    Compiling raw-window-handle v0.4.3
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling cc v1.1.19
[INFO] [stderr]    Compiling serde_json v1.0.128
[INFO] [stderr]    Compiling iana-time-zone v0.1.60
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling syn v2.0.77
[INFO] [stderr]    Compiling minifb v0.25.0
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling tempfile v3.12.0
[INFO] [stderr]    Compiling wayland-commons v0.29.5
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]    Compiling wayland-cursor v0.29.5
[INFO] [stderr]    Compiling simple_graphics v0.1.0 (https://github.com/etnad101/simple-graphics-rs#2d8d2b2f)
[INFO] [stderr]    Compiling gameboy-emulator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `borrow::BorrowMut`
[INFO] [stdout]  --> src/emulator/debugger.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{borrow::BorrowMut, cell::RefCell, collections::VecDeque, fs, path::Path, rc::Rc};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BLACK`
[INFO] [stdout]  --> src/emulator/ppu.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | use simple_graphics::display::{Color, BLACK, WHITE};
[INFO] [stdout]   |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mem`
[INFO] [stdout]   --> src/main.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::{error::Error, mem};
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debugger::DebugFlags`
[INFO] [stdout]   --> src/main.rs:18:38
[INFO] [stdout]    |
[INFO] [stdout] 18 | use emulator::{cartridge::Cartridge, debugger::DebugFlags, Emulator};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fonts::Font`
[INFO] [stdout]   --> src/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fonts::Font,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `MBC` is more private than the item `Cartridge::mbc`
[INFO] [stdout]    --> src/emulator/cartridge.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn mbc(&self) -> Option<MBC> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Cartridge::mbc` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `MBC` is only usable at visibility `pub(emulator)`
[INFO] [stdout]    --> src/emulator/cartridge.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout] 4   | pub(super) enum MBC {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GREEN_PALETTE` is never used
[INFO] [stdout]   --> src/main.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | const GREEN_PALETTE: Palette = (0x009BBC0F, 0x008BAC0F, 0x00306230, 0x000F380F);
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `STAT`, `LYC`, `DMA`, `BGP`, `OBP0`, and `OBP1` are never constructed
[INFO] [stdout]   --> src/emulator/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum LCDRegister {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 29 |     LCDC = 0xFF40,
[INFO] [stdout] 30 |     STAT = 0xff41,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     LYC = 0xff45,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 35 |     DMA = 0xff46,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 36 |     BGP = 0xff47,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 37 |     OBP0 = 0xff48,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 38 |     OBP1 = 0xff49,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TIMA`, `TMA`, and `TAC` are never constructed
[INFO] [stdout]   --> src/emulator/mod.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | enum Timer {
[INFO] [stdout]    |      ----- variants in this enum
[INFO] [stdout] 42 |     DIV = 0xFF04,
[INFO] [stdout] 43 |     TIMA = 0xFF05,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 44 |     TMA = 0xFF06,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 45 |     TAC = 0xFF07,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `paused` is never read
[INFO] [stdout]   --> src/emulator/mod.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Emulator<'a> {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 56 |     paused: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `do_interrupts` is never used
[INFO] [stdout]    --> src/emulator/mod.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 59  | impl<'a> Emulator<'a> {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 112 |     fn do_interrupts(&self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `activate` and `deactivate` are never used
[INFO] [stdout]    --> src/emulator/debugger.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 76  | impl<'a> Debugger<'a> {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn activate(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn deactivate(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `IntentionalCrash` and `OpcodeError` are never constructed
[INFO] [stdout]   --> src/emulator/errors.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum CpuError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 22 |     IntentionalCrash,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     OpcodeError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CpuError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ram_banks` is never read
[INFO] [stdout]   --> src/emulator/memory.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub struct MemoryBus {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     ram_banks: Vec<Vec<u8>>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]   --> src/emulator/memory.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl MemoryBus {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Sleep` is never constructed
[INFO] [stdout]   --> src/emulator/ppu.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum FetcherMode {
[INFO] [stdout]    |      ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 24 |     Sleep,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]   --> src/emulator/ppu.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Fifo {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `debugger` and `object_fifo` are never read
[INFO] [stdout]   --> src/emulator/ppu.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Ppu<'a> {
[INFO] [stdout]    |            --- fields in this struct
[INFO] [stdout] 63 |     memory: Rc<RefCell<MemoryBus>>,
[INFO] [stdout] 64 |     debugger: Rc<RefCell<Debugger<'a>>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     object_fifo: Fifo,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MBC7` and `M161` are never constructed
[INFO] [stdout]   --> src/emulator/cartridge.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub(super) enum MBC {
[INFO] [stdout]    |                 --- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |     MBC7,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     MMM01,
[INFO] [stdout] 12 |     M161,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MBC` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title`, `ram`, `battery`, and `timer` are never read
[INFO] [stdout]   --> src/emulator/cartridge.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Cartridge {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 18 |     bytes: Vec<u8>,
[INFO] [stdout] 19 |     title: String,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     ram: bool,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     battery: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     timer: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/emulator/test/mod.rs:5:9
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub struct State {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 5  |     pub a: u8,
[INFO] [stdout]    |         ^
[INFO] [stdout] 6  |     pub b: u8,
[INFO] [stdout]    |         ^
[INFO] [stdout] 7  |     pub c: u8,
[INFO] [stdout]    |         ^
[INFO] [stdout] 8  |     pub d: u8,
[INFO] [stdout]    |         ^
[INFO] [stdout] 9  |     pub e: u8,
[INFO] [stdout]    |         ^
[INFO] [stdout] 10 |     pub f: u8,
[INFO] [stdout]    |         ^
[INFO] [stdout] 11 |     pub h: u8,
[INFO] [stdout]    |         ^
[INFO] [stdout] 12 |     pub l: u8,
[INFO] [stdout]    |         ^
[INFO] [stdout] 13 |     pub pc: u16,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 14 |     pub sp: u16,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 15 |     pub ram: Vec<Vec<u16>>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `State` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `initial`, and `final_name` are never read
[INFO] [stdout]   --> src/emulator/test/mod.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct TestData {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 20 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 21 |     pub initial: State,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 22 |     #[serde(rename = "final")]
[INFO] [stdout] 23 |     pub final_name: State,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TestData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 39.21s
[INFO] running `Command { std: "docker" "inspect" "b3dd6aad90a282cf9850b262e33dc309e3a7248b7700913da62f8f117d5fb77d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b3dd6aad90a282cf9850b262e33dc309e3a7248b7700913da62f8f117d5fb77d", kill_on_drop: false }`
[INFO] [stdout] b3dd6aad90a282cf9850b262e33dc309e3a7248b7700913da62f8f117d5fb77d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4b5d38d06e11f91db371e8ddb8a70ca787015c1feea8a11458aea40f8bb5f0e0
[INFO] running `Command { std: "docker" "start" "-a" "4b5d38d06e11f91db371e8ddb8a70ca787015c1feea8a11458aea40f8bb5f0e0", kill_on_drop: false }`
[INFO] [stderr]    Compiling gameboy-emulator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `borrow::BorrowMut`
[INFO] [stdout]  --> src/emulator/debugger.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{borrow::BorrowMut, cell::RefCell, collections::VecDeque, fs, path::Path, rc::Rc};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BLACK`
[INFO] [stdout]  --> src/emulator/ppu.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | use simple_graphics::display::{Color, BLACK, WHITE};
[INFO] [stdout]   |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mem`
[INFO] [stdout]   --> src/main.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::{error::Error, mem};
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debugger::DebugFlags`
[INFO] [stdout]   --> src/main.rs:18:38
[INFO] [stdout]    |
[INFO] [stdout] 18 | use emulator::{cartridge::Cartridge, debugger::DebugFlags, Emulator};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fonts::Font`
[INFO] [stdout]   --> src/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fonts::Font,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `MBC` is more private than the item `Cartridge::mbc`
[INFO] [stdout]    --> src/emulator/cartridge.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn mbc(&self) -> Option<MBC> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Cartridge::mbc` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `MBC` is only usable at visibility `pub(emulator)`
[INFO] [stdout]    --> src/emulator/cartridge.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout] 4   | pub(super) enum MBC {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GREEN_PALETTE` is never used
[INFO] [stdout]   --> src/main.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | const GREEN_PALETTE: Palette = (0x009BBC0F, 0x008BAC0F, 0x00306230, 0x000F380F);
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `STAT`, `LYC`, `DMA`, `BGP`, `OBP0`, and `OBP1` are never constructed
[INFO] [stdout]   --> src/emulator/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum LCDRegister {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 29 |     LCDC = 0xFF40,
[INFO] [stdout] 30 |     STAT = 0xff41,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     LYC = 0xff45,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 35 |     DMA = 0xff46,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 36 |     BGP = 0xff47,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 37 |     OBP0 = 0xff48,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 38 |     OBP1 = 0xff49,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TIMA`, `TMA`, and `TAC` are never constructed
[INFO] [stdout]   --> src/emulator/mod.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | enum Timer {
[INFO] [stdout]    |      ----- variants in this enum
[INFO] [stdout] 42 |     DIV = 0xFF04,
[INFO] [stdout] 43 |     TIMA = 0xFF05,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 44 |     TMA = 0xFF06,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 45 |     TAC = 0xFF07,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `paused` is never read
[INFO] [stdout]   --> src/emulator/mod.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Emulator<'a> {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 56 |     paused: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `do_interrupts` is never used
[INFO] [stdout]    --> src/emulator/mod.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 59  | impl<'a> Emulator<'a> {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 112 |     fn do_interrupts(&self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `activate` and `deactivate` are never used
[INFO] [stdout]    --> src/emulator/debugger.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 76  | impl<'a> Debugger<'a> {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn activate(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn deactivate(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `IntentionalCrash` and `OpcodeError` are never constructed
[INFO] [stdout]   --> src/emulator/errors.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum CpuError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 22 |     IntentionalCrash,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     OpcodeError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CpuError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Sleep` is never constructed
[INFO] [stdout]   --> src/emulator/ppu.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum FetcherMode {
[INFO] [stdout]    |      ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 24 |     Sleep,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]   --> src/emulator/ppu.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Fifo {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `debugger` and `object_fifo` are never read
[INFO] [stdout]   --> src/emulator/ppu.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Ppu<'a> {
[INFO] [stdout]    |            --- fields in this struct
[INFO] [stdout] 63 |     memory: Rc<RefCell<MemoryBus>>,
[INFO] [stdout] 64 |     debugger: Rc<RefCell<Debugger<'a>>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     object_fifo: Fifo,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MBC7` and `M161` are never constructed
[INFO] [stdout]   --> src/emulator/cartridge.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub(super) enum MBC {
[INFO] [stdout]    |                 --- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |     MBC7,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     MMM01,
[INFO] [stdout] 12 |     M161,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MBC` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title`, `ram`, `battery`, and `timer` are never read
[INFO] [stdout]   --> src/emulator/cartridge.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Cartridge {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 18 |     bytes: Vec<u8>,
[INFO] [stdout] 19 |     title: String,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     ram: bool,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     battery: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     timer: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.70s
[INFO] running `Command { std: "docker" "inspect" "4b5d38d06e11f91db371e8ddb8a70ca787015c1feea8a11458aea40f8bb5f0e0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4b5d38d06e11f91db371e8ddb8a70ca787015c1feea8a11458aea40f8bb5f0e0", kill_on_drop: false }`
[INFO] [stdout] 4b5d38d06e11f91db371e8ddb8a70ca787015c1feea8a11458aea40f8bb5f0e0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a7950ea873bd6e858c69898646d5422948f9faf0f253b3b6084d81cd6f5cde9d
[INFO] running `Command { std: "docker" "start" "-a" "a7950ea873bd6e858c69898646d5422948f9faf0f253b3b6084d81cd6f5cde9d", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `borrow::BorrowMut`
[INFO] [stderr]  --> src/emulator/debugger.rs:2:11
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::{borrow::BorrowMut, cell::RefCell, collections::VecDeque, fs, path::Path, rc::Rc};
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BLACK`
[INFO] [stderr]  --> src/emulator/ppu.rs:9:39
[INFO] [stderr]   |
[INFO] [stderr] 9 | use simple_graphics::display::{Color, BLACK, WHITE};
[INFO] [stderr]   |                                       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `mem`
[INFO] [stderr]   --> src/main.rs:16:25
[INFO] [stderr]    |
[INFO] [stderr] 16 | use std::{error::Error, mem};
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debugger::DebugFlags`
[INFO] [stderr]   --> src/main.rs:18:38
[INFO] [stderr]    |
[INFO] [stderr] 18 | use emulator::{cartridge::Cartridge, debugger::DebugFlags, Emulator};
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fonts::Font`
[INFO] [stderr]   --> src/main.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     fonts::Font,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type `MBC` is more private than the item `Cartridge::mbc`
[INFO] [stderr]    --> src/emulator/cartridge.rs:100:5
[INFO] [stderr]     |
[INFO] [stderr] 100 |     pub fn mbc(&self) -> Option<MBC> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Cartridge::mbc` is reachable at visibility `pub(crate)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `MBC` is only usable at visibility `pub(emulator)`
[INFO] [stderr]    --> src/emulator/cartridge.rs:4:1
[INFO] [stderr]     |
[INFO] [stderr] 4   | pub(super) enum MBC {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `GREEN_PALETTE` is never used
[INFO] [stderr]   --> src/main.rs:29:7
[INFO] [stderr]    |
[INFO] [stderr] 29 | const GREEN_PALETTE: Palette = (0x009BBC0F, 0x008BAC0F, 0x00306230, 0x000F380F);
[INFO] [stderr]    |       ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variants `STAT`, `LYC`, `DMA`, `BGP`, `OBP0`, and `OBP1` are never constructed
[INFO] [stderr]   --> src/emulator/mod.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 28 | pub enum LCDRegister {
[INFO] [stderr]    |          ----------- variants in this enum
[INFO] [stderr] 29 |     LCDC = 0xFF40,
[INFO] [stderr] 30 |     STAT = 0xff41,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 34 |     LYC = 0xff45,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 35 |     DMA = 0xff46,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 36 |     BGP = 0xff47,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 37 |     OBP0 = 0xff48,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 38 |     OBP1 = 0xff49,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `TIMA`, `TMA`, and `TAC` are never constructed
[INFO] [stderr]   --> src/emulator/mod.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 41 | enum Timer {
[INFO] [stderr]    |      ----- variants in this enum
[INFO] [stderr] 42 |     DIV = 0xFF04,
[INFO] [stderr] 43 |     TIMA = 0xFF05,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 44 |     TMA = 0xFF06,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 45 |     TAC = 0xFF07,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `paused` is never read
[INFO] [stderr]   --> src/emulator/mod.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub struct Emulator<'a> {
[INFO] [stderr]    |            -------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 56 |     paused: bool,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `do_interrupts` is never used
[INFO] [stderr]    --> src/emulator/mod.rs:112:8
[INFO] [stderr]     |
[INFO] [stderr] 59  | impl<'a> Emulator<'a> {
[INFO] [stderr]     | --------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 112 |     fn do_interrupts(&self) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `activate` and `deactivate` are never used
[INFO] [stderr]    --> src/emulator/debugger.rs:100:12
[INFO] [stderr]     |
[INFO] [stderr] 76  | impl<'a> Debugger<'a> {
[INFO] [stderr]     | --------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 100 |     pub fn activate(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 104 |     pub fn deactivate(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `IntentionalCrash` and `OpcodeError` are never constructed
[INFO] [stderr]   --> src/emulator/errors.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub enum CpuError {
[INFO] [stderr]    |          -------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 22 |     IntentionalCrash,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 23 |     OpcodeError(String),
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CpuError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Sleep` is never constructed
[INFO] [stderr]   --> src/emulator/ppu.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | enum FetcherMode {
[INFO] [stderr]    |      ----------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 24 |     Sleep,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `clear` is never used
[INFO] [stderr]   --> src/emulator/ppu.rs:57:12
[INFO] [stderr]    |
[INFO] [stderr] 33 | impl Fifo {
[INFO] [stderr]    | --------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 57 |     pub fn clear(&mut self) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `debugger` and `object_fifo` are never read
[INFO] [stderr]   --> src/emulator/ppu.rs:64:5
[INFO] [stderr]    |
[INFO] [stderr] 62 | pub struct Ppu<'a> {
[INFO] [stderr]    |            --- fields in this struct
[INFO] [stderr] 63 |     memory: Rc<RefCell<MemoryBus>>,
[INFO] [stderr] 64 |     debugger: Rc<RefCell<Debugger<'a>>>,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 76 |     object_fifo: Fifo,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `MBC7` and `M161` are never constructed
[INFO] [stderr]   --> src/emulator/cartridge.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 4  | pub(super) enum MBC {
[INFO] [stderr]    |                 --- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 10 |     MBC7,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 11 |     MMM01,
[INFO] [stderr] 12 |     M161,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MBC` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `title`, `ram`, `battery`, and `timer` are never read
[INFO] [stderr]   --> src/emulator/cartridge.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct Cartridge {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 18 |     bytes: Vec<u8>,
[INFO] [stderr] 19 |     title: String,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 22 |     ram: bool,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 23 |     battery: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 24 |     timer: bool,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `gameboy-emulator` (bin "gameboy-emulator" test) generated 18 warnings (run `cargo fix --bin "gameboy-emulator" --tests` to apply 5 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/gameboy_emulator-0922782735a9bfbc)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::test_opcodes ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::test_opcodes stdout ----
[INFO] [stdout] ----------
[INFO] [stdout] Testing CB 1C 0000
[INFO] [stdout] thread 'tests::test_opcodes' panicked at src/emulator/memory.rs:179:18:
[INFO] [stdout] Tried writing to illegal address 27986
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x571f43e5f9ea - std::backtrace_rs::backtrace::libunwind::trace::h207520d6e9873551
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x571f43e5f9ea - std::backtrace_rs::backtrace::trace_unsynchronized::h2ed7433f370e3eca
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x571f43e5f9ea - std::sys::backtrace::_print_fmt::h916fac51166b18d7
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x571f43e5f9ea - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha0a4c9b8ce3802e6
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x571f43e86f13 - core::fmt::rt::Argument::fmt::h4cfc8587d52b3eb5
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x571f43e86f13 - core::fmt::write::h522cc39e5b36ae9f
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/core/src/fmt/mod.rs:1190:21
[INFO] [stdout]    6:     0x571f43e5c293 - std::io::Write::write_fmt::h7d3c26752da97734
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/io/mod.rs:1839:15
[INFO] [stdout]    7:     0x571f43e5f832 - std::sys::backtrace::BacktraceLock::print::h4b9e00b29e9c0942
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x571f43e60e7a - std::panicking::default_hook::{{closure}}::hb59b88280d0324d9
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x571f43e60c84 - std::panicking::default_hook::he1dd496665be4a29
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x571f43dea1d9 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h4ff71de18744e1dc
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   11:     0x571f43dea1d9 - test::test_main::{{closure}}::hcf7c055ce117aa81
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/test/src/lib.rs:133:21
[INFO] [stdout]   12:     0x571f43e61578 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h1d66c6bbd60c9692
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   13:     0x571f43e61578 - std::panicking::rust_panic_with_hook::h2ff17fe8f26dfcf8
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x571f43e6133a - std::panicking::begin_panic_handler::{{closure}}::h4fad77951c07e101
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:674:13
[INFO] [stdout]   15:     0x571f43e5fec9 - std::sys::backtrace::__rust_end_short_backtrace::hb1a25b3da5d0ea08
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x571f43e60fcc - rust_begin_unwind
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x571f43e85910 - core::panicking::panic_fmt::ha9db07b529f9b256
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/core/src/panicking.rs:75:14
[INFO] [stdout]   18:     0x571f43d7cd15 - gameboy_emulator::emulator::memory::MemoryBus::write_u8::hc99edccce48ab1ff
[INFO] [stdout]                                at /opt/rustwide/workdir/src/emulator/memory.rs:179:18
[INFO] [stdout]   19:     0x571f43d7d9ed - gameboy_emulator::emulator::Emulator::_load_state::he29345efe11967dc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/emulator/mod.rs:155:13
[INFO] [stdout]   20:     0x571f43d81bef - gameboy_emulator::emulator::Emulator::_run_opcode_tests::ha8932efc68a0ba4d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/emulator/mod.rs:241:17
[INFO] [stdout]   21:     0x571f43d78e5c - gameboy_emulator::tests::test_opcodes::hdc3847a875924fa1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/main.rs:104:17
[INFO] [stdout]   22:     0x571f43d78d97 - gameboy_emulator::tests::test_opcodes::{{closure}}::hbb983488c2ea41af
[INFO] [stdout]                                at /opt/rustwide/workdir/src/main.rs:102:22
[INFO] [stdout]   23:     0x571f43d8b096 - core::ops::function::FnOnce::call_once::h600b899d5ae8bb52
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x571f43deeaab - core::ops::function::FnOnce::call_once::h22c3ba5715e93f05
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x571f43deeaab - test::__rust_begin_short_backtrace::h8e82d8113d0da17f
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/test/src/lib.rs:621:18
[INFO] [stdout]   26:     0x571f43dee427 - test::run_test_in_process::{{closure}}::h33235f4f20b7b7c7
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/test/src/lib.rs:644:60
[INFO] [stdout]   27:     0x571f43dee427 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb5043206310c586f
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x571f43dee427 - std::panicking::try::do_call::h9ad4731a60ab23e2
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:557:40
[INFO] [stdout]   29:     0x571f43dee427 - std::panicking::try::h3824d23db772a716
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:520:19
[INFO] [stdout]   30:     0x571f43dee427 - std::panic::catch_unwind::h5afd514605fde46b
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panic.rs:358:14
[INFO] [stdout]   31:     0x571f43dee427 - test::run_test_in_process::h0d5cbfa7067d1720
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/test/src/lib.rs:644:27
[INFO] [stdout]   32:     0x571f43dee427 - test::run_test::{{closure}}::h708eb8872708115d
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/test/src/lib.rs:565:43
[INFO] [stdout]   33:     0x571f43db1b44 - test::run_test::{{closure}}::h392c51cee94713ab
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/test/src/lib.rs:595:41
[INFO] [stdout]   34:     0x571f43db1b44 - std::sys::backtrace::__rust_begin_short_backtrace::h2f40290710935a8b
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   35:     0x571f43db52ee - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h3fd968d89053a903
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/thread/mod.rs:541:17
[INFO] [stdout]   36:     0x571f43db52ee - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h743f637ba4229880
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x571f43db52ee - std::panicking::try::do_call::h07440897322525a6
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:557:40
[INFO] [stdout]   38:     0x571f43db52ee - std::panicking::try::he5a2e00188156637
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panicking.rs:520:19
[INFO] [stdout]   39:     0x571f43db52ee - std::panic::catch_unwind::hbaf3cae49b3c6433
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/panic.rs:358:14
[INFO] [stdout]   40:     0x571f43db52ee - std::thread::Builder::spawn_unchecked_::{{closure}}::h8e141ea224820bce
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/thread/mod.rs:540:30
[INFO] [stdout]   41:     0x571f43db52ee - core::ops::function::FnOnce::call_once{{vtable.shim}}::h90d312fedd7b8ea8
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x571f43e65acb - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h69aa08ddb6adb8b6
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   43:     0x571f43e65acb - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h5aa36efdb79c806f
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   44:     0x571f43e65acb - std::sys::pal::unix::thread::Thread::new::thread_start::h6cd80a1b4be5158d
[INFO] [stdout]                                at /rustc/df4ca44d3fbc9301ee17f30f4d474e6ae4b05252/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   45:     0x7312c9ec6ac3 - <unknown>
[INFO] [stdout]   46:     0x7312c9f57a04 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::test_opcodes
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin gameboy-emulator`
[INFO] running `Command { std: "docker" "inspect" "a7950ea873bd6e858c69898646d5422948f9faf0f253b3b6084d81cd6f5cde9d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7950ea873bd6e858c69898646d5422948f9faf0f253b3b6084d81cd6f5cde9d", kill_on_drop: false }`
[INFO] [stdout] a7950ea873bd6e858c69898646d5422948f9faf0f253b3b6084d81cd6f5cde9d
