[INFO] cloning repository https://github.com/Muhammad-Abdullah-Bajwa/NesEmulator [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Muhammad-Abdullah-Bajwa/NesEmulator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMuhammad-Abdullah-Bajwa%2FNesEmulator", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMuhammad-Abdullah-Bajwa%2FNesEmulator'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d7424a8d3562f6582c34db28306d60e13f159742 [INFO] checking Muhammad-Abdullah-Bajwa/NesEmulator against try#8a0378607d6b34c242e3bfa75554871be641864b for pr-143028 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMuhammad-Abdullah-Bajwa%2FNesEmulator" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Muhammad-Abdullah-Bajwa/NesEmulator [INFO] finished tweaking git repo https://github.com/Muhammad-Abdullah-Bajwa/NesEmulator [INFO] tweaked toml for git repo https://github.com/Muhammad-Abdullah-Bajwa/NesEmulator written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Muhammad-Abdullah-Bajwa/NesEmulator on toolchain 8a0378607d6b34c242e3bfa75554871be641864b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8a0378607d6b34c242e3bfa75554871be641864b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Muhammad-Abdullah-Bajwa/NesEmulator 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" "+8a0378607d6b34c242e3bfa75554871be641864b" "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-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8a0378607d6b34c242e3bfa75554871be641864b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] eeb5ef7e0da34d57ed709e19e88abcc6740e252421be3e6821149dd41c941028 [INFO] running `Command { std: "docker" "start" "-a" "eeb5ef7e0da34d57ed709e19e88abcc6740e252421be3e6821149dd41c941028", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "eeb5ef7e0da34d57ed709e19e88abcc6740e252421be3e6821149dd41c941028", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eeb5ef7e0da34d57ed709e19e88abcc6740e252421be3e6821149dd41c941028", kill_on_drop: false }` [INFO] [stdout] eeb5ef7e0da34d57ed709e19e88abcc6740e252421be3e6821149dd41c941028 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8a0378607d6b34c242e3bfa75554871be641864b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c4704d795496cb058a707444246d8b9a18ef1196b6813fd8eab269f501302883 [INFO] running `Command { std: "docker" "start" "-a" "c4704d795496cb058a707444246d8b9a18ef1196b6813fd8eab269f501302883", kill_on_drop: false }` [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking bitflags v2.4.1 [INFO] [stderr] Checking RustNesEmulator v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::vec` [INFO] [stdout] --> src/constants.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::vec; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/cpu.rs:261:28 [INFO] [stdout] | [INFO] [stdout] 261 | let carry_val = if (self.register_status.contains(CpuFlags::CARRY)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 261 - let carry_val = if (self.register_status.contains(CpuFlags::CARRY)) { [INFO] [stdout] 261 + let carry_val = if self.register_status.contains(CpuFlags::CARRY) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::vec` [INFO] [stdout] --> src/constants.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::vec; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/cpu.rs:261:28 [INFO] [stdout] | [INFO] [stdout] 261 | let carry_val = if (self.register_status.contains(CpuFlags::CARRY)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 261 - let carry_val = if (self.register_status.contains(CpuFlags::CARRY)) { [INFO] [stdout] 261 + let carry_val = if self.register_status.contains(CpuFlags::CARRY) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Bus` is never constructed [INFO] [stdout] --> src/bus.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Bus { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Bus` is never constructed [INFO] [stdout] --> src/bus.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Bus { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `mem_read`, and `mem_write` are never used [INFO] [stdout] --> src/bus.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Bus { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 10 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn mem_read(&self, address: u16) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn mem_write(&mut self, address: u16, value: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RESET_STACK_ADDRESS` is never used [INFO] [stdout] --> src/constants.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const RESET_STACK_ADDRESS: u8 = 0xFD; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STATUS_REGISTER_INITIAL` is never used [INFO] [stdout] --> src/constants.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const STATUS_REGISTER_INITIAL: u8 = 0b00100100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STACK_START` is never used [INFO] [stdout] --> src/constants.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const STACK_START: u16 = 0x100; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_START` is never used [INFO] [stdout] --> src/constants.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const RAM_START: u16 = 0x0000; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_MIRRORS_END` is never used [INFO] [stdout] --> src/constants.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const RAM_MIRRORS_END: u16 = 0x1FFF; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PPU_REGISTERS` is never used [INFO] [stdout] --> src/constants.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const PPU_REGISTERS: u16 = 0x2000; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PPU_REGISTERS_MIRRORS_END` is never used [INFO] [stdout] --> src/constants.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const PPU_REGISTERS_MIRRORS_END: u16 = 0x3FFF; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_SIZE` is never used [INFO] [stdout] --> src/constants.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const RAM_SIZE: u16 = 2048; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IRQ_INTERRUPT_VECTOR_ADDRESS` is never used [INFO] [stdout] --> src/constants.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const IRQ_INTERRUPT_VECTOR_ADDRESS: u16 = 0xFFFE; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `U16_HIGH_BYTE_MASK` is never used [INFO] [stdout] --> src/constants.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const U16_HIGH_BYTE_MASK: u16 = 0xFF00; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `U16_LOW_BYTE_MASK` is never used [INFO] [stdout] --> src/constants.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const U16_LOW_BYTE_MASK: u16 = 0x00FF; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RESET_PROGRAM_COUNTER_ADDRESS` is never used [INFO] [stdout] --> src/constants.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const RESET_PROGRAM_COUNTER_ADDRESS: u16 = 0xFFFC; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cpu` is never constructed [INFO] [stdout] --> src/cpu.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Cpu { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `reset` are never used [INFO] [stdout] --> src/cpu.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl Cpu { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 20 | pub fn new(bus: Bus) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `compare`, `cmp`, `cpx`, and `cpy` are never used [INFO] [stdout] --> src/cpu.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 62 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 63 | fn compare(&mut self, address: u16, register_value: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn cmp(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn cpx(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | fn cpy(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/cpu.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 89 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 90 | fn branch_helper(&mut self, condition: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn blp(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn bcc(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn bcs(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | fn beq(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | fn bmi(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | fn bne(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | fn bvc(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | fn bvs(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `mem_read`, `mem_write`, `mem_read_u16`, `get_address_for_indirect`, and `mem_write_u16` are never used [INFO] [stdout] --> src/cpu.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 135 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 136 | fn mem_read(&self, address: u16) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | fn mem_write(&mut self, address: u16, value: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | fn mem_read_u16(&self, address: u16) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | fn get_address_for_indirect(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | fn mem_write_u16(&mut self, address: u16, value: u16) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `stack_push`, `stack_push_u16`, `stack_pop`, and `stack_pop_u16` are never used [INFO] [stdout] --> src/cpu.rs:174:8 [INFO] [stdout] | [INFO] [stdout] 173 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 174 | fn stack_push(&mut self, val: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | fn stack_push_u16(&mut self, val: u16) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | fn stack_pop(&mut self) -> u8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | fn stack_pop_u16(&mut self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/cpu.rs:203:8 [INFO] [stdout] | [INFO] [stdout] 202 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 203 | fn update_negative_flag(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | fn update_zero_flag(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | fn update_zero_and_negative_flags(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | fn set_carry_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | fn clear_carry_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | fn set_decimal_mode_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | fn clear_decimal_mode_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | fn set_interrupt_disable_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | fn clear_interrupt_disable_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | fn clear_overflow_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_accumulator` and `add_to_accumulator` are never used [INFO] [stdout] --> src/cpu.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 254 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 255 | fn set_accumulator(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | fn add_to_accumulator(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/cpu.rs:296:8 [INFO] [stdout] | [INFO] [stdout] 295 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 296 | fn asl_accumulator(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | fn asl(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | fn and(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | fn adc(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 334 | fn bit(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | fn brk(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 361 | fn dec(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 368 | fn dex(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 373 | fn dey(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 378 | fn eor(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 384 | fn inc(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 391 | fn inx(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | fn iny(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | fn jmp_absolute(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 406 | fn jmp_indirect(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 411 | fn jsr(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 417 | fn lda(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 422 | fn ldx(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 428 | fn ldy(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | fn lsr_accumulator(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 447 | fn lsr(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 461 | fn ora(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 466 | fn pha(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 471 | fn php(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 478 | fn pla(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 483 | fn plp(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 500 | fn rol_accumulator(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 519 | fn rol(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 539 | fn ror_accumulator(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 558 | fn ror(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 578 | fn rti(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 585 | fn rts(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 590 | fn sbc(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 604 | fn sta(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 609 | fn stx(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 614 | fn sty(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 619 | fn tax(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 625 | fn tay(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 631 | fn tsx(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 637 | fn txa(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 642 | fn txs(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 647 | fn tya(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/operation.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum AddressingModes { [INFO] [stdout] | --------------- variants in this enum [INFO] [stdout] 3 | Implicit, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 4 | Accumulator, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 5 | Immediate, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 6 | ZeroPage, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 7 | ZeroPageX, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 8 | ZeroPageY, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 9 | Relative, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 10 | Absolute, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 11 | AbsoluteX, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 12 | AbsoluteY, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 13 | Indirect, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | IndexedIndirect, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | IndirectIndexed, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AddressingModes` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/operation.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Operation { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 28 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BitMasks` should have a snake case name [INFO] [stdout] --> src/constants.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub mod BitMasks { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `bit_masks` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `mem_read`, and `mem_write` are never used [INFO] [stdout] --> src/bus.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Bus { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 10 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn mem_read(&self, address: u16) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn mem_write(&mut self, address: u16, value: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RESET_STACK_ADDRESS` is never used [INFO] [stdout] --> src/constants.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const RESET_STACK_ADDRESS: u8 = 0xFD; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STATUS_REGISTER_INITIAL` is never used [INFO] [stdout] --> src/constants.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const STATUS_REGISTER_INITIAL: u8 = 0b00100100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STACK_START` is never used [INFO] [stdout] --> src/constants.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const STACK_START: u16 = 0x100; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_START` is never used [INFO] [stdout] --> src/constants.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const RAM_START: u16 = 0x0000; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_MIRRORS_END` is never used [INFO] [stdout] --> src/constants.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const RAM_MIRRORS_END: u16 = 0x1FFF; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PPU_REGISTERS` is never used [INFO] [stdout] --> src/constants.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const PPU_REGISTERS: u16 = 0x2000; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PPU_REGISTERS_MIRRORS_END` is never used [INFO] [stdout] --> src/constants.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const PPU_REGISTERS_MIRRORS_END: u16 = 0x3FFF; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_SIZE` is never used [INFO] [stdout] --> src/constants.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const RAM_SIZE: u16 = 2048; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IRQ_INTERRUPT_VECTOR_ADDRESS` is never used [INFO] [stdout] --> src/constants.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const IRQ_INTERRUPT_VECTOR_ADDRESS: u16 = 0xFFFE; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `U16_HIGH_BYTE_MASK` is never used [INFO] [stdout] --> src/constants.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const U16_HIGH_BYTE_MASK: u16 = 0xFF00; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `U16_LOW_BYTE_MASK` is never used [INFO] [stdout] --> src/constants.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const U16_LOW_BYTE_MASK: u16 = 0x00FF; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RESET_PROGRAM_COUNTER_ADDRESS` is never used [INFO] [stdout] --> src/constants.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const RESET_PROGRAM_COUNTER_ADDRESS: u16 = 0xFFFC; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cpu` is never constructed [INFO] [stdout] --> src/cpu.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Cpu { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `reset` are never used [INFO] [stdout] --> src/cpu.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl Cpu { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 20 | pub fn new(bus: Bus) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `compare`, `cmp`, `cpx`, and `cpy` are never used [INFO] [stdout] --> src/cpu.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 62 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 63 | fn compare(&mut self, address: u16, register_value: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn cmp(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn cpx(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | fn cpy(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/cpu.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 89 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 90 | fn branch_helper(&mut self, condition: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn blp(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn bcc(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn bcs(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | fn beq(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | fn bmi(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | fn bne(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | fn bvc(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | fn bvs(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `mem_read`, `mem_write`, `mem_read_u16`, `get_address_for_indirect`, and `mem_write_u16` are never used [INFO] [stdout] --> src/cpu.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 135 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 136 | fn mem_read(&self, address: u16) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | fn mem_write(&mut self, address: u16, value: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | fn mem_read_u16(&self, address: u16) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | fn get_address_for_indirect(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | fn mem_write_u16(&mut self, address: u16, value: u16) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `stack_push`, `stack_push_u16`, `stack_pop`, and `stack_pop_u16` are never used [INFO] [stdout] --> src/cpu.rs:174:8 [INFO] [stdout] | [INFO] [stdout] 173 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 174 | fn stack_push(&mut self, val: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | fn stack_push_u16(&mut self, val: u16) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | fn stack_pop(&mut self) -> u8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | fn stack_pop_u16(&mut self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/cpu.rs:203:8 [INFO] [stdout] | [INFO] [stdout] 202 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 203 | fn update_negative_flag(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | fn update_zero_flag(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | fn update_zero_and_negative_flags(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | fn set_carry_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | fn clear_carry_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | fn set_decimal_mode_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | fn clear_decimal_mode_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | fn set_interrupt_disable_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | fn clear_interrupt_disable_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | fn clear_overflow_flag(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_accumulator` and `add_to_accumulator` are never used [INFO] [stdout] --> src/cpu.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 254 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 255 | fn set_accumulator(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | fn add_to_accumulator(&mut self, value: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/cpu.rs:296:8 [INFO] [stdout] | [INFO] [stdout] 295 | impl Cpu { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 296 | fn asl_accumulator(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | fn asl(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | fn and(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | fn adc(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 334 | fn bit(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | fn brk(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 361 | fn dec(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 368 | fn dex(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 373 | fn dey(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 378 | fn eor(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 384 | fn inc(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 391 | fn inx(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | fn iny(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | fn jmp_absolute(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 406 | fn jmp_indirect(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 411 | fn jsr(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 417 | fn lda(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 422 | fn ldx(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 428 | fn ldy(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | fn lsr_accumulator(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 447 | fn lsr(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 461 | fn ora(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 466 | fn pha(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 471 | fn php(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 478 | fn pla(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 483 | fn plp(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 500 | fn rol_accumulator(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 519 | fn rol(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 539 | fn ror_accumulator(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 558 | fn ror(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 578 | fn rti(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 585 | fn rts(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 590 | fn sbc(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 604 | fn sta(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 609 | fn stx(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 614 | fn sty(&mut self, address: u16) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 619 | fn tax(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 625 | fn tay(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 631 | fn tsx(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 637 | fn txa(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 642 | fn txs(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 647 | fn tya(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/operation.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum AddressingModes { [INFO] [stdout] | --------------- variants in this enum [INFO] [stdout] 3 | Implicit, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 4 | Accumulator, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 5 | Immediate, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 6 | ZeroPage, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 7 | ZeroPageX, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 8 | ZeroPageY, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 9 | Relative, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 10 | Absolute, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 11 | AbsoluteX, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 12 | AbsoluteY, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 13 | Indirect, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | IndexedIndirect, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | IndirectIndexed, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AddressingModes` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/operation.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Operation { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 28 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BitMasks` should have a snake case name [INFO] [stdout] --> src/constants.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub mod BitMasks { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `bit_masks` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.32s [INFO] running `Command { std: "docker" "inspect" "c4704d795496cb058a707444246d8b9a18ef1196b6813fd8eab269f501302883", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c4704d795496cb058a707444246d8b9a18ef1196b6813fd8eab269f501302883", kill_on_drop: false }` [INFO] [stdout] c4704d795496cb058a707444246d8b9a18ef1196b6813fd8eab269f501302883