[INFO] cloning repository https://github.com/tetsugakusha256/Gameboyish
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tetsugakusha256/Gameboyish" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftetsugakusha256%2FGameboyish", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftetsugakusha256%2FGameboyish'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a550501fb8d07d770dfcffd617e06debe429cd1c
[INFO] testing tetsugakusha256/Gameboyish against beta-2026-01-20 for beta-1.94-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftetsugakusha256%2FGameboyish" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tetsugakusha256/Gameboyish
[INFO] finished tweaking git repo https://github.com/tetsugakusha256/Gameboyish
[INFO] tweaked toml for git repo https://github.com/tetsugakusha256/Gameboyish written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tetsugakusha256/Gameboyish on toolchain beta-2026-01-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tetsugakusha256/Gameboyish 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-2026-01-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 58cf624d1cd64805f47b96388944f97d590c93251aa3ffa57d9a8e7f55598ff4
[INFO] running `Command { std: "docker" "start" "-a" "58cf624d1cd64805f47b96388944f97d590c93251aa3ffa57d9a8e7f55598ff4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "58cf624d1cd64805f47b96388944f97d590c93251aa3ffa57d9a8e7f55598ff4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58cf624d1cd64805f47b96388944f97d590c93251aa3ffa57d9a8e7f55598ff4", kill_on_drop: false }`
[INFO] [stdout] 58cf624d1cd64805f47b96388944f97d590c93251aa3ffa57d9a8e7f55598ff4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 41bccff2eafc0115071f40c9743f9482f34dc835c01727bffc08b2fb62f78ca8
[INFO] running `Command { std: "docker" "start" "-a" "41bccff2eafc0115071f40c9743f9482f34dc835c01727bffc08b2fb62f78ca8", kill_on_drop: false }`
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling libc v0.2.150
[INFO] [stderr]    Compiling xml-rs v0.8.19
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling semver v1.0.20
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]    Compiling smallvec v1.11.2
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling libloading v0.8.1
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling downcast-rs v1.2.0
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling rustix v0.38.21
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling miniz_oxide v0.7.1
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling const-cstr v0.3.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.11
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling font-kit v0.11.0
[INFO] [stderr]    Compiling serde v1.0.192
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling thiserror v1.0.50
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling fdeflate v0.3.1
[INFO] [stderr]    Compiling float-ord v0.2.0
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling flate2 v1.0.28
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling yeslogic-fontconfig-sys v3.2.0
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling pathfinder_simd v0.5.2
[INFO] [stderr]    Compiling cty v0.2.2
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling fastrand v2.0.1
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling serde_json v1.0.108
[INFO] [stderr]    Compiling png v0.17.10
[INFO] [stderr]    Compiling raw-window-handle v0.4.3
[INFO] [stderr]    Compiling itoa v1.0.9
[INFO] [stderr]    Compiling sw-composite v0.7.16
[INFO] [stderr]    Compiling xkeysym v0.2.0
[INFO] [stderr]    Compiling typed-arena v2.0.2
[INFO] [stderr]    Compiling ryu v1.0.15
[INFO] [stderr]    Compiling as-raw-xcb-connection v1.0.0
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling syn v2.0.39
[INFO] [stderr]    Compiling pathfinder_geometry v0.5.1
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling dirs-sys-next v0.1.2
[INFO] [stderr]    Compiling nix v0.23.2
[INFO] [stderr]    Compiling memmap2 v0.7.1
[INFO] [stderr]    Compiling euclid v0.22.9
[INFO] [stderr]    Compiling xkbcommon v0.6.0
[INFO] [stderr]    Compiling cmake v0.1.50
[INFO] [stderr]    Compiling dirs-next v2.0.0
[INFO] [stderr]    Compiling minifb v0.25.0
[INFO] [stderr]    Compiling xcursor v0.3.4
[INFO] [stderr]    Compiling freetype-sys v0.13.1
[INFO] [stderr]    Compiling tempfile v3.8.1
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling freetype v0.7.0
[INFO] [stderr]    Compiling lyon_geom v1.0.4
[INFO] [stderr]    Compiling wayland-commons v0.29.5
[INFO] [stderr]    Compiling raqote v0.8.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.50
[INFO] [stderr]    Compiling serde_derive v1.0.192
[INFO] [stderr]    Compiling evdev v0.12.1
[INFO] [stderr]    Compiling wayland-cursor v0.29.5
[INFO] [stderr]    Compiling game_boyish v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `CARTRIDGE_TYPE`
[INFO] [stdout]  --> src/cartridge.rs:3:58
[INFO] [stdout]   |
[INFO] [stdout] 3 |     util::cartridge_util::{load, CartridgeData, MBCType, CARTRIDGE_TYPE},
[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: `NibblesU8`
[INFO] [stdout]  --> src/timer_reg.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 |     util::u8_traits::{Bit, NibblesU16, NibblesU8},
[INFO] [stdout]   |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/util/extract_opcode.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{collections::HashMap, error::Error, fs::File, io::Read};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `u16::MAX as MAXu16`
[INFO] [stdout]  --> src/util/u8_traits.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{u16::MAX as MAXu16, u8::MAX};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bus::OAMSprite`
[INFO] [stdout]  --> src/util/tiles_util.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bus::OAMSprite,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MouseMode`
[INFO] [stdout]  --> src/windows/game_window.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use minifb::{MouseMode, Window, WindowOptions};
[INFO] [stdout]   |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawOptions`, `DrawTarget`, `PathBuilder`, `SolidSource`, and `Source`
[INFO] [stdout]  --> src/windows/game_window.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use raqote::{DrawOptions, DrawTarget, PathBuilder, SolidSource, Source};
[INFO] [stdout]   |              ^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scx`
[INFO] [stdout]    --> src/ppu.rs:142:18
[INFO] [stdout]     |
[INFO] [stdout] 142 |             let (scx, scy) = self.vram.get_background();
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_scx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mnem`
[INFO] [stdout]   --> src/util/extract_opcode.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     for mnem in hash {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mnem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half_carry`
[INFO] [stdout]   --> src/util/math_util.rs:30:18
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let (result, half_carry) = a.overflowing_sub(b);
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_half_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half_carry`
[INFO] [stdout]   --> src/util/math_util.rs:35:18
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let (result, half_carry) = a.overflowing_add(b);
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_half_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/util/math_util.rs:78:18
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let (res, z, n, h, _) = addition(a, 1);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/util/math_util.rs:83:18
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let (res, z, n, h, _) = subtraction(a, 1);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `low`
[INFO] [stdout]    --> src/util/math_util.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let low = a.low_4nibble();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_low`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `high`
[INFO] [stdout]    --> src/util/math_util.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |     let high = a.high_nibble();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_high`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `c1` is assigned to, but never used
[INFO] [stdout]    --> src/util/math_util.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     let mut c1 = false;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_c1` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `c2` is assigned to, but never used
[INFO] [stdout]    --> src/util/math_util.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |     let mut c2 = false;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_c2` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c1` is never read
[INFO] [stdout]    --> src/util/math_util.rs:127:34
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 (new_a, _, _, _, c1) = subtraction(new_a, 0x06);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c1` is never read
[INFO] [stdout]    --> src/util/math_util.rs:136:34
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 (new_a, _, _, _, c1) = addition(new_a, 0x06);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c2` is never read
[INFO] [stdout]    --> src/util/math_util.rs:124:34
[INFO] [stdout]     |
[INFO] [stdout] 124 |                 (new_a, _, _, _, c2) = subtraction(new_a, 0x60);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c2` is never read
[INFO] [stdout]    --> src/util/math_util.rs:133:34
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 (new_a, _, _, _, c2) = addition(new_a, 0x60);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/windows/game_window.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let size = window.get_size();
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Cartridge` is never constructed
[INFO] [stdout]  --> src/cartridge.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Cartridge {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/cartridge.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Cartridge {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 13 |     fn new(bus: Rc<RefCell<Bus>>, file_path: &str) -> Cartridge {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `stop` is never used
[INFO] [stdout]   --> src/emulator.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Emulator {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 92 |     fn stop(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tick` is never used
[INFO] [stdout]   --> src/io_handler.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn tick() {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_2_DOTS` is never used
[INFO] [stdout]   --> src/ppu.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const MODE_2_DOTS: usize = 80usize;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/ppu.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[warn(dead_code)]
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_3_DOTS_MIN` is never used
[INFO] [stdout]   --> src/ppu.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const MODE_3_DOTS_MIN: usize = 172usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_0_DOTS_MIN` is never used
[INFO] [stdout]   --> src/ppu.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const MODE_0_DOTS_MIN: usize = 87usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_0_DOTS_MAX` is never used
[INFO] [stdout]   --> src/ppu.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const MODE_0_DOTS_MAX: usize = 204usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `draw` is never used
[INFO] [stdout]    --> src/ppu.rs:288:8
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl PPU {
[INFO] [stdout]     | -------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn draw() {}
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `frequency` is never read
[INFO] [stdout]  --> src/quartz.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Quartz {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 7 |     frequency: u32,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Register` is never constructed
[INFO] [stdout]  --> src/register.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Register(u16);
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TILE_BYTE_SIZE` is never used
[INFO] [stdout]  --> src/util/tiles_util.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const TILE_BYTE_SIZE: usize = 16usize;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_screen_vec` is never used
[INFO] [stdout]    --> src/util/tiles_util.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn print_screen_vec(tile_vec: &ScreenVector) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_tile_vec` is never used
[INFO] [stdout]    --> src/util/tiles_util.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn print_tile_vec(tile_vec: TileVector) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_buffer` is never used
[INFO] [stdout]   --> src/windows/game_window.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn random_buffer(width: usize, height: usize) -> Vec<u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Z` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub Z: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `z`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `N` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub N: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub H: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub C: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/main.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let mut doc_emu = Emulator {
[INFO] [stdout]    |         ----^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/main.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut emu = Emulator {
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `link_game`
[INFO] [stdout]   --> src/bin/main.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let link_game = load("roms/Legend of Zelda, The - Link's Awakening (U) (V1.2) [!].gb")
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_link_game`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emu`
[INFO] [stdout]   --> src/bin/main.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut emu = Emulator {
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `opcodes_pre`
[INFO] [stdout]   --> src/bin/main.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let opcodes_pre = load_json("opcodes_pre.json");
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcodes_pre`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `opcodes_nopre`
[INFO] [stdout]   --> src/bin/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let opcodes_nopre = load_json("opcodes_nopre.json");
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcodes_nopre`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 50s
[INFO] running `Command { std: "docker" "inspect" "41bccff2eafc0115071f40c9743f9482f34dc835c01727bffc08b2fb62f78ca8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "41bccff2eafc0115071f40c9743f9482f34dc835c01727bffc08b2fb62f78ca8", kill_on_drop: false }`
[INFO] [stdout] 41bccff2eafc0115071f40c9743f9482f34dc835c01727bffc08b2fb62f78ca8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9f765592ed37e63e020a726fd8070e4c561e0b8a9719571d54844acc5e87ea2e
[INFO] running `Command { std: "docker" "start" "-a" "9f765592ed37e63e020a726fd8070e4c561e0b8a9719571d54844acc5e87ea2e", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `CARTRIDGE_TYPE`
[INFO] [stdout]  --> src/cartridge.rs:3:58
[INFO] [stdout]   |
[INFO] [stdout] 3 |     util::cartridge_util::{load, CartridgeData, MBCType, CARTRIDGE_TYPE},
[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: `NibblesU8`
[INFO] [stdout]  --> src/timer_reg.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 |     util::u8_traits::{Bit, NibblesU16, NibblesU8},
[INFO] [stdout]   |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/util/extract_opcode.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{collections::HashMap, error::Error, fs::File, io::Read};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `u16::MAX as MAXu16`
[INFO] [stdout]  --> src/util/u8_traits.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{u16::MAX as MAXu16, u8::MAX};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bus::OAMSprite`
[INFO] [stdout]  --> src/util/tiles_util.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bus::OAMSprite,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MouseMode`
[INFO] [stdout]  --> src/windows/game_window.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use minifb::{MouseMode, Window, WindowOptions};
[INFO] [stdout]   |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawOptions`, `DrawTarget`, `PathBuilder`, `SolidSource`, and `Source`
[INFO] [stdout]  --> src/windows/game_window.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use raqote::{DrawOptions, DrawTarget, PathBuilder, SolidSource, Source};
[INFO] [stdout]   |              ^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scx`
[INFO] [stdout]    --> src/ppu.rs:142:18
[INFO] [stdout]     |
[INFO] [stdout] 142 |             let (scx, scy) = self.vram.get_background();
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_scx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mnem`
[INFO] [stdout]   --> src/util/extract_opcode.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     for mnem in hash {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mnem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half_carry`
[INFO] [stdout]   --> src/util/math_util.rs:30:18
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let (result, half_carry) = a.overflowing_sub(b);
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_half_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half_carry`
[INFO] [stdout]   --> src/util/math_util.rs:35:18
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let (result, half_carry) = a.overflowing_add(b);
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_half_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/util/math_util.rs:78:18
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let (res, z, n, h, _) = addition(a, 1);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/util/math_util.rs:83:18
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let (res, z, n, h, _) = subtraction(a, 1);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `low`
[INFO] [stdout]    --> src/util/math_util.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let low = a.low_4nibble();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_low`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `high`
[INFO] [stdout]    --> src/util/math_util.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |     let high = a.high_nibble();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_high`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `c1` is assigned to, but never used
[INFO] [stdout]    --> src/util/math_util.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     let mut c1 = false;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_c1` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `c2` is assigned to, but never used
[INFO] [stdout]    --> src/util/math_util.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |     let mut c2 = false;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_c2` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c1` is never read
[INFO] [stdout]    --> src/util/math_util.rs:127:34
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 (new_a, _, _, _, c1) = subtraction(new_a, 0x06);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c1` is never read
[INFO] [stdout]    --> src/util/math_util.rs:136:34
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 (new_a, _, _, _, c1) = addition(new_a, 0x06);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c2` is never read
[INFO] [stdout]    --> src/util/math_util.rs:124:34
[INFO] [stdout]     |
[INFO] [stdout] 124 |                 (new_a, _, _, _, c2) = subtraction(new_a, 0x60);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c2` is never read
[INFO] [stdout]    --> src/util/math_util.rs:133:34
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 (new_a, _, _, _, c2) = addition(new_a, 0x60);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/windows/game_window.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let size = window.get_size();
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Cartridge` is never constructed
[INFO] [stdout]  --> src/cartridge.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Cartridge {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/cartridge.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Cartridge {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 13 |     fn new(bus: Rc<RefCell<Bus>>, file_path: &str) -> Cartridge {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `stop` is never used
[INFO] [stdout]   --> src/emulator.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Emulator {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 92 |     fn stop(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tick` is never used
[INFO] [stdout]   --> src/io_handler.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn tick() {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_2_DOTS` is never used
[INFO] [stdout]   --> src/ppu.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const MODE_2_DOTS: usize = 80usize;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/ppu.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[warn(dead_code)]
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_3_DOTS_MIN` is never used
[INFO] [stdout]   --> src/ppu.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const MODE_3_DOTS_MIN: usize = 172usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_0_DOTS_MIN` is never used
[INFO] [stdout]   --> src/ppu.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const MODE_0_DOTS_MIN: usize = 87usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_0_DOTS_MAX` is never used
[INFO] [stdout]   --> src/ppu.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const MODE_0_DOTS_MAX: usize = 204usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `draw` is never used
[INFO] [stdout]    --> src/ppu.rs:288:8
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl PPU {
[INFO] [stdout]     | -------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn draw() {}
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `frequency` is never read
[INFO] [stdout]  --> src/quartz.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Quartz {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 7 |     frequency: u32,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Register` is never constructed
[INFO] [stdout]  --> src/register.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Register(u16);
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TILE_BYTE_SIZE` is never used
[INFO] [stdout]  --> src/util/tiles_util.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const TILE_BYTE_SIZE: usize = 16usize;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_screen_vec` is never used
[INFO] [stdout]    --> src/util/tiles_util.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn print_screen_vec(tile_vec: &ScreenVector) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling game_boyish v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `print_tile_vec` is never used
[INFO] [stdout]    --> src/util/tiles_util.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn print_tile_vec(tile_vec: TileVector) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_buffer` is never used
[INFO] [stdout]   --> src/windows/game_window.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn random_buffer(width: usize, height: usize) -> Vec<u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Z` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub Z: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `z`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `N` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub N: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub H: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub C: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/main.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let mut doc_emu = Emulator {
[INFO] [stdout]    |         ----^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/main.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut emu = Emulator {
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `link_game`
[INFO] [stdout]   --> src/bin/main.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let link_game = load("roms/Legend of Zelda, The - Link's Awakening (U) (V1.2) [!].gb")
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_link_game`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emu`
[INFO] [stdout]   --> src/bin/main.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut emu = Emulator {
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `opcodes_pre`
[INFO] [stdout]   --> src/bin/main.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let opcodes_pre = load_json("opcodes_pre.json");
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcodes_pre`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `opcodes_nopre`
[INFO] [stdout]   --> src/bin/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let opcodes_nopre = load_json("opcodes_nopre.json");
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcodes_nopre`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CARTRIDGE_TYPE`
[INFO] [stdout]  --> src/cartridge.rs:3:58
[INFO] [stdout]   |
[INFO] [stdout] 3 |     util::cartridge_util::{load, CartridgeData, MBCType, CARTRIDGE_TYPE},
[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: `register::Registers`
[INFO] [stdout]    --> src/emulator.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         register::Registers,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NibblesU8`
[INFO] [stdout]  --> src/timer_reg.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 |     util::u8_traits::{Bit, NibblesU16, NibblesU8},
[INFO] [stdout]   |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/util/extract_opcode.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{collections::HashMap, error::Error, fs::File, io::Read};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `u16::MAX as MAXu16`
[INFO] [stdout]  --> src/util/u8_traits.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{u16::MAX as MAXu16, u8::MAX};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bus::OAMSprite`
[INFO] [stdout]  --> src/util/tiles_util.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bus::OAMSprite,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MouseMode`
[INFO] [stdout]  --> src/windows/game_window.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use minifb::{MouseMode, Window, WindowOptions};
[INFO] [stdout]   |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawOptions`, `DrawTarget`, `PathBuilder`, `SolidSource`, and `Source`
[INFO] [stdout]  --> src/windows/game_window.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use raqote::{DrawOptions, DrawTarget, PathBuilder, SolidSource, Source};
[INFO] [stdout]   |              ^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scx`
[INFO] [stdout]    --> src/ppu.rs:142:18
[INFO] [stdout]     |
[INFO] [stdout] 142 |             let (scx, scy) = self.vram.get_background();
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_scx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mnem`
[INFO] [stdout]   --> src/util/extract_opcode.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     for mnem in hash {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mnem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half_carry`
[INFO] [stdout]   --> src/util/math_util.rs:30:18
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let (result, half_carry) = a.overflowing_sub(b);
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_half_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half_carry`
[INFO] [stdout]   --> src/util/math_util.rs:35:18
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let (result, half_carry) = a.overflowing_add(b);
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_half_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/util/math_util.rs:78:18
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let (res, z, n, h, _) = addition(a, 1);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/util/math_util.rs:83:18
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let (res, z, n, h, _) = subtraction(a, 1);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `low`
[INFO] [stdout]    --> src/util/math_util.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let low = a.low_4nibble();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_low`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `high`
[INFO] [stdout]    --> src/util/math_util.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |     let high = a.high_nibble();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_high`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `c1` is assigned to, but never used
[INFO] [stdout]    --> src/util/math_util.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     let mut c1 = false;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_c1` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `c2` is assigned to, but never used
[INFO] [stdout]    --> src/util/math_util.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |     let mut c2 = false;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_c2` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c1` is never read
[INFO] [stdout]    --> src/util/math_util.rs:127:34
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 (new_a, _, _, _, c1) = subtraction(new_a, 0x06);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c1` is never read
[INFO] [stdout]    --> src/util/math_util.rs:136:34
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 (new_a, _, _, _, c1) = addition(new_a, 0x06);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c2` is never read
[INFO] [stdout]    --> src/util/math_util.rs:124:34
[INFO] [stdout]     |
[INFO] [stdout] 124 |                 (new_a, _, _, _, c2) = subtraction(new_a, 0x60);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c2` is never read
[INFO] [stdout]    --> src/util/math_util.rs:133:34
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 (new_a, _, _, _, c2) = addition(new_a, 0x60);
[INFO] [stdout]     |                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tile_vec`
[INFO] [stdout]    --> src/util/tiles_util.rs:210:13
[INFO] [stdout]     |
[INFO] [stdout] 210 |         let tile_vec = vram_to_tile_vec(vram, tile_per_line);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tile_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test`
[INFO] [stdout]    --> src/util/cartridge_util.rs:177:13
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let test = load("../roms/Tetris (JUE) (V1.1) [!].gb");
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_test`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test`
[INFO] [stdout]    --> src/util/cartridge_util.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let test = load("/home/anon/Documents/Code/GameBoyish/roms/cpu_instrs/06-ld r,r.gb");
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_test`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/windows/game_window.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let size = window.get_size();
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Cartridge` is never constructed
[INFO] [stdout]  --> src/cartridge.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Cartridge {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/cartridge.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Cartridge {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 13 |     fn new(bus: Rc<RefCell<Bus>>, file_path: &str) -> Cartridge {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `stop` is never used
[INFO] [stdout]   --> src/emulator.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Emulator {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 92 |     fn stop(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tick` is never used
[INFO] [stdout]   --> src/io_handler.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn tick() {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_2_DOTS` is never used
[INFO] [stdout]   --> src/ppu.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const MODE_2_DOTS: usize = 80usize;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/ppu.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[warn(dead_code)]
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_3_DOTS_MIN` is never used
[INFO] [stdout]   --> src/ppu.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const MODE_3_DOTS_MIN: usize = 172usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_0_DOTS_MIN` is never used
[INFO] [stdout]   --> src/ppu.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const MODE_0_DOTS_MIN: usize = 87usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODE_0_DOTS_MAX` is never used
[INFO] [stdout]   --> src/ppu.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const MODE_0_DOTS_MAX: usize = 204usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `draw` is never used
[INFO] [stdout]    --> src/ppu.rs:288:8
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl PPU {
[INFO] [stdout]     | -------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn draw() {}
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `frequency` is never read
[INFO] [stdout]  --> src/quartz.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Quartz {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 7 |     frequency: u32,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Register` is never constructed
[INFO] [stdout]  --> src/register.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Register(u16);
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TILE_BYTE_SIZE` is never used
[INFO] [stdout]  --> src/util/tiles_util.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const TILE_BYTE_SIZE: usize = 16usize;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_screen_vec` is never used
[INFO] [stdout]    --> src/util/tiles_util.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn print_screen_vec(tile_vec: &ScreenVector) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_tile_vec` is never used
[INFO] [stdout]    --> src/util/tiles_util.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn print_tile_vec(tile_vec: TileVector) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_buffer` is never used
[INFO] [stdout]   --> src/windows/game_window.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn random_buffer(width: usize, height: usize) -> Vec<u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Z` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub Z: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `z`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `N` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub N: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub H: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C` should have a snake case name
[INFO] [stdout]   --> src/util/extract_opcode.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub C: String,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.98s
[INFO] running `Command { std: "docker" "inspect" "9f765592ed37e63e020a726fd8070e4c561e0b8a9719571d54844acc5e87ea2e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9f765592ed37e63e020a726fd8070e4c561e0b8a9719571d54844acc5e87ea2e", kill_on_drop: false }`
[INFO] [stdout] 9f765592ed37e63e020a726fd8070e4c561e0b8a9719571d54844acc5e87ea2e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 93a9f6d26195e345423f7aff07616d12bf319ac806edc16f18ef316d75d36d4d
[INFO] running `Command { std: "docker" "start" "-a" "93a9f6d26195e345423f7aff07616d12bf319ac806edc16f18ef316d75d36d4d", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `CARTRIDGE_TYPE`
[INFO] [stderr]  --> src/cartridge.rs:3:58
[INFO] [stderr]   |
[INFO] [stderr] 3 |     util::cartridge_util::{load, CartridgeData, MBCType, CARTRIDGE_TYPE},
[INFO] [stderr]   |                                                          ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `NibblesU8`
[INFO] [stderr]  --> src/timer_reg.rs:3:40
[INFO] [stderr]   |
[INFO] [stderr] 3 |     util::u8_traits::{Bit, NibblesU16, NibblesU8},
[INFO] [stderr]   |                                        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `error::Error`
[INFO] [stderr]  --> src/util/extract_opcode.rs:2:33
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::{collections::HashMap, error::Error, fs::File, io::Read};
[INFO] [stderr]   |                                 ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `u16::MAX as MAXu16`
[INFO] [stderr]  --> src/util/u8_traits.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{u16::MAX as MAXu16, u8::MAX};
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bus::OAMSprite`
[INFO] [stderr]  --> src/util/tiles_util.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 |     bus::OAMSprite,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MouseMode`
[INFO] [stderr]  --> src/windows/game_window.rs:3:14
[INFO] [stderr]   |
[INFO] [stderr] 3 | use minifb::{MouseMode, Window, WindowOptions};
[INFO] [stderr]   |              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DrawOptions`, `DrawTarget`, `PathBuilder`, `SolidSource`, and `Source`
[INFO] [stderr]  --> src/windows/game_window.rs:4:14
[INFO] [stderr]   |
[INFO] [stderr] 4 | use raqote::{DrawOptions, DrawTarget, PathBuilder, SolidSource, Source};
[INFO] [stderr]   |              ^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `scx`
[INFO] [stderr]    --> src/ppu.rs:142:18
[INFO] [stderr]     |
[INFO] [stderr] 142 |             let (scx, scy) = self.vram.get_background();
[INFO] [stderr]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_scx`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mnem`
[INFO] [stderr]   --> src/util/extract_opcode.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |     for mnem in hash {
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mnem`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `half_carry`
[INFO] [stderr]   --> src/util/math_util.rs:30:18
[INFO] [stderr]    |
[INFO] [stderr] 30 |     let (result, half_carry) = a.overflowing_sub(b);
[INFO] [stderr]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_half_carry`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `half_carry`
[INFO] [stderr]   --> src/util/math_util.rs:35:18
[INFO] [stderr]    |
[INFO] [stderr] 35 |     let (result, half_carry) = a.overflowing_add(b);
[INFO] [stderr]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_half_carry`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n`
[INFO] [stderr]   --> src/util/math_util.rs:78:18
[INFO] [stderr]    |
[INFO] [stderr] 78 |     let (res, z, n, h, _) = addition(a, 1);
[INFO] [stderr]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n`
[INFO] [stderr]   --> src/util/math_util.rs:83:18
[INFO] [stderr]    |
[INFO] [stderr] 83 |     let (res, z, n, h, _) = subtraction(a, 1);
[INFO] [stderr]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `low`
[INFO] [stderr]    --> src/util/math_util.rs:115:9
[INFO] [stderr]     |
[INFO] [stderr] 115 |     let low = a.low_4nibble();
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_low`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `high`
[INFO] [stderr]    --> src/util/math_util.rs:116:9
[INFO] [stderr]     |
[INFO] [stderr] 116 |     let high = a.high_nibble();
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_high`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `c1` is assigned to, but never used
[INFO] [stderr]    --> src/util/math_util.rs:117:9
[INFO] [stderr]     |
[INFO] [stderr] 117 |     let mut c1 = false;
[INFO] [stderr]     |         ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_c1` instead
[INFO] [stderr] 
[INFO] [stderr] warning: variable `c2` is assigned to, but never used
[INFO] [stderr]    --> src/util/math_util.rs:118:9
[INFO] [stderr]     |
[INFO] [stderr] 118 |     let mut c2 = false;
[INFO] [stderr]     |         ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_c2` instead
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `c1` is never read
[INFO] [stderr]    --> src/util/math_util.rs:127:34
[INFO] [stderr]     |
[INFO] [stderr] 127 |                 (new_a, _, _, _, c1) = subtraction(new_a, 0x06);
[INFO] [stderr]     |                                  ^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `c1` is never read
[INFO] [stderr]    --> src/util/math_util.rs:136:34
[INFO] [stderr]     |
[INFO] [stderr] 136 |                 (new_a, _, _, _, c1) = addition(new_a, 0x06);
[INFO] [stderr]     |                                  ^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `c2` is never read
[INFO] [stderr]    --> src/util/math_util.rs:124:34
[INFO] [stderr]     |
[INFO] [stderr] 124 |                 (new_a, _, _, _, c2) = subtraction(new_a, 0x60);
[INFO] [stderr]     |                                  ^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `c2` is never read
[INFO] [stderr]    --> src/util/math_util.rs:133:34
[INFO] [stderr]     |
[INFO] [stderr] 133 |                 (new_a, _, _, _, c2) = addition(new_a, 0x60);
[INFO] [stderr]     |                                  ^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `size`
[INFO] [stderr]   --> src/windows/game_window.rs:52:17
[INFO] [stderr]    |
[INFO] [stderr] 52 |             let size = window.get_size();
[INFO] [stderr]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Cartridge` is never constructed
[INFO] [stderr]  --> src/cartridge.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct Cartridge {
[INFO] [stderr]   |        ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/cartridge.rs:13:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | impl Cartridge {
[INFO] [stderr]    | -------------- associated function in this implementation
[INFO] [stderr] 13 |     fn new(bus: Rc<RefCell<Bus>>, file_path: &str) -> Cartridge {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `stop` is never used
[INFO] [stderr]   --> src/emulator.rs:92:8
[INFO] [stderr]    |
[INFO] [stderr] 31 | impl Emulator {
[INFO] [stderr]    | ------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 92 |     fn stop(&mut self) {
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `tick` is never used
[INFO] [stderr]   --> src/io_handler.rs:37:4
[INFO] [stderr]    |
[INFO] [stderr] 37 | fn tick() {
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MODE_2_DOTS` is never used
[INFO] [stderr]   --> src/ppu.rs:24:7
[INFO] [stderr]    |
[INFO] [stderr] 24 | const MODE_2_DOTS: usize = 80usize;
[INFO] [stderr]    |       ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/ppu.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[warn(dead_code)]
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MODE_3_DOTS_MIN` is never used
[INFO] [stderr]   --> src/ppu.rs:25:7
[INFO] [stderr]    |
[INFO] [stderr] 25 | const MODE_3_DOTS_MIN: usize = 172usize;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MODE_0_DOTS_MIN` is never used
[INFO] [stderr]   --> src/ppu.rs:27:7
[INFO] [stderr]    |
[INFO] [stderr] 27 | const MODE_0_DOTS_MIN: usize = 87usize;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MODE_0_DOTS_MAX` is never used
[INFO] [stderr]   --> src/ppu.rs:28:7
[INFO] [stderr]    |
[INFO] [stderr] 28 | const MODE_0_DOTS_MAX: usize = 204usize;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `draw` is never used
[INFO] [stderr]    --> src/ppu.rs:288:8
[INFO] [stderr]     |
[INFO] [stderr]  50 | impl PPU {
[INFO] [stderr]     | -------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 288 |     fn draw() {}
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `frequency` is never read
[INFO] [stderr]  --> src/quartz.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct Quartz {
[INFO] [stderr]   |            ------ field in this struct
[INFO] [stderr] 7 |     frequency: u32,
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Register` is never constructed
[INFO] [stderr]  --> src/register.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | struct Register(u16);
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TILE_BYTE_SIZE` is never used
[INFO] [stderr]  --> src/util/tiles_util.rs:8:7
[INFO] [stderr]   |
[INFO] [stderr] 8 | const TILE_BYTE_SIZE: usize = 16usize;
[INFO] [stderr]   |       ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_screen_vec` is never used
[INFO] [stderr]    --> src/util/tiles_util.rs:136:4
[INFO] [stderr]     |
[INFO] [stderr] 136 | fn print_screen_vec(tile_vec: &ScreenVector) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_tile_vec` is never used
[INFO] [stderr]    --> src/util/tiles_util.rs:146:4
[INFO] [stderr]     |
[INFO] [stderr] 146 | fn print_tile_vec(tile_vec: TileVector) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `random_buffer` is never used
[INFO] [stderr]   --> src/windows/game_window.rs:66:4
[INFO] [stderr]    |
[INFO] [stderr] 66 | fn random_buffer(width: usize, height: usize) -> Vec<u32> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Z` should have a snake case name
[INFO] [stderr]   --> src/util/extract_opcode.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub Z: String,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `z`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `N` should have a snake case name
[INFO] [stderr]   --> src/util/extract_opcode.rs:15:9
[INFO] [stderr]    |
[INFO] [stderr] 15 |     pub N: String,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `n`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `H` should have a snake case name
[INFO] [stderr]   --> src/util/extract_opcode.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |     pub H: String,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `h`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `C` should have a snake case name
[INFO] [stderr]   --> src/util/extract_opcode.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pub C: String,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `register::Registers`
[INFO] [stderr]    --> src/emulator.rs:113:9
[INFO] [stderr]     |
[INFO] [stderr] 113 |         register::Registers,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tile_vec`
[INFO] [stderr]    --> src/util/tiles_util.rs:210:13
[INFO] [stderr]     |
[INFO] [stderr] 210 |         let tile_vec = vram_to_tile_vec(vram, tile_per_line);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tile_vec`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `test`
[INFO] [stderr]    --> src/util/cartridge_util.rs:177:13
[INFO] [stderr]     |
[INFO] [stderr] 177 |         let test = load("../roms/Tetris (JUE) (V1.1) [!].gb");
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_test`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `test`
[INFO] [stderr]    --> src/util/cartridge_util.rs:178:13
[INFO] [stderr]     |
[INFO] [stderr] 178 |         let test = load("/home/anon/Documents/Code/GameBoyish/roms/cpu_instrs/06-ld r,r.gb");
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_test`
[INFO] [stderr] 
[INFO] [stderr] warning: `game_boyish` (lib) generated 41 warnings (run `cargo fix --lib -p game_boyish` to apply 16 suggestions)
[INFO] [stderr] warning: `game_boyish` (lib test) generated 45 warnings (41 duplicates) (run `cargo fix --lib -p game_boyish --tests` to apply 4 suggestions)
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/bin/main.rs:40:9
[INFO] [stderr]    |
[INFO] [stderr] 40 |     let mut doc_emu = Emulator {
[INFO] [stderr]    |         ----^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/bin/main.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |     let mut emu = Emulator {
[INFO] [stderr]    |         ----^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `link_game`
[INFO] [stderr]   --> src/bin/main.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let link_game = load("roms/Legend of Zelda, The - Link's Awakening (U) (V1.2) [!].gb")
[INFO] [stderr]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_link_game`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `emu`
[INFO] [stderr]   --> src/bin/main.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |     let mut emu = Emulator {
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emu`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `opcodes_pre`
[INFO] [stderr]   --> src/bin/main.rs:68:9
[INFO] [stderr]    |
[INFO] [stderr] 68 |     let opcodes_pre = load_json("opcodes_pre.json");
[INFO] [stderr]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcodes_pre`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `opcodes_nopre`
[INFO] [stderr]   --> src/bin/main.rs:69:9
[INFO] [stderr]    |
[INFO] [stderr] 69 |     let opcodes_nopre = load_json("opcodes_nopre.json");
[INFO] [stderr]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcodes_nopre`
[INFO] [stderr] 
[INFO] [stderr] warning: `game_boyish` (bin "main" test) generated 6 warnings (run `cargo fix --bin "main" -p game_boyish --tests` to apply 6 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/game_boyish-7cde9090d6302c22)
[INFO] [stdout] 
[INFO] [stdout] running 31 tests
[INFO] [stdout] test bus::tests::get_a16_address_test ... ok
[INFO] [stdout] test bus::tests::read_slice ... ok
[INFO] [stdout] test bus::tests::reset_flag_test ... ok
[INFO] [stdout] test bus::tests::test_read ... ok
[INFO] [stdout] test bus::tests::test_write ... ok
[INFO] [stdout] test bus::tests::write_slice ... ok
[INFO] [stdout] test register::tests::flag_test ... ok
[INFO] [stdout] test register::tests::high_low_test ... ok
[INFO] [stdout] test ppu::tests::insert_obj_vec_into_line_pixels_test ... ok
[INFO] [stdout] test register::tests::get_bit_test ... ok
[INFO] [stdout] test util::math_util::tests::addition_test ... ok
[INFO] [stdout] test register::tests::set_bit_test ... ok
[INFO] [stdout] test register::tests::set_low_high_test ... ok
[INFO] [stdout] test util::math_util::tests::bit_set_get_test ... ok
[INFO] [stdout] test util::cartridge_util::tests::load_tetris ... ok
[INFO] [stdout] test util::opcode_dict_util::tests::prefix_opcode_mnemonics_from_string ... ok
[INFO] [stdout] test util::tiles_util::tests::tile_fuse_byte_test ... ok
[INFO] [stdout] test util::math_util::tests::signed_addition_test ... ok
[INFO] [stdout] test util::tiles_util::tests::tile_fuse_byte_test2 ... ok
[INFO] [stdout] test util::opcode_dict_util::tests::opcode_mnemonics_from_string ... ok
[INFO] [stdout] test util::display_impl::tests::u8_array_to_string_test ... ok
[INFO] [stdout] test util::u8_traits::tests::get_set_bit_test ... ok
[INFO] [stdout] test util::tiles_util::tests::vram_to_vec_test ... ok
[INFO] [stdout] test cpu::tests::load_opcode_from_file ... ok
[INFO] [stdout] test cpu::tests::bus_access ... ok
[INFO] [stdout] test bus::tests::cpu_lock_test ... FAILED
[INFO] [stdout] test bus::tests::load_boot_loader ... FAILED
[INFO] [stdout] test bus::tests::read_slice_panic - should panic ... ok
[INFO] [stdout] test bus::tests::write_slice_panic - should panic ... ok
[INFO] [stdout] test quartz::tests::delta_step_test ... FAILED
[INFO] [stdout] test emulator::tests::multiple_bus_access ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- bus::tests::cpu_lock_test stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'bus::tests::cpu_lock_test' (25) panicked at src/bus.rs:567:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: 0
[INFO] [stdout]  right: 144
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x641c65da06d2 - std::backtrace_rs::backtrace::libunwind::trace::hf0bd46b30bc61685
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x641c65da06d2 - std::backtrace_rs::backtrace::trace_unsynchronized::h1d1fbb72ad89d7b7
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x641c65da06d2 - std::sys::backtrace::_print_fmt::he38b6f68ca847f47
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x641c65da06d2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hb7e843cde1bc81a3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x641c65db115a - core::fmt::rt::Argument::fmt::hc1dd77ac64f2688c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x641c65db115a - core::fmt::write::h952c506e2dbe9cff
[INFO] [stdout]    6:     0x641c65d6f4a6 - std::io::default_write_fmt::hd23bd8145c03a23a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x641c65d6f4a6 - std::io::Write::write_fmt::hdd3314a2bd8a34bd
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x641c65d7fae9 - std::sys::backtrace::BacktraceLock::print::h1079b82381c2c252
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x641c65d7fae9 - std::panicking::default_hook::{{closure}}::h85cb76b8462c00f2
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x641c65d7f981 - std::panicking::default_hook::h0134d220cc034c02
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x641c65d0095e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hb2e68dca3970e3ca
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x641c65d0095e - test::test_main_with_exit_callback::{{closure}}::ha7ec2063a2565ec3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x641c65d7fd62 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::haebee478d0f56cf4
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x641c65d7fd62 - std::panicking::panic_with_hook::h8119b6db1fef734f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x641c65d7fba8 - std::panicking::panic_handler::{{closure}}::h24f5360b91482c0e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x641c65d7b099 - std::sys::backtrace::__rust_end_short_backtrace::h4e60c5cbd1bd0108
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x641c65d6403d - __rustc[e4c6931bd8050421]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x641c65db85ec - core::panicking::panic_fmt::hb1614a3ff6840071
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x641c65db84a3 - core::panicking::assert_failed_inner::h5aabe811ef142622
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x641c65d22f0e - core::panicking::assert_failed::hd35b9ae7dfe5d939
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x641c65cc9d4c - game_boyish::bus::tests::cpu_lock_test::h04158471c7ba2d55
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bus.rs:567:9
[INFO] [stdout]   22:     0x641c65cca017 - game_boyish::bus::tests::cpu_lock_test::{{closure}}::hcd610a0c1f824286
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bus.rs:560:23
[INFO] [stdout]   23:     0x641c65cd1ae6 - core::ops::function::FnOnce::call_once::hf8e0af3692fd75d7
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x641c65d0075b - core::ops::function::FnOnce::call_once::hefaf63600cd43d2a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x641c65d0075b - test::__rust_begin_short_backtrace::he30322a73a0e9ea6
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x641c65d1412a - test::run_test_in_process::{{closure}}::hdea3ab8d0243ef36
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x641c65d1412a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h66d192f42498ffce
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x641c65d1412a - std::panicking::catch_unwind::do_call::h822e18e8d3a6bb65
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x641c65d1412a - std::panicking::catch_unwind::h54b1de7ceab578bf
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x641c65d1412a - std::panic::catch_unwind::h60c29b7a9d0246b1
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x641c65d1412a - test::run_test_in_process::h6099b5f871379b13
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x641c65d1412a - test::run_test::{{closure}}::h926ce0a38281a4c8
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x641c65cee584 - test::run_test::{{closure}}::h508de21a9afc7140
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x641c65cee584 - std::sys::backtrace::__rust_begin_short_backtrace::h6e2f5c39ca00735a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x641c65cf1e42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::h133e44f0e5802c14
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x641c65cf1e42 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4718c1285283955c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x641c65cf1e42 - std::panicking::catch_unwind::do_call::h0bba3937b4892238
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x641c65cf1e42 - std::panicking::catch_unwind::h5b31cab5fb8c5d7f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x641c65cf1e42 - std::panic::catch_unwind::hb2fa05d52ed0124e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x641c65cf1e42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::hf401cf5ff501bd29
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x641c65cf1e42 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h160022e94ce3b0bb
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x641c65d7632f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf234e0d1d1d272ba
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x641c65d7632f - std::sys::thread::unix::Thread::new::thread_start::h106a295241840d3b
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   44:     0x70dee5c7aaa4 - <unknown>
[INFO] [stdout]   45:     0x70dee5d07a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bus::tests::load_boot_loader stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'bus::tests::load_boot_loader' (27) panicked at src/bus.rs:541:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: [0, 0, 0, 0, 0]
[INFO] [stdout]  right: [49, 254, 255, 175, 33]
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x641c65da06d2 - std::backtrace_rs::backtrace::libunwind::trace::hf0bd46b30bc61685
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x641c65da06d2 - std::backtrace_rs::backtrace::trace_unsynchronized::h1d1fbb72ad89d7b7
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x641c65da06d2 - std::sys::backtrace::_print_fmt::he38b6f68ca847f47
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x641c65da06d2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hb7e843cde1bc81a3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x641c65db115a - core::fmt::rt::Argument::fmt::hc1dd77ac64f2688c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x641c65db115a - core::fmt::write::h952c506e2dbe9cff
[INFO] [stdout]    6:     0x641c65d6f4a6 - std::io::default_write_fmt::hd23bd8145c03a23a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x641c65d6f4a6 - std::io::Write::write_fmt::hdd3314a2bd8a34bd
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x641c65d7fae9 - std::sys::backtrace::BacktraceLock::print::h1079b82381c2c252
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x641c65d7fae9 - std::panicking::default_hook::{{closure}}::h85cb76b8462c00f2
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x641c65d7f981 - std::panicking::default_hook::h0134d220cc034c02
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x641c65d0095e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hb2e68dca3970e3ca
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x641c65d0095e - test::test_main_with_exit_callback::{{closure}}::ha7ec2063a2565ec3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x641c65d7fd62 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::haebee478d0f56cf4
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x641c65d7fd62 - std::panicking::panic_with_hook::h8119b6db1fef734f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x641c65d7fba8 - std::panicking::panic_handler::{{closure}}::h24f5360b91482c0e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x641c65d7b099 - std::sys::backtrace::__rust_end_short_backtrace::h4e60c5cbd1bd0108
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x641c65d6403d - __rustc[e4c6931bd8050421]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x641c65db85ec - core::panicking::panic_fmt::hb1614a3ff6840071
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x641c65db84a3 - core::panicking::assert_failed_inner::h5aabe811ef142622
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x641c65cc7d95 - core::panicking::assert_failed::hfd076dfa93f0710a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x641c65cca664 - game_boyish::bus::tests::load_boot_loader::h73b844411d2b6fd8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bus.rs:541:9
[INFO] [stdout]   22:     0x641c65cca6f7 - game_boyish::bus::tests::load_boot_loader::{{closure}}::h20d0a46009af4b10
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bus.rs:538:26
[INFO] [stdout]   23:     0x641c65cd10c6 - core::ops::function::FnOnce::call_once::h1806568db5775151
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x641c65d0075b - core::ops::function::FnOnce::call_once::hefaf63600cd43d2a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x641c65d0075b - test::__rust_begin_short_backtrace::he30322a73a0e9ea6
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x641c65d1412a - test::run_test_in_process::{{closure}}::hdea3ab8d0243ef36
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x641c65d1412a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h66d192f42498ffce
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x641c65d1412a - std::panicking::catch_unwind::do_call::h822e18e8d3a6bb65
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x641c65d1412a - std::panicking::catch_unwind::h54b1de7ceab578bf
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x641c65d1412a - std::panic::catch_unwind::h60c29b7a9d0246b1
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x641c65d1412a - test::run_test_in_process::h6099b5f871379b13
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x641c65d1412a - test::run_test::{{closure}}::h926ce0a38281a4c8
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x641c65cee584 - test::run_test::{{closure}}::h508de21a9afc7140
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x641c65cee584 - std::sys::backtrace::__rust_begin_short_backtrace::h6e2f5c39ca00735a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x641c65cf1e42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::h133e44f0e5802c14
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x641c65cf1e42 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4718c1285283955c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x641c65cf1e42 - std::panicking::catch_unwind::do_call::h0bba3937b4892238
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x641c65cf1e42 - std::panicking::catch_unwind::h5b31cab5fb8c5d7f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x641c65cf1e42 - std::panic::catch_unwind::hb2fa05d52ed0124e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x641c65cf1e42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::hf401cf5ff501bd29
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x641c65cf1e42 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h160022e94ce3b0bb
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x641c65d7632f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf234e0d1d1d272ba
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x641c65d7632f - std::sys::thread::unix::Thread::new::thread_start::h106a295241840d3b
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   44:     0x70dee5c7aaa4 - <unknown>
[INFO] [stdout]   45:     0x70dee5d07a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- quartz::tests::delta_step_test stdout ----
[INFO] [stdout] tMIEME: 1
[INFO] [stdout] 
[INFO] [stdout] thread 'quartz::tests::delta_step_test' (39) panicked at src/quartz.rs:52:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: 238
[INFO] [stdout]  right: 1
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x641c65da06d2 - std::backtrace_rs::backtrace::libunwind::trace::hf0bd46b30bc61685
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x641c65da06d2 - std::backtrace_rs::backtrace::trace_unsynchronized::h1d1fbb72ad89d7b7
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x641c65da06d2 - std::sys::backtrace::_print_fmt::he38b6f68ca847f47
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x641c65da06d2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hb7e843cde1bc81a3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x641c65db115a - core::fmt::rt::Argument::fmt::hc1dd77ac64f2688c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x641c65db115a - core::fmt::write::h952c506e2dbe9cff
[INFO] [stdout]    6:     0x641c65d6f4a6 - std::io::default_write_fmt::hd23bd8145c03a23a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x641c65d6f4a6 - std::io::Write::write_fmt::hdd3314a2bd8a34bd
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x641c65d7fae9 - std::sys::backtrace::BacktraceLock::print::h1079b82381c2c252
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x641c65d7fae9 - std::panicking::default_hook::{{closure}}::h85cb76b8462c00f2
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x641c65d7f981 - std::panicking::default_hook::h0134d220cc034c02
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x641c65d0095e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hb2e68dca3970e3ca
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x641c65d0095e - test::test_main_with_exit_callback::{{closure}}::ha7ec2063a2565ec3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x641c65d7fd62 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::haebee478d0f56cf4
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x641c65d7fd62 - std::panicking::panic_with_hook::h8119b6db1fef734f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x641c65d7fba8 - std::panicking::panic_handler::{{closure}}::h24f5360b91482c0e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x641c65d7b099 - std::sys::backtrace::__rust_end_short_backtrace::h4e60c5cbd1bd0108
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x641c65d6403d - __rustc[e4c6931bd8050421]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x641c65db85ec - core::panicking::panic_fmt::hb1614a3ff6840071
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x641c65db84a3 - core::panicking::assert_failed_inner::h5aabe811ef142622
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x641c65cc7ca2 - core::panicking::assert_failed::h7e0d2a48be870d65
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x641c65cc5381 - game_boyish::quartz::tests::delta_step_test::hc1d91bcd03350abc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/quartz.rs:52:9
[INFO] [stdout]   22:     0x641c65cc53a7 - game_boyish::quartz::tests::delta_step_test::{{closure}}::h24cbf413f950b02e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/quartz.rs:49:25
[INFO] [stdout]   23:     0x641c65cd16c6 - core::ops::function::FnOnce::call_once::hb61fc1c328313b0c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x641c65d0075b - core::ops::function::FnOnce::call_once::hefaf63600cd43d2a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x641c65d0075b - test::__rust_begin_short_backtrace::he30322a73a0e9ea6
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x641c65d1412a - test::run_test_in_process::{{closure}}::hdea3ab8d0243ef36
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x641c65d1412a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h66d192f42498ffce
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x641c65d1412a - std::panicking::catch_unwind::do_call::h822e18e8d3a6bb65
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x641c65d1412a - std::panicking::catch_unwind::h54b1de7ceab578bf
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x641c65d1412a - std::panic::catch_unwind::h60c29b7a9d0246b1
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x641c65d1412a - test::run_test_in_process::h6099b5f871379b13
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x641c65d1412a - test::run_test::{{closure}}::h926ce0a38281a4c8
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x641c65cee584 - test::run_test::{{closure}}::h508de21a9afc7140
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x641c65cee584 - std::sys::backtrace::__rust_begin_short_backtrace::h6e2f5c39ca00735a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x641c65cf1e42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::h133e44f0e5802c14
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x641c65cf1e42 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4718c1285283955c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x641c65cf1e42 - std::panicking::catch_unwind::do_call::h0bba3937b4892238
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x641c65cf1e42 - std::panicking::catch_unwind::h5b31cab5fb8c5d7f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x641c65cf1e42 - std::panic::catch_unwind::hb2fa05d52ed0124e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x641c65cf1e42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::hf401cf5ff501bd29
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x641c65cf1e42 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h160022e94ce3b0bb
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x641c65d7632f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf234e0d1d1d272ba
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x641c65d7632f - std::sys::thread::unix::Thread::new::thread_start::h106a295241840d3b
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   44:     0x70dee5c7aaa4 - <unknown>
[INFO] [stdout]   45:     0x70dee5d07a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- emulator::tests::multiple_bus_access stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'emulator::tests::multiple_bus_access' (37) panicked at src/io_handler.rs:14:41:
[INFO] [stdout] Failed to create device: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x641c65da06d2 - std::backtrace_rs::backtrace::libunwind::trace::hf0bd46b30bc61685
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x641c65da06d2 - std::backtrace_rs::backtrace::trace_unsynchronized::h1d1fbb72ad89d7b7
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x641c65da06d2 - std::sys::backtrace::_print_fmt::he38b6f68ca847f47
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x641c65da06d2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hb7e843cde1bc81a3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x641c65db115a - core::fmt::rt::Argument::fmt::hc1dd77ac64f2688c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x641c65db115a - core::fmt::write::h952c506e2dbe9cff
[INFO] [stdout]    6:     0x641c65d6f4a6 - std::io::default_write_fmt::hd23bd8145c03a23a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x641c65d6f4a6 - std::io::Write::write_fmt::hdd3314a2bd8a34bd
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x641c65d7fae9 - std::sys::backtrace::BacktraceLock::print::h1079b82381c2c252
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x641c65d7fae9 - std::panicking::default_hook::{{closure}}::h85cb76b8462c00f2
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x641c65d7f981 - std::panicking::default_hook::h0134d220cc034c02
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x641c65d0095e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hb2e68dca3970e3ca
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x641c65d0095e - test::test_main_with_exit_callback::{{closure}}::ha7ec2063a2565ec3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x641c65d7fd62 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::haebee478d0f56cf4
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x641c65d7fd62 - std::panicking::panic_with_hook::h8119b6db1fef734f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x641c65d7fba8 - std::panicking::panic_handler::{{closure}}::h24f5360b91482c0e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x641c65d7b099 - std::sys::backtrace::__rust_end_short_backtrace::h4e60c5cbd1bd0108
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x641c65d6403d - __rustc[e4c6931bd8050421]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x641c65db85ec - core::panicking::panic_fmt::hb1614a3ff6840071
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x641c65db7e62 - core::result::unwrap_failed::h7d4c34940aded59c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x641c65cc179c - core::result::Result<T,E>::expect::h73f3539a815e5de7
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x641c65cba106 - game_boyish::io_handler::IOHandler::new::h2fdd79335099375d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/io_handler.rs:14:41
[INFO] [stdout]   22:     0x641c65cc5526 - game_boyish::emulator::tests::multiple_bus_access::hc846953301b2b6f2
[INFO] [stdout]                                at /opt/rustwide/workdir/src/emulator.rs:125:25
[INFO] [stdout]   23:     0x641c65cc6017 - game_boyish::emulator::tests::multiple_bus_access::{{closure}}::h588e6891be5b2036
[INFO] [stdout]                                at /opt/rustwide/workdir/src/emulator.rs:120:29
[INFO] [stdout]   24:     0x641c65cd15e6 - core::ops::function::FnOnce::call_once::h9d3ca827327d16ef
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x641c65d0075b - core::ops::function::FnOnce::call_once::hefaf63600cd43d2a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x641c65d0075b - test::__rust_begin_short_backtrace::he30322a73a0e9ea6
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x641c65d1412a - test::run_test_in_process::{{closure}}::hdea3ab8d0243ef36
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x641c65d1412a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h66d192f42498ffce
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   29:     0x641c65d1412a - std::panicking::catch_unwind::do_call::h822e18e8d3a6bb65
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x641c65d1412a - std::panicking::catch_unwind::h54b1de7ceab578bf
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x641c65d1412a - std::panic::catch_unwind::h60c29b7a9d0246b1
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x641c65d1412a - test::run_test_in_process::h6099b5f871379b13
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x641c65d1412a - test::run_test::{{closure}}::h926ce0a38281a4c8
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x641c65cee584 - test::run_test::{{closure}}::h508de21a9afc7140
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x641c65cee584 - std::sys::backtrace::__rust_begin_short_backtrace::h6e2f5c39ca00735a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x641c65cf1e42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::h133e44f0e5802c14
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x641c65cf1e42 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4718c1285283955c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   38:     0x641c65cf1e42 - std::panicking::catch_unwind::do_call::h0bba3937b4892238
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x641c65cf1e42 - std::panicking::catch_unwind::h5b31cab5fb8c5d7f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x641c65cf1e42 - std::panic::catch_unwind::hb2fa05d52ed0124e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x641c65cf1e42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::hf401cf5ff501bd29
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x641c65cf1e42 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h160022e94ce3b0bb
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x641c65d7632f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf234e0d1d1d272ba
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   44:     0x641c65d7632f - std::sys::thread::unix::Thread::new::thread_start::h106a295241840d3b
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   45:     0x70dee5c7aaa4 - <unknown>
[INFO] [stdout]   46:     0x70dee5d07a64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     bus::tests::cpu_lock_test
[INFO] [stdout]     bus::tests::load_boot_loader
[INFO] [stdout]     emulator::tests::multiple_bus_access
[INFO] [stdout]     quartz::tests::delta_step_test
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 27 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "93a9f6d26195e345423f7aff07616d12bf319ac806edc16f18ef316d75d36d4d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "93a9f6d26195e345423f7aff07616d12bf319ac806edc16f18ef316d75d36d4d", kill_on_drop: false }`
[INFO] [stdout] 93a9f6d26195e345423f7aff07616d12bf319ac806edc16f18ef316d75d36d4d
