[INFO] cloning repository https://github.com/CMGSK/remu
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/CMGSK/remu" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCMGSK%2Fremu", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCMGSK%2Fremu'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5652f80712a57a654eaf5f5e4104c6f67f35f47f
[INFO] building CMGSK/remu against master#ad211ced81509462cdfe4c29ed10f97279a0acae for pr-135216
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCMGSK%2Fremu" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/CMGSK/remu on toolchain ad211ced81509462cdfe4c29ed10f97279a0acae
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/CMGSK/remu
[INFO] finished tweaking git repo https://github.com/CMGSK/remu
[INFO] tweaked toml for git repo https://github.com/CMGSK/remu written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/CMGSK/remu 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" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 91d2258607e6074ecd480a4bd927cb96b7c4d72c9874f4ef323d98fe969ebfa3
[INFO] running `Command { std: "docker" "start" "-a" "91d2258607e6074ecd480a4bd927cb96b7c4d72c9874f4ef323d98fe969ebfa3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "91d2258607e6074ecd480a4bd927cb96b7c4d72c9874f4ef323d98fe969ebfa3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "91d2258607e6074ecd480a4bd927cb96b7c4d72c9874f4ef323d98fe969ebfa3", kill_on_drop: false }`
[INFO] [stdout] 91d2258607e6074ecd480a4bd927cb96b7c4d72c9874f4ef323d98fe969ebfa3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 64595a8f508ef7f2d5f750a88050cf4a715c21fba96ce2443f162b6dc60a3c96
[INFO] running `Command { std: "docker" "start" "-a" "64595a8f508ef7f2d5f750a88050cf4a715c21fba96ce2443f162b6dc60a3c96", kill_on_drop: false }`
[INFO] [stderr]    Compiling remu_gb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `VRAM_SIZE`
[INFO] [stdout]  --> src/cpu/memory.rs:1:50
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::gpu::gpu::{GPU, VRAM_BEGIN, VRAM_END, VRAM_SIZE};
[INFO] [stdout]   |                                                  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/cpu/cpu.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/cpu/cpu.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::panicking`
[INFO] [stdout]  --> src/cpu/cpu.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread::panicking;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Flags`
[INFO] [stdout]  --> src/cpu/cpu.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::cpu::registers::{Registers, Flags};
[INFO] [stdout]   |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::id`
[INFO] [stdout]  --> src/gpu/gpu.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::process::id;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/cpu/cpu.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Registers` is never constructed
[INFO] [stdout]  --> src/cpu/registers.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Registers {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_bc`, `set_bc`, `get_de`, `set_de`, `get_hl`, and `set_hl` are never used
[INFO] [stdout]   --> src/cpu/registers.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Registers {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 14 |     pub fn get_bc(&self) -> u16 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn set_bc(&mut self, val: u16) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn get_de(&self) -> u16 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn set_de(&mut self, val: u16) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn get_hl(&self) -> u16 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn set_hl(&mut self, val: u16) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Instruction` is never used
[INFO] [stdout]  --> src/cpu/instructions.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum Instruction {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PrefixTarget` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum PrefixTarget {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IncDecTarget` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum IncDecTarget {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ArithmeticTarget` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum ArithmeticTarget {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LoadByteTarget` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub enum LoadByteTarget {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LoadByteSource` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub enum LoadByteSource {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LoadType` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:54:10
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum LoadType {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JumpTest` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:58:10
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub enum JumpTest {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_byte`, `from_byte_prefixed`, and `from_byte_unprefixed` are never used
[INFO] [stdout]   --> src/cpu/instructions.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Instruction {
[INFO] [stdout]    | ---------------- associated functions in this implementation
[INFO] [stdout] 67 |     pub fn from_byte(byte: u8, prefix_instr: bool) -> Option<Instruction> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     fn from_byte_prefixed(byte: u8) -> Option<Instruction> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     fn from_byte_unprefixed(byte: u8) -> Option<Instruction> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemoryBus` is never constructed
[INFO] [stdout]  --> src/cpu/memory.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MemoryBus{
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_byte` and `write_byte` are never used
[INFO] [stdout]   --> src/cpu/memory.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl MemoryBus {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 8  |     pub fn read_byte(&self, addr: u16) -> u8{
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn write_byte(&mut self, addr: u16, byte: u8) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CPU` is never constructed
[INFO] [stdout]   --> src/cpu/cpu.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct CPU {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/cpu/cpu.rs:24:8
[INFO] [stdout]     |
[INFO] [stdout] 22  | impl CPU {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 23  |     // Advance in the program reading.
[INFO] [stdout] 24  |     fn step(&mut self){
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43  |     fn read_next_byte(&self) -> u8 { 0 }
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46  |     fn read_next_word(&self) -> u16 { 0 }
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49  |     fn execute(&mut self, instruction: Instruction) -> u16 {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn call(&mut self, is_jump: bool) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn ret(&mut self, is_jump: bool) -> u16 {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn push(&mut self, val: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn pop(&mut self) -> u16 {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     fn jump(&self, is_jump: bool) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     fn add(&mut self, val: u8) -> u8 {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VRAM_BEGIN` is never used
[INFO] [stdout]  --> src/gpu/gpu.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const VRAM_BEGIN: usize = 0x8000;
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VRAM_END` is never used
[INFO] [stdout]  --> src/gpu/gpu.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const VRAM_END: usize = 0x9FFF;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VRAM_SIZE` is never used
[INFO] [stdout]  --> src/gpu/gpu.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const VRAM_SIZE: usize = VRAM_END - VRAM_BEGIN + 1;
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TilePixelValue` is never used
[INFO] [stdout]  --> src/gpu/gpu.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | enum TilePixelValue {
[INFO] [stdout]   |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Tile` is never used
[INFO] [stdout]   --> src/gpu/gpu.rs:16:6
[INFO] [stdout]    |
[INFO] [stdout] 16 | type Tile = [[TilePixelValue; 8]; 8];
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `empty_tile` is never used
[INFO] [stdout]   --> src/gpu/gpu.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn empty_tile() -> Tile {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GPU` is never constructed
[INFO] [stdout]   --> src/gpu/gpu.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct GPU {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_vram` and `write_vram` are never used
[INFO] [stdout]   --> src/gpu/gpu.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl GPU {
[INFO] [stdout]    | -------- methods in this implementation
[INFO] [stdout] 28 |
[INFO] [stdout] 29 |     pub fn read_vram(&self, addr:usize) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn write_vram(&mut self, idx: usize, val: u8) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.33s
[INFO] running `Command { std: "docker" "inspect" "64595a8f508ef7f2d5f750a88050cf4a715c21fba96ce2443f162b6dc60a3c96", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "64595a8f508ef7f2d5f750a88050cf4a715c21fba96ce2443f162b6dc60a3c96", kill_on_drop: false }`
[INFO] [stdout] 64595a8f508ef7f2d5f750a88050cf4a715c21fba96ce2443f162b6dc60a3c96
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4cde911140a84033683190a70d80d5680957a152db2f7717ee07f9cec3fe3f85
[INFO] running `Command { std: "docker" "start" "-a" "4cde911140a84033683190a70d80d5680957a152db2f7717ee07f9cec3fe3f85", kill_on_drop: false }`
[INFO] [stderr]    Compiling remu_gb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `VRAM_SIZE`
[INFO] [stdout]  --> src/cpu/memory.rs:1:50
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::gpu::gpu::{GPU, VRAM_BEGIN, VRAM_END, VRAM_SIZE};
[INFO] [stdout]   |                                                  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/cpu/cpu.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/cpu/cpu.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::panicking`
[INFO] [stdout]  --> src/cpu/cpu.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread::panicking;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Flags`
[INFO] [stdout]  --> src/cpu/cpu.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::cpu::registers::{Registers, Flags};
[INFO] [stdout]   |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::id`
[INFO] [stdout]  --> src/gpu/gpu.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::process::id;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/cpu/cpu.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Registers` is never constructed
[INFO] [stdout]  --> src/cpu/registers.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Registers {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_bc`, `set_bc`, `get_de`, `set_de`, `get_hl`, and `set_hl` are never used
[INFO] [stdout]   --> src/cpu/registers.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Registers {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 14 |     pub fn get_bc(&self) -> u16 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn set_bc(&mut self, val: u16) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn get_de(&self) -> u16 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn set_de(&mut self, val: u16) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn get_hl(&self) -> u16 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn set_hl(&mut self, val: u16) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Instruction` is never used
[INFO] [stdout]  --> src/cpu/instructions.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum Instruction {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PrefixTarget` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum PrefixTarget {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IncDecTarget` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum IncDecTarget {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ArithmeticTarget` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum ArithmeticTarget {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LoadByteTarget` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub enum LoadByteTarget {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LoadByteSource` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub enum LoadByteSource {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LoadType` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:54:10
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum LoadType {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JumpTest` is never used
[INFO] [stdout]   --> src/cpu/instructions.rs:58:10
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub enum JumpTest {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_byte`, `from_byte_prefixed`, and `from_byte_unprefixed` are never used
[INFO] [stdout]   --> src/cpu/instructions.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Instruction {
[INFO] [stdout]    | ---------------- associated functions in this implementation
[INFO] [stdout] 67 |     pub fn from_byte(byte: u8, prefix_instr: bool) -> Option<Instruction> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     fn from_byte_prefixed(byte: u8) -> Option<Instruction> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     fn from_byte_unprefixed(byte: u8) -> Option<Instruction> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemoryBus` is never constructed
[INFO] [stdout]  --> src/cpu/memory.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MemoryBus{
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_byte` and `write_byte` are never used
[INFO] [stdout]   --> src/cpu/memory.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl MemoryBus {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 8  |     pub fn read_byte(&self, addr: u16) -> u8{
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn write_byte(&mut self, addr: u16, byte: u8) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CPU` is never constructed
[INFO] [stdout]   --> src/cpu/cpu.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct CPU {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/cpu/cpu.rs:24:8
[INFO] [stdout]     |
[INFO] [stdout] 22  | impl CPU {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 23  |     // Advance in the program reading.
[INFO] [stdout] 24  |     fn step(&mut self){
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43  |     fn read_next_byte(&self) -> u8 { 0 }
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46  |     fn read_next_word(&self) -> u16 { 0 }
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49  |     fn execute(&mut self, instruction: Instruction) -> u16 {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn call(&mut self, is_jump: bool) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn ret(&mut self, is_jump: bool) -> u16 {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn push(&mut self, val: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn pop(&mut self) -> u16 {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     fn jump(&self, is_jump: bool) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     fn add(&mut self, val: u8) -> u8 {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VRAM_BEGIN` is never used
[INFO] [stdout]  --> src/gpu/gpu.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const VRAM_BEGIN: usize = 0x8000;
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VRAM_END` is never used
[INFO] [stdout]  --> src/gpu/gpu.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const VRAM_END: usize = 0x9FFF;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VRAM_SIZE` is never used
[INFO] [stdout]  --> src/gpu/gpu.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const VRAM_SIZE: usize = VRAM_END - VRAM_BEGIN + 1;
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TilePixelValue` is never used
[INFO] [stdout]  --> src/gpu/gpu.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | enum TilePixelValue {
[INFO] [stdout]   |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Tile` is never used
[INFO] [stdout]   --> src/gpu/gpu.rs:16:6
[INFO] [stdout]    |
[INFO] [stdout] 16 | type Tile = [[TilePixelValue; 8]; 8];
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `empty_tile` is never used
[INFO] [stdout]   --> src/gpu/gpu.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn empty_tile() -> Tile {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GPU` is never constructed
[INFO] [stdout]   --> src/gpu/gpu.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct GPU {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_vram` and `write_vram` are never used
[INFO] [stdout]   --> src/gpu/gpu.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl GPU {
[INFO] [stdout]    | -------- methods in this implementation
[INFO] [stdout] 28 |
[INFO] [stdout] 29 |     pub fn read_vram(&self, addr:usize) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn write_vram(&mut self, idx: usize, val: u8) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.41s
[INFO] running `Command { std: "docker" "inspect" "4cde911140a84033683190a70d80d5680957a152db2f7717ee07f9cec3fe3f85", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4cde911140a84033683190a70d80d5680957a152db2f7717ee07f9cec3fe3f85", kill_on_drop: false }`
[INFO] [stdout] 4cde911140a84033683190a70d80d5680957a152db2f7717ee07f9cec3fe3f85
