[INFO] cloning repository https://github.com/AlexW-GH/Rustboy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AlexW-GH/Rustboy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlexW-GH%2FRustboy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlexW-GH%2FRustboy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1496533706d3711e1ce5ee5ec89154d82d63b2a9
[INFO] testing AlexW-GH/Rustboy against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlexW-GH%2FRustboy" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AlexW-GH/Rustboy
[INFO] finished tweaking git repo https://github.com/AlexW-GH/Rustboy
[INFO] tweaked toml for git repo https://github.com/AlexW-GH/Rustboy written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AlexW-GH/Rustboy on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AlexW-GH/Rustboy 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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9d756d1084a87cb3bbee0e15e081d63fac9504be7096d40e67bcf487ca4acdac
[INFO] running `Command { std: "docker" "start" "-a" "9d756d1084a87cb3bbee0e15e081d63fac9504be7096d40e67bcf487ca4acdac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9d756d1084a87cb3bbee0e15e081d63fac9504be7096d40e67bcf487ca4acdac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9d756d1084a87cb3bbee0e15e081d63fac9504be7096d40e67bcf487ca4acdac", kill_on_drop: false }`
[INFO] [stdout] 9d756d1084a87cb3bbee0e15e081d63fac9504be7096d40e67bcf487ca4acdac
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ba8ef1a029c2fdc0dcb0de71859d80d0b969943c072b90f886590da98098493b
[INFO] running `Command { std: "docker" "start" "-a" "ba8ef1a029c2fdc0dcb0de71859d80d0b969943c072b90f886590da98098493b", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling libc v0.2.98
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]    Compiling byteorder v1.2.7
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling num-derive v0.2.5
[INFO] [stderr]    Compiling lzw v0.10.0
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling gif v0.10.3
[INFO] [stderr]    Compiling deflate v0.7.20
[INFO] [stderr]    Compiling term v0.5.1
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling time v0.1.40
[INFO] [stderr]    Compiling crossbeam-deque v0.8.0
[INFO] [stderr]    Compiling chrono v0.4.6
[INFO] [stderr]    Compiling png v0.12.0
[INFO] [stderr]    Compiling simplelog v0.5.3 (https://github.com/AlexW-GH/simplelog.rs#3ffe808c)
[INFO] [stderr]    Compiling jpeg-decoder v0.1.22
[INFO] [stderr]    Compiling tiff v0.2.2
[INFO] [stderr]    Compiling image v0.20.1
[INFO] [stderr]    Compiling rust_boy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: constant `LCDC_REGISTER` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const LCDC_REGISTER: u16 = 0xFF40;
[INFO] [stdout]   |       ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIXEL_WIDTH` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | const PIXEL_WIDTH: u32 = 128;
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIXEL_HEIGHT` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const PIXEL_HEIGHT: u32 = 128;
[INFO] [stdout]   |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `VramDebugger` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub(crate) trait VramDebugger {
[INFO] [stdout]   |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VRAMFetcher` is never constructed
[INFO] [stdout]   --> src/debug/vram_fetcher.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(crate) struct VRAMFetcher {}
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `render_all_background_tiles`, `render_background_tilemap`, `combine_pixels`, `create_pixels`, and `decode_pixel` are never used
[INFO] [stdout]    --> src/debug/vram_fetcher.rs:17:19
[INFO] [stdout]     |
[INFO] [stdout] 16  | impl VRAMFetcher {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 17  |     pub(crate) fn render_all_background_tiles(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24  |     pub(crate) fn render_background_tilemap(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94  |     fn combine_pixels(data0: u8, data1: u8) -> u16 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     fn create_pixels(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn decode_pixel(color_code: u16) -> Rgba<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | struct CartridgeHeader {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] 5  |     title: String,
[INFO] [stdout] 6  |     manufacturer: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 7  |     licensee_code: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 8  |     old_licensee_code: u8,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     destination: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     version: u8,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 14 |     checksum: u8,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     global_checksum: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     MBCNone {
[INFO] [stdout]    |     ------- field in this variant
[INFO] [stdout] 64 |         ram: bool,
[INFO] [stdout] 65 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     MBC1 {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 68 |         ram: bool,
[INFO] [stdout] 69 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     MBC2 {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 72 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ram` and `battery` are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     MMM01 {
[INFO] [stdout]    |     ----- fields in this variant
[INFO] [stdout] 75 |         ram: bool,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 76 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timer`, `ram`, and `battery` are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     MBC3 {
[INFO] [stdout]    |     ---- fields in this variant
[INFO] [stdout] 79 |         timer: bool,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 80 |         ram: bool,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 81 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `interrupt_enable_flags` and `interrupt_request_flags` are never read
[INFO] [stdout]  --> src/processor/interrupt_controller.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub(crate) struct InterruptController {
[INFO] [stdout]   |                   ------------------- fields in this struct
[INFO] [stdout] 2 |     pub master_enable: bool,
[INFO] [stdout] 3 |     pub interrupt_enable_flags: u8,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     pub interrupt_request_flags: u8,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 42.59s
[INFO] running `Command { std: "docker" "inspect" "ba8ef1a029c2fdc0dcb0de71859d80d0b969943c072b90f886590da98098493b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ba8ef1a029c2fdc0dcb0de71859d80d0b969943c072b90f886590da98098493b", kill_on_drop: false }`
[INFO] [stdout] ba8ef1a029c2fdc0dcb0de71859d80d0b969943c072b90f886590da98098493b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 156edf8939c45d71540f8c74ba626d9e1bb798d0d63715b8ce492acf0280b998
[INFO] running `Command { std: "docker" "start" "-a" "156edf8939c45d71540f8c74ba626d9e1bb798d0d63715b8ce492acf0280b998", kill_on_drop: false }`
[INFO] [stdout] warning: constant `LCDC_REGISTER` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const LCDC_REGISTER: u16 = 0xFF40;
[INFO] [stdout]   |       ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIXEL_WIDTH` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | const PIXEL_WIDTH: u32 = 128;
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIXEL_HEIGHT` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const PIXEL_HEIGHT: u32 = 128;
[INFO] [stdout]   |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `VramDebugger` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub(crate) trait VramDebugger {
[INFO] [stdout]   |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VRAMFetcher` is never constructed
[INFO] [stdout]   --> src/debug/vram_fetcher.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(crate) struct VRAMFetcher {}
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `render_all_background_tiles`, `render_background_tilemap`, `combine_pixels`, `create_pixels`, and `decode_pixel` are never used
[INFO] [stdout]    --> src/debug/vram_fetcher.rs:17:19
[INFO] [stdout]     |
[INFO] [stdout] 16  | impl VRAMFetcher {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 17  |     pub(crate) fn render_all_background_tiles(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24  |     pub(crate) fn render_background_tilemap(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94  |     fn combine_pixels(data0: u8, data1: u8) -> u16 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     fn create_pixels(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn decode_pixel(color_code: u16) -> Rgba<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | struct CartridgeHeader {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] 5  |     title: String,
[INFO] [stdout] 6  |     manufacturer: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 7  |     licensee_code: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 8  |     old_licensee_code: u8,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     destination: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     version: u8,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 14 |     checksum: u8,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     global_checksum: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     MBCNone {
[INFO] [stdout]    |     ------- field in this variant
[INFO] [stdout] 64 |         ram: bool,
[INFO] [stdout] 65 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     MBC1 {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 68 |         ram: bool,
[INFO] [stdout] 69 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust_boy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     MBC2 {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 72 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ram` and `battery` are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     MMM01 {
[INFO] [stdout]    |     ----- fields in this variant
[INFO] [stdout] 75 |         ram: bool,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 76 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timer`, `ram`, and `battery` are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     MBC3 {
[INFO] [stdout]    |     ---- fields in this variant
[INFO] [stdout] 79 |         timer: bool,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 80 |         ram: bool,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 81 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `interrupt_enable_flags` and `interrupt_request_flags` are never read
[INFO] [stdout]  --> src/processor/interrupt_controller.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub(crate) struct InterruptController {
[INFO] [stdout]   |                   ------------------- fields in this struct
[INFO] [stdout] 2 |     pub master_enable: bool,
[INFO] [stdout] 3 |     pub interrupt_enable_flags: u8,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     pub interrupt_request_flags: u8,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]    --> src/processor/cpu.rs:197:16
[INFO] [stdout]     |
[INFO] [stdout] 197 |         sync::{Arc, Mutex},
[INFO] [stdout]     |                ^^^  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LCDC_REGISTER` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const LCDC_REGISTER: u16 = 0xFF40;
[INFO] [stdout]   |       ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIXEL_WIDTH` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | const PIXEL_WIDTH: u32 = 128;
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIXEL_HEIGHT` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const PIXEL_HEIGHT: u32 = 128;
[INFO] [stdout]   |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `VramDebugger` is never used
[INFO] [stdout]  --> src/debug/vram_fetcher.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub(crate) trait VramDebugger {
[INFO] [stdout]   |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VRAMFetcher` is never constructed
[INFO] [stdout]   --> src/debug/vram_fetcher.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(crate) struct VRAMFetcher {}
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `render_all_background_tiles`, `render_background_tilemap`, `combine_pixels`, `create_pixels`, and `decode_pixel` are never used
[INFO] [stdout]    --> src/debug/vram_fetcher.rs:17:19
[INFO] [stdout]     |
[INFO] [stdout] 16  | impl VRAMFetcher {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 17  |     pub(crate) fn render_all_background_tiles(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24  |     pub(crate) fn render_background_tilemap(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94  |     fn combine_pixels(data0: u8, data1: u8) -> u16 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     fn create_pixels(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn decode_pixel(color_code: u16) -> Rgba<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | struct CartridgeHeader {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] 5  |     title: String,
[INFO] [stdout] 6  |     manufacturer: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 7  |     licensee_code: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 8  |     old_licensee_code: u8,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     destination: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     version: u8,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 14 |     checksum: u8,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     global_checksum: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     MBCNone {
[INFO] [stdout]    |     ------- field in this variant
[INFO] [stdout] 64 |         ram: bool,
[INFO] [stdout] 65 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     MBC1 {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 68 |         ram: bool,
[INFO] [stdout] 69 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `battery` is never read
[INFO] [stdout]   --> src/mem/cartridge.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     MBC2 {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 72 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ram` and `battery` are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     MMM01 {
[INFO] [stdout]    |     ----- fields in this variant
[INFO] [stdout] 75 |         ram: bool,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 76 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timer`, `ram`, and `battery` are never read
[INFO] [stdout]   --> src/mem/cartridge.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     MBC3 {
[INFO] [stdout]    |     ---- fields in this variant
[INFO] [stdout] 79 |         timer: bool,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 80 |         ram: bool,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 81 |         battery: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `interrupt_enable_flags` and `interrupt_request_flags` are never read
[INFO] [stdout]  --> src/processor/interrupt_controller.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub(crate) struct InterruptController {
[INFO] [stdout]   |                   ------------------- fields in this struct
[INFO] [stdout] 2 |     pub master_enable: bool,
[INFO] [stdout] 3 |     pub interrupt_enable_flags: u8,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     pub interrupt_request_flags: u8,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.74s
[INFO] running `Command { std: "docker" "inspect" "156edf8939c45d71540f8c74ba626d9e1bb798d0d63715b8ce492acf0280b998", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "156edf8939c45d71540f8c74ba626d9e1bb798d0d63715b8ce492acf0280b998", kill_on_drop: false }`
[INFO] [stdout] 156edf8939c45d71540f8c74ba626d9e1bb798d0d63715b8ce492acf0280b998
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4ff4f62bd640b9226a3c012795937b8fd2b082582a506ae51796864b2d882cf8
[INFO] running `Command { std: "docker" "start" "-a" "4ff4f62bd640b9226a3c012795937b8fd2b082582a506ae51796864b2d882cf8", kill_on_drop: false }`
[INFO] [stderr] warning: constant `LCDC_REGISTER` is never used
[INFO] [stderr]  --> src/debug/vram_fetcher.rs:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | const LCDC_REGISTER: u16 = 0xFF40;
[INFO] [stderr]   |       ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PIXEL_WIDTH` is never used
[INFO] [stderr]  --> src/debug/vram_fetcher.rs:2:7
[INFO] [stderr]   |
[INFO] [stderr] 2 | const PIXEL_WIDTH: u32 = 128;
[INFO] [stderr]   |       ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PIXEL_HEIGHT` is never used
[INFO] [stderr]  --> src/debug/vram_fetcher.rs:3:7
[INFO] [stderr]   |
[INFO] [stderr] 3 | const PIXEL_HEIGHT: u32 = 128;
[INFO] [stderr]   |       ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `VramDebugger` is never used
[INFO] [stderr]  --> src/debug/vram_fetcher.rs:8:18
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub(crate) trait VramDebugger {
[INFO] [stderr]   |                  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VRAMFetcher` is never constructed
[INFO] [stderr]   --> src/debug/vram_fetcher.rs:14:19
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub(crate) struct VRAMFetcher {}
[INFO] [stderr]    |                   ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `render_all_background_tiles`, `render_background_tilemap`, `combine_pixels`, `create_pixels`, and `decode_pixel` are never used
[INFO] [stderr]    --> src/debug/vram_fetcher.rs:17:19
[INFO] [stderr]     |
[INFO] [stderr] 16  | impl VRAMFetcher {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] 17  |     pub(crate) fn render_all_background_tiles(
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24  |     pub(crate) fn render_background_tilemap(
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 94  |     fn combine_pixels(data0: u8, data1: u8) -> u16 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 108 |     fn create_pixels(
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 132 |     fn decode_pixel(color_code: u16) -> Rgba<u8> {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple fields are never read
[INFO] [stderr]   --> src/mem/cartridge.rs:6:5
[INFO] [stderr]    |
[INFO] [stderr] 4  | struct CartridgeHeader {
[INFO] [stderr]    |        --------------- fields in this struct
[INFO] [stderr] 5  |     title: String,
[INFO] [stderr] 6  |     manufacturer: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 7  |     licensee_code: u16,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 8  |     old_licensee_code: u8,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 12 |     destination: String,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 13 |     version: u8,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 14 |     checksum: u8,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 15 |     global_checksum: u16,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CartridgeHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `battery` is never read
[INFO] [stderr]   --> src/mem/cartridge.rs:65:9
[INFO] [stderr]    |
[INFO] [stderr] 63 |     MBCNone {
[INFO] [stderr]    |     ------- field in this variant
[INFO] [stderr] 64 |         ram: bool,
[INFO] [stderr] 65 |         battery: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `battery` is never read
[INFO] [stderr]   --> src/mem/cartridge.rs:69:9
[INFO] [stderr]    |
[INFO] [stderr] 67 |     MBC1 {
[INFO] [stderr]    |     ---- field in this variant
[INFO] [stderr] 68 |         ram: bool,
[INFO] [stderr] 69 |         battery: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `battery` is never read
[INFO] [stderr]   --> src/mem/cartridge.rs:72:9
[INFO] [stderr]    |
[INFO] [stderr] 71 |     MBC2 {
[INFO] [stderr]    |     ---- field in this variant
[INFO] [stderr] 72 |         battery: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `ram` and `battery` are never read
[INFO] [stderr]   --> src/mem/cartridge.rs:75:9
[INFO] [stderr]    |
[INFO] [stderr] 74 |     MMM01 {
[INFO] [stderr]    |     ----- fields in this variant
[INFO] [stderr] 75 |         ram: bool,
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 76 |         battery: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `timer`, `ram`, and `battery` are never read
[INFO] [stderr]   --> src/mem/cartridge.rs:79:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |     MBC3 {
[INFO] [stderr]    |     ---- fields in this variant
[INFO] [stderr] 79 |         timer: bool,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] 80 |         ram: bool,
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 81 |         battery: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CartridgeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `interrupt_enable_flags` and `interrupt_request_flags` are never read
[INFO] [stderr]  --> src/processor/interrupt_controller.rs:3:9
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub(crate) struct InterruptController {
[INFO] [stderr]   |                   ------------------- fields in this struct
[INFO] [stderr] 2 |     pub master_enable: bool,
[INFO] [stderr] 3 |     pub interrupt_enable_flags: u8,
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 4 |     pub interrupt_request_flags: u8,
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Arc` and `Mutex`
[INFO] [stderr]    --> src/processor/cpu.rs:197:16
[INFO] [stderr]     |
[INFO] [stderr] 197 |         sync::{Arc, Mutex},
[INFO] [stderr]     |                ^^^  ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `rust_boy` (lib) generated 13 warnings
[INFO] [stderr] warning: `rust_boy` (lib test) generated 14 warnings (13 duplicates) (run `cargo fix --lib -p rust_boy --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_boy-0086bac5e3a856e6)
[INFO] [stdout] running 139 tests
[INFO] [stdout] test processor::cpu::tests::adc_a_0x3b ... ok
[INFO] [stdout] test processor::cpu::tests::adc_a_e ... ok
[INFO] [stdout] test processor::cpu::tests::add_a_0xff ... ok
[INFO] [stdout] test processor::cpu::tests::adc_a_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::add_hl_hl ... ok
[INFO] [stdout] test processor::cpu::tests::and_a_0x38 ... ok
[INFO] [stdout] test processor::cpu::tests::add_sp_2 ... ok
[INFO] [stdout] test processor::cpu::tests::and_a_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::bit_0_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::add_hl_bc ... ok
[INFO] [stdout] test processor::cpu::tests::bit_7_a ... ok
[INFO] [stdout] test processor::cpu::tests::bit_1_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::bit_4_l ... ok
[INFO] [stdout] test processor::cpu::tests::add_a_b ... ok
[INFO] [stdout] test processor::cpu::tests::and_a_l ... ok
[INFO] [stdout] test processor::cpu::tests::add_a_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::call_0x8000_nz_ret ... ok
[INFO] [stdout] test processor::cpu::tests::call_0x1234 ... ok
[INFO] [stdout] test processor::cpu::tests::call_0x8000_reti ... ok
[INFO] [stdout] test processor::cpu::tests::call_0x8000_ret ... ok
[INFO] [stdout] test processor::cpu::tests::call_z_0x1234 ... ok
[INFO] [stdout] test processor::cpu::tests::ccf ... ok
[INFO] [stdout] test processor::cpu::tests::call_0x8000_z_ret ... ok
[INFO] [stdout] test processor::cpu::tests::cp_a_0x3c ... ok
[INFO] [stdout] test processor::cpu::tests::cp_a_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::cpl ... ok
[INFO] [stdout] test processor::cpu::tests::dec_r ... ok
[INFO] [stdout] test processor::cpu::tests::dec_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::dec_de ... ok
[INFO] [stdout] test processor::cpu::tests::inc_de ... ok
[INFO] [stdout] test processor::cpu::tests::ei ... ok
[INFO] [stdout] test processor::cpu::tests::inc_r ... ok
[INFO] [stdout] test processor::cpu::tests::jp_nz_0x8000 ... ok
[INFO] [stdout] test processor::cpu::tests::jp_c_0x8000 ... ok
[INFO] [stdout] test processor::cpu::tests::jp_0x8000 ... ok
[INFO] [stdout] test processor::cpu::tests::inc_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::jr_pos_5 ... ok
[INFO] [stdout] test processor::cpu::tests::jp_z_0x8000 ... ok
[INFO] [stdout] test processor::cpu::tests::jp_nc_0x8000 ... ok
[INFO] [stdout] test processor::cpu::tests::di ... ok
[INFO] [stdout] test processor::cpu::tests::jp_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::jr_nc_pos_5 ... ok
[INFO] [stdout] test processor::cpu::tests::jr_neg_5 ... ok
[INFO] [stdout] test processor::cpu::tests::jr_z_neg_5 ... ok
[INFO] [stdout] test processor::cpu::tests::ld_a_mem_34 ... ok
[INFO] [stdout] test processor::cpu::tests::ld_a_b ... ok
[INFO] [stdout] test processor::cpu::tests::ld_a_mem_bc ... ok
[INFO] [stdout] test processor::cpu::tests::ld_a_mem_c ... ok
[INFO] [stdout] test processor::cpu::tests::cp_a_b ... ok
[INFO] [stdout] test processor::cpu::tests::ld_a_mem_de ... ok
[INFO] [stdout] test processor::cpu::tests::ld_h_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::ld_a_mem_hld ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_bc_a ... ok
[INFO] [stdout] test processor::cpu::tests::ld_hl_0x3a5b ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_de_a ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_hl_a ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_hli_a ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_c_a ... ok
[INFO] [stdout] test processor::cpu::tests::ld_b_24 ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_n_a ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_nn_a ... ok
[INFO] [stdout] test processor::cpu::tests::ldhl_sp_sub_5 ... ok
[INFO] [stdout] test processor::cpu::tests::ld_a_mem_nn ... ok
[INFO] [stdout] test processor::cpu::tests::ld_a_mem_hli ... ok
[INFO] [stdout] test processor::cpu::tests::ld_b_d ... ok
[INFO] [stdout] test processor::cpu::tests::or_a_l ... ok
[INFO] [stdout] test processor::cpu::tests::nop ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_0xfff8_sp ... ok
[INFO] [stdout] test processor::cpu::tests::or_a_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::pop_bc ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_hl_24 ... ok
[INFO] [stdout] test processor::cpu::tests::ldhl_sp_add_5 ... ok
[INFO] [stdout] test processor::cpu::tests::ld_mem_hld_a ... ok
[INFO] [stdout] test processor::cpu::tests::ld_sp_hl ... ok
[INFO] [stdout] test processor::cpu::tests::res_3_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::rl_l ... ok
[INFO] [stdout] test processor::cpu::tests::or_a_0x03 ... ok
[INFO] [stdout] test processor::cpu::tests::rla ... ok
[INFO] [stdout] test processor::cpu::tests::res_7_a ... ok
[INFO] [stdout] test processor::cpu::tests::rl_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::rr_a ... ok
[INFO] [stdout] test processor::cpu::tests::rlc_b ... ok
[INFO] [stdout] test processor::cpu::tests::rr_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::rra ... ok
[INFO] [stdout] test processor::cpu::tests::rst_6 ... ok
[INFO] [stdout] test processor::cpu::tests::push_hl ... ok
[INFO] [stdout] test processor::cpu::tests::rst_7 ... ok
[INFO] [stdout] test processor::cpu::tests::rrc_c ... ok
[INFO] [stdout] test processor::cpu::tests::rst_5 ... ok
[INFO] [stdout] test processor::cpu::tests::sbc_a_0x3a ... ok
[INFO] [stdout] test processor::cpu::tests::rst_0 ... ok
[INFO] [stdout] test processor::cpu::tests::sbc_a_h ... ok
[INFO] [stdout] test processor::cpu::tests::rst_2 ... ok
[INFO] [stdout] test processor::cpu::tests::rrca ... ok
[INFO] [stdout] test processor::cpu::tests::rst_3 ... ok
[INFO] [stdout] test processor::cpu::tests::sbc_a_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::scf ... ok
[INFO] [stdout] test processor::cpu::tests::rst_1 ... ok
[INFO] [stdout] test processor::cpu::tests::set_0_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::set_1_l ... ok
[INFO] [stdout] test processor::cpu::tests::rrc_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::rlc_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::sla_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::rst_4 ... ok
[INFO] [stdout] test processor::cpu::tests::set_3_a ... ok
[INFO] [stdout] test processor::cpu::tests::sra_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::sra_a ... ok
[INFO] [stdout] test processor::cpu::tests::srl_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::sub_a_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::swap_mem_hl ... ok
[INFO] [stdout] test processor::cpu::tests::set_4_l ... ok
[INFO] [stdout] test processor::cpu::tests::xor_a_0x0f ... ok
[INFO] [stdout] test processor::cpu::tests::rlca ... ok
[INFO] [stdout] test processor::cpu::tests::srl_a ... ok
[INFO] [stdout] test processor::cpu::tests::xor_a_l ... ok
[INFO] [stdout] test processor::registers::tests::everything_setup_after_initialization_with_boot_sequence ... ok
[INFO] [stdout] test processor::registers::tests::set_af_correct ... ok
[INFO] [stdout] test processor::cpu::tests::swap_a ... ok
[INFO] [stdout] test processor::cpu::tests::sla_d ... ok
[INFO] [stdout] test processor::registers::tests::everything_setup_after_initialization ... ok
[INFO] [stdout] test processor::registers::tests::set_af_singles_correct ... ok
[INFO] [stdout] test processor::cpu::tests::xor_a_mem_hl ... ok
[INFO] [stdout] test processor::registers::tests::set_b_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_bc_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_bc_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_c_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_a_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_d_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_de_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_de_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_e_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_f_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_h_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_hl_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_hl_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_l_singles_correct ... ok
[INFO] [stdout] test processor::registers::tests::set_sp_and_pc ... ok
[INFO] [stdout] test processor::cpu::tests::sub_a_0x0f ... ok
[INFO] [stdout] test processor::cpu::tests::sub_a_h ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 139 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rust_boy
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4ff4f62bd640b9226a3c012795937b8fd2b082582a506ae51796864b2d882cf8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4ff4f62bd640b9226a3c012795937b8fd2b082582a506ae51796864b2d882cf8", kill_on_drop: false }`
[INFO] [stdout] 4ff4f62bd640b9226a3c012795937b8fd2b082582a506ae51796864b2d882cf8
