[INFO] cloning repository https://github.com/jtharris/nes_play
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jtharris/nes_play" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtharris%2Fnes_play", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtharris%2Fnes_play'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c8da5eef9b4cf0d61de57a2c374a2ed64ac9724b
[INFO] checking jtharris/nes_play against master#3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0 for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtharris%2Fnes_play" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jtharris/nes_play
[INFO] finished tweaking git repo https://github.com/jtharris/nes_play
[INFO] tweaked toml for git repo https://github.com/jtharris/nes_play written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jtharris/nes_play on toolchain 3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jtharris/nes_play 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" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dd5f95b0800d99f458eed8f681a1959979edb1b477b305954beb31f1b90df8ea
[INFO] running `Command { std: "docker" "start" "-a" "dd5f95b0800d99f458eed8f681a1959979edb1b477b305954beb31f1b90df8ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dd5f95b0800d99f458eed8f681a1959979edb1b477b305954beb31f1b90df8ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dd5f95b0800d99f458eed8f681a1959979edb1b477b305954beb31f1b90df8ea", kill_on_drop: false }`
[INFO] [stdout] dd5f95b0800d99f458eed8f681a1959979edb1b477b305954beb31f1b90df8ea
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ff4bb492103a209286ea2180c48cfbf64f7434c161b258d578d1c10b03b4a3bd
[INFO] running `Command { std: "docker" "start" "-a" "ff4bb492103a209286ea2180c48cfbf64f7434c161b258d578d1c10b03b4a3bd", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.104
[INFO] [stderr]     Checking unicode-width v0.1.9
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking nes_play v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `write`
[INFO] [stdout]  --> src/cpu.rs:2:27
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::{Formatter, write};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cpu::StatusFlag`
[INFO] [stdout]    --> src/cpu.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 350 |     use crate::cpu::StatusFlag;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `format`
[INFO] [stdout]  --> src/instructions/bcs.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Display, format, Formatter};
[INFO] [stdout]   |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/instructions/cmp.rs:107:43
[INFO] [stdout]     |
[INFO] [stdout] 107 |         CMP::new(Immediate(0xFF)).execute((&mut cpu));
[INFO] [stdout]     |                                           ^        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 107 -         CMP::new(Immediate(0xFF)).execute((&mut cpu));
[INFO] [stdout] 107 +         CMP::new(Immediate(0xFF)).execute(&mut cpu);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/instructions/cmp.rs:121:43
[INFO] [stdout]     |
[INFO] [stdout] 121 |         CMP::new(Immediate(0x41)).execute((&mut cpu));
[INFO] [stdout]     |                                           ^        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 121 -         CMP::new(Immediate(0x41)).execute((&mut cpu));
[INFO] [stdout] 121 +         CMP::new(Immediate(0x41)).execute(&mut cpu);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Display` and `Formatter`
[INFO] [stdout]  --> src/instructions/factory.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Display, Formatter};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::instructions::jmp::JumpAddressMode::Absolute`
[INFO] [stdout]   --> src/instructions/lax.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     use crate::instructions::jmp::JumpAddressMode::Absolute;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cpu::AddressingMode::IndirectX`
[INFO] [stdout]   --> src/instructions/sre.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     use crate::cpu::AddressingMode::IndirectX;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert::TryInto`
[INFO] [stdout]  --> src/commands.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::convert::TryInto;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `INes2Header`
[INFO] [stdout]  --> src/commands.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::rom::{INes2Header, INesRom};
[INFO] [stdout]   |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::instructions::factory::generate_instruction`
[INFO] [stdout]  --> src/commands.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::instructions::factory::generate_instruction;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `write`
[INFO] [stdout]  --> src/cpu.rs:2:27
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::{Formatter, write};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `format`
[INFO] [stdout]  --> src/instructions/bcs.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Display, format, Formatter};
[INFO] [stdout]   |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Display` and `Formatter`
[INFO] [stdout]  --> src/instructions/factory.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Display, Formatter};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert::TryInto`
[INFO] [stdout]  --> src/commands.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::convert::TryInto;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `INes2Header`
[INFO] [stdout]  --> src/commands.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::rom::{INes2Header, INesRom};
[INFO] [stdout]   |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::instructions::factory::generate_instruction`
[INFO] [stdout]  --> src/commands.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::instructions::factory::generate_instruction;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base`
[INFO] [stdout]    --> src/cpu.rs:103:40
[INFO] [stdout]     |
[INFO] [stdout] 103 |             &AddressingMode::AbsoluteX(base) => 4,
[INFO] [stdout]     |                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_base`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base`
[INFO] [stdout]    --> src/cpu.rs:104:40
[INFO] [stdout]     |
[INFO] [stdout] 104 |             &AddressingMode::AbsoluteY(base) => 4,
[INFO] [stdout]     |                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/cpu.rs:106:40
[INFO] [stdout]     |
[INFO] [stdout] 106 |             &AddressingMode::IndirectY(address) => 5,
[INFO] [stdout]     |                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cycle` is assigned to, but never used
[INFO] [stdout]    --> src/cpu.rs:183:17
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let mut cycle: usize = 4;  // TODO:  Make this configurable?
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_cycle` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu.rs:336:28
[INFO] [stdout]     |
[INFO] [stdout] 336 |     fn debug_string(&self, cpu: &CPU) -> String {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/commands.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut log = File::create(&self.log_filename);
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `empty` and `write_mem16` are never used
[INFO] [stdout]    --> src/cpu.rs:19:12
[INFO] [stdout]     |
[INFO] [stdout] 18  | impl CPU {
[INFO] [stdout]     | -------- associated items in this implementation
[INFO] [stdout] 19  |     pub fn empty() -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn write_mem16(&mut self, addr: u16, data: u16) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Mirroring` is never used
[INFO] [stdout]   --> src/rom.rs:15:6
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Mirroring {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `mirroring` is never used
[INFO] [stdout]   --> src/rom.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl INes2Header {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     fn mirroring(&self) -> Mirroring {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ppu_register_address` is never used
[INFO] [stdout]   --> src/bus.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn ppu_register_address(addr: u16) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `empty` and `write_mem16` are never used
[INFO] [stdout]   --> src/bus.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Bus {
[INFO] [stdout]    | -------- associated items in this implementation
[INFO] [stdout] 28 |     pub fn empty() -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn write_mem16(&mut self, addr: u16, data: u16) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |             write!(log, "{:04X}  ", pc);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 | /             match &instruction {
[INFO] [stdout] 191 | |                 Some(inst) => write!(log, "{:<8} ", inst.bytes_string()),
[INFO] [stdout] 192 | |                 None => write!(log, "       ")
[INFO] [stdout] 193 | |             };
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 190 |             let _ = match &instruction {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:195:13
[INFO] [stdout]     |
[INFO] [stdout] 195 | /             match &instruction {
[INFO] [stdout] 196 | |                 Some(inst) => {
[INFO] [stdout] 197 | |                     if inst.illegal() {
[INFO] [stdout] 198 | |                         write!(log, "*{:<32}", inst.debug_string(&self))
[INFO] [stdout] ...   |
[INFO] [stdout] 203 | |                 None => write!(log, "{:<25}", "No Instruction")
[INFO] [stdout] 204 | |             };
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 195 |             let _ = match &instruction {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 | /             write!(log, "A:{:02X} X:{:02X} Y:{:02X} P:{:02X} SP:{:02X} ",
[INFO] [stdout] 206 | |                    self.accumulator, self.index_register_x, self.index_register_y,
[INFO] [stdout] 207 | |                    self.processor_status, self.stack_pointer);
[INFO] [stdout]     | |_____________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |             writeln!(log);
[INFO] [stdout]     |             ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `$crate::write` which comes from the expansion of the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base`
[INFO] [stdout]    --> src/cpu.rs:103:40
[INFO] [stdout]     |
[INFO] [stdout] 103 |             &AddressingMode::AbsoluteX(base) => 4,
[INFO] [stdout]     |                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_base`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base`
[INFO] [stdout]    --> src/cpu.rs:104:40
[INFO] [stdout]     |
[INFO] [stdout] 104 |             &AddressingMode::AbsoluteY(base) => 4,
[INFO] [stdout]     |                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/cpu.rs:106:40
[INFO] [stdout]     |
[INFO] [stdout] 106 |             &AddressingMode::IndirectY(address) => 5,
[INFO] [stdout]     |                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cycle` is assigned to, but never used
[INFO] [stdout]    --> src/cpu.rs:183:17
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let mut cycle: usize = 4;  // TODO:  Make this configurable?
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_cycle` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu.rs:336:28
[INFO] [stdout]     |
[INFO] [stdout] 336 |     fn debug_string(&self, cpu: &CPU) -> String {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/commands.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut log = File::create(&self.log_filename);
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Mirroring` is never used
[INFO] [stdout]   --> src/rom.rs:15:6
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Mirroring {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `mirroring` is never used
[INFO] [stdout]   --> src/rom.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl INes2Header {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     fn mirroring(&self) -> Mirroring {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ppu_register_address` is never used
[INFO] [stdout]   --> src/bus.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn ppu_register_address(addr: u16) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |             write!(log, "{:04X}  ", pc);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 | /             match &instruction {
[INFO] [stdout] 191 | |                 Some(inst) => write!(log, "{:<8} ", inst.bytes_string()),
[INFO] [stdout] 192 | |                 None => write!(log, "       ")
[INFO] [stdout] 193 | |             };
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 190 |             let _ = match &instruction {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:195:13
[INFO] [stdout]     |
[INFO] [stdout] 195 | /             match &instruction {
[INFO] [stdout] 196 | |                 Some(inst) => {
[INFO] [stdout] 197 | |                     if inst.illegal() {
[INFO] [stdout] 198 | |                         write!(log, "*{:<32}", inst.debug_string(&self))
[INFO] [stdout] ...   |
[INFO] [stdout] 203 | |                 None => write!(log, "{:<25}", "No Instruction")
[INFO] [stdout] 204 | |             };
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 195 |             let _ = match &instruction {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 | /             write!(log, "A:{:02X} X:{:02X} Y:{:02X} P:{:02X} SP:{:02X} ",
[INFO] [stdout] 206 | |                    self.accumulator, self.index_register_x, self.index_register_y,
[INFO] [stdout] 207 | |                    self.processor_status, self.stack_pointer);
[INFO] [stdout]     | |_____________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/cpu.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |             writeln!(log);
[INFO] [stdout]     |             ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `$crate::write` which comes from the expansion of the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.84s
[INFO] running `Command { std: "docker" "inspect" "ff4bb492103a209286ea2180c48cfbf64f7434c161b258d578d1c10b03b4a3bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ff4bb492103a209286ea2180c48cfbf64f7434c161b258d578d1c10b03b4a3bd", kill_on_drop: false }`
[INFO] [stdout] ff4bb492103a209286ea2180c48cfbf64f7434c161b258d578d1c10b03b4a3bd
