[INFO] updating cached repository https://github.com/kregoslup/r_nes [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] [stderr] From https://github.com/kregoslup/r_nes [INFO] [stderr] d76b893..93474a2 master -> master [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 93474a2540e04b1c04047f436d648e2ce4adf091 [INFO] testing kregoslup/r_nes against master#28742a1146f10a4f09369baad027a464acb7a766 for pr-71274 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkregoslup%2Fr_nes" "/workspace/builds/worker-7/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/kregoslup/r_nes on toolchain 28742a1146f10a4f09369baad027a464acb7a766 [INFO] running `"/workspace/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/kregoslup/r_nes [INFO] finished tweaking git repo https://github.com/kregoslup/r_nes [INFO] tweaked toml for git repo https://github.com/kregoslup/r_nes written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/kregoslup/r_nes already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "build" "--frozen"` [INFO] [stdout] 9c4288b114067d0abc4122b8ba74a625baa0d80e855709af8510486a8e19d93a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "9c4288b114067d0abc4122b8ba74a625baa0d80e855709af8510486a8e19d93a"` [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling dirs-sys v0.3.4 [INFO] [stderr] Compiling dirs v2.0.2 [INFO] [stderr] Compiling r_nes v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `AddressingMode` [INFO] [stderr] --> src/cpu.rs:6:37 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::addressing::{Addressing, AddressingMode, AddressingRegistry}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/cpu.rs:105:45 [INFO] [stderr] | [INFO] [stderr] 105 | if self.overflow_occurred(lhs, rhs, (result as u8)) { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/cpu.rs:154:32 [INFO] [stderr] | [INFO] [stderr] 154 | let indirect_address = (self.fetch(self.program_counter) as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::addressing::Addressing` [INFO] [stderr] --> src/op_code.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::addressing::Addressing; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `dirs::home_dir` [INFO] [stderr] --> src/bus.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use dirs::home_dir; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stderr] --> src/addressing.rs:1:19 [INFO] [stderr] | [INFO] [stderr] 1 | use std::borrow::{BorrowMut, Borrow}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addressing` [INFO] [stderr] --> src/cpu.rs:182:36 [INFO] [stderr] | [INFO] [stderr] 182 | fn indirect_address(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addressing` [INFO] [stderr] --> src/cpu.rs:194:28 [INFO] [stderr] | [INFO] [stderr] 194 | fn relative(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `borrow` [INFO] [stderr] --> src/cpu.rs:636:13 [INFO] [stderr] | [INFO] [stderr] 636 | let borrow = self.get_borrow(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_page` [INFO] [stderr] --> src/cpu.rs:677:13 [INFO] [stderr] | [INFO] [stderr] 677 | let lhs_page = lhs % 255; [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_page` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rhs_page` [INFO] [stderr] --> src/cpu.rs:678:13 [INFO] [stderr] | [INFO] [stderr] 678 | let rhs_page = rhs % 255; [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rhs_page` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:435:13 [INFO] [stderr] | [INFO] [stderr] 435 | let mut cycles = 6; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:444:13 [INFO] [stderr] | [INFO] [stderr] 444 | let mut cycles = 6; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:605:13 [INFO] [stderr] | [INFO] [stderr] 605 | let mut result = (Wrapping(target) - Wrapping(value)).0; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:620:13 [INFO] [stderr] | [INFO] [stderr] 620 | let mut result = (self.acc as u16) + (value as u16) + (self.status.contains(Flags::CARRY) as u16); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:637:13 [INFO] [stderr] | [INFO] [stderr] 637 | let mut result = Wrapping(self.acc as u16) - (Wrapping(value as u16) - Wrapping(self.status.contains(Flags::CARRY) as u16)); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/cpu.rs:67:5 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn new(bus: Bus) -> Cpu { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `set_carry` [INFO] [stderr] --> src/cpu.rs:80:5 [INFO] [stderr] | [INFO] [stderr] 80 | fn set_carry(&mut self, result: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `set_zero` [INFO] [stderr] --> src/cpu.rs:88:5 [INFO] [stderr] | [INFO] [stderr] 88 | fn set_zero(&mut self, result: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `set_negative` [INFO] [stderr] --> src/cpu.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | fn set_negative(&mut self, result: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `set_overflow` [INFO] [stderr] --> src/cpu.rs:104:5 [INFO] [stderr] | [INFO] [stderr] 104 | fn set_overflow(&mut self, lhs: u8, rhs: u8, result: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `set_borrow` [INFO] [stderr] --> src/cpu.rs:112:5 [INFO] [stderr] | [INFO] [stderr] 112 | fn set_borrow(&mut self, result: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `indexed_indirect_address` [INFO] [stderr] --> src/cpu.rs:120:5 [INFO] [stderr] | [INFO] [stderr] 120 | fn indexed_indirect_address(&mut self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero_page_address` [INFO] [stderr] --> src/cpu.rs:131:5 [INFO] [stderr] | [INFO] [stderr] 131 | fn zero_page_address(&mut self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `immediate_address` [INFO] [stderr] --> src/cpu.rs:138:5 [INFO] [stderr] | [INFO] [stderr] 138 | fn immediate_address(&mut self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `absolute_address` [INFO] [stderr] --> src/cpu.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | fn absolute_address(&mut self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `indirect_indexed_address` [INFO] [stderr] --> src/cpu.rs:152:5 [INFO] [stderr] | [INFO] [stderr] 152 | fn indirect_indexed_address(&mut self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `indexed_address` [INFO] [stderr] --> src/cpu.rs:162:5 [INFO] [stderr] | [INFO] [stderr] 162 | fn indexed_address(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero_page_indexed_address` [INFO] [stderr] --> src/cpu.rs:174:5 [INFO] [stderr] | [INFO] [stderr] 174 | fn zero_page_indexed_address(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `absolute_indexed_address` [INFO] [stderr] --> src/cpu.rs:178:5 [INFO] [stderr] | [INFO] [stderr] 178 | fn absolute_indexed_address(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `indirect_address` [INFO] [stderr] --> src/cpu.rs:182:5 [INFO] [stderr] | [INFO] [stderr] 182 | fn indirect_address(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `relative` [INFO] [stderr] --> src/cpu.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | fn relative(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fetch_address` [INFO] [stderr] --> src/cpu.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 199 | fn fetch_address(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fetch_with_addressing_mode` [INFO] [stderr] --> src/cpu.rs:233:5 [INFO] [stderr] | [INFO] [stderr] 233 | fn fetch_with_addressing_mode(&mut self, addressing: &Addressing) -> (u8, Option) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fetch` [INFO] [stderr] --> src/cpu.rs:242:5 [INFO] [stderr] | [INFO] [stderr] 242 | fn fetch(&mut self, address: u16) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `store` [INFO] [stderr] --> src/cpu.rs:246:5 [INFO] [stderr] | [INFO] [stderr] 246 | fn store(&mut self, value: u8, address: Option) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `push_flags_on_stack` [INFO] [stderr] --> src/cpu.rs:253:5 [INFO] [stderr] | [INFO] [stderr] 253 | fn push_flags_on_stack(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `push_status_on_stack` [INFO] [stderr] --> src/cpu.rs:257:5 [INFO] [stderr] | [INFO] [stderr] 257 | fn push_status_on_stack(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `push_program_counter_on_stack` [INFO] [stderr] --> src/cpu.rs:262:5 [INFO] [stderr] | [INFO] [stderr] 262 | fn push_program_counter_on_stack(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `push_on_stack` [INFO] [stderr] --> src/cpu.rs:267:5 [INFO] [stderr] | [INFO] [stderr] 267 | fn push_on_stack(&mut self, value: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `read_flags_from_stack` [INFO] [stderr] --> src/cpu.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | fn read_flags_from_stack(&mut self) -> Flags { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `read_pc_from_stack` [INFO] [stderr] --> src/cpu.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | fn read_pc_from_stack(&mut self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `pull_from_stack` [INFO] [stderr] --> src/cpu.rs:285:5 [INFO] [stderr] | [INFO] [stderr] 285 | fn pull_from_stack(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `evaluate` [INFO] [stderr] --> src/cpu.rs:291:5 [INFO] [stderr] | [INFO] [stderr] 291 | pub fn evaluate(&mut self, op_code: OpCode) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `decode_op_code` [INFO] [stderr] --> src/cpu.rs:306:5 [INFO] [stderr] | [INFO] [stderr] 306 | fn decode_op_code(&mut self, op_code: OpCode) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `push_accumulator` [INFO] [stderr] --> src/cpu.rs:337:5 [INFO] [stderr] | [INFO] [stderr] 337 | fn push_accumulator(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `pull_accumulator` [INFO] [stderr] --> src/cpu.rs:343:5 [INFO] [stderr] | [INFO] [stderr] 343 | fn pull_accumulator(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `push_processor_status` [INFO] [stderr] --> src/cpu.rs:351:5 [INFO] [stderr] | [INFO] [stderr] 351 | fn push_processor_status(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `pull_processor_status` [INFO] [stderr] --> src/cpu.rs:357:5 [INFO] [stderr] | [INFO] [stderr] 357 | fn pull_processor_status(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `branch` [INFO] [stderr] --> src/cpu.rs:363:5 [INFO] [stderr] | [INFO] [stderr] 363 | fn branch(&mut self, addressing: Addressing, branch_instruction: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `extract_branch_flag` [INFO] [stderr] --> src/cpu.rs:384:5 [INFO] [stderr] | [INFO] [stderr] 384 | fn extract_branch_flag(&mut self, branch_instruction: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `extract_branch_equality` [INFO] [stderr] --> src/cpu.rs:390:5 [INFO] [stderr] | [INFO] [stderr] 390 | fn extract_branch_equality(&mut self, branch_instruction: u8) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `branch_on_flag` [INFO] [stderr] --> src/cpu.rs:394:5 [INFO] [stderr] | [INFO] [stderr] 394 | fn branch_on_flag(&mut self, addressing: Addressing, branch_equality: bool, flag: Flags) -> (bool, bool) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `bit_test` [INFO] [stderr] --> src/cpu.rs:407:5 [INFO] [stderr] | [INFO] [stderr] 407 | fn bit_test(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `jump` [INFO] [stderr] --> src/cpu.rs:424:5 [INFO] [stderr] | [INFO] [stderr] 424 | fn jump(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `jump_to_subroutine` [INFO] [stderr] --> src/cpu.rs:434:5 [INFO] [stderr] | [INFO] [stderr] 434 | fn jump_to_subroutine(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `return_from` [INFO] [stderr] --> src/cpu.rs:443:5 [INFO] [stderr] | [INFO] [stderr] 443 | fn return_from(&mut self, read_flags: bool) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `store_register` [INFO] [stderr] --> src/cpu.rs:456:5 [INFO] [stderr] | [INFO] [stderr] 456 | fn store_register(&mut self, addressing: Addressing, target: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `offset_by_one` [INFO] [stderr] --> src/cpu.rs:466:5 [INFO] [stderr] | [INFO] [stderr] 466 | fn offset_by_one(&mut self, addressing: Addressing, increment: bool) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `load_register` [INFO] [stderr] --> src/cpu.rs:482:5 [INFO] [stderr] | [INFO] [stderr] 482 | fn load_register(&mut self, addressing: Addressing, target: AddressingRegistry) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `shift_left` [INFO] [stderr] --> src/cpu.rs:497:5 [INFO] [stderr] | [INFO] [stderr] 497 | fn shift_left(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `logical_shift_right` [INFO] [stderr] --> src/cpu.rs:510:5 [INFO] [stderr] | [INFO] [stderr] 510 | fn logical_shift_right(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `rotate_left` [INFO] [stderr] --> src/cpu.rs:524:5 [INFO] [stderr] | [INFO] [stderr] 524 | fn rotate_left(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `rotate_right` [INFO] [stderr] --> src/cpu.rs:539:5 [INFO] [stderr] | [INFO] [stderr] 539 | fn rotate_right(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `set_rotation_flags` [INFO] [stderr] --> src/cpu.rs:554:5 [INFO] [stderr] | [INFO] [stderr] 554 | fn set_rotation_flags(&mut self, result: u8, carry: bool) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `force_break` [INFO] [stderr] --> src/cpu.rs:560:5 [INFO] [stderr] | [INFO] [stderr] 560 | fn force_break(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `store_accumulator` [INFO] [stderr] --> src/cpu.rs:574:5 [INFO] [stderr] | [INFO] [stderr] 574 | fn store_accumulator(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `load_accumulator` [INFO] [stderr] --> src/cpu.rs:582:5 [INFO] [stderr] | [INFO] [stderr] 582 | fn load_accumulator(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `carry_arithmetic` [INFO] [stderr] --> src/cpu.rs:592:5 [INFO] [stderr] | [INFO] [stderr] 592 | fn carry_arithmetic(&mut self, operation: fn(u8, u8) -> (u8, bool), lhs: u8, rhs: u8) -> (u8, bool) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `overflow_occurred` [INFO] [stderr] --> src/cpu.rs:598:5 [INFO] [stderr] | [INFO] [stderr] 598 | fn overflow_occurred(&self, lhs: u8, rhs: u8, result: u8) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `compare` [INFO] [stderr] --> src/cpu.rs:602:5 [INFO] [stderr] | [INFO] [stderr] 602 | fn compare(&mut self, addressing: Addressing, target: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_with_carry` [INFO] [stderr] --> src/cpu.rs:617:5 [INFO] [stderr] | [INFO] [stderr] 617 | fn add_with_carry(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `sub_with_borrow` [INFO] [stderr] --> src/cpu.rs:633:5 [INFO] [stderr] | [INFO] [stderr] 633 | fn sub_with_borrow(&mut self, addressing: Addressing) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `bitwise_instruction` [INFO] [stderr] --> src/cpu.rs:649:5 [INFO] [stderr] | [INFO] [stderr] 649 | fn bitwise_instruction(&mut self, addressing: Addressing, operation: fn(u8, u8) -> u8, additional_cycle: bool) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `count_additional_cycles` [INFO] [stderr] --> src/cpu.rs:662:5 [INFO] [stderr] | [INFO] [stderr] 662 | fn count_additional_cycles(&mut self, mut cycles: u8, add_cycles: bool, additional_cycle: bool) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `page_boundary_crossed` [INFO] [stderr] --> src/cpu.rs:672:5 [INFO] [stderr] | [INFO] [stderr] 672 | fn page_boundary_crossed(&self, value: u8) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_on_different_page` [INFO] [stderr] --> src/cpu.rs:676:5 [INFO] [stderr] | [INFO] [stderr] 676 | fn is_on_different_page(&self, lhs: u16, rhs: u16) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_borrow` [INFO] [stderr] --> src/cpu.rs:682:5 [INFO] [stderr] | [INFO] [stderr] 682 | fn get_borrow(&mut self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `OpCode` [INFO] [stderr] --> src/op_code.rs:3:12 [INFO] [stderr] | [INFO] [stderr] 3 | pub struct OpCode { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/op_code.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn new(value: u8) -> OpCode { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `upper_op_code` [INFO] [stderr] --> src/op_code.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn upper_op_code(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `mid_op_code` [INFO] [stderr] --> src/op_code.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn mid_op_code(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `lower_op_code` [INFO] [stderr] --> src/op_code.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn lower_op_code(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `load_rom` [INFO] [stderr] --> src/bus.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn load_rom(path: &Path) -> Bus { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/bus.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new(memory: Vec) -> Bus { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fetch` [INFO] [stderr] --> src/bus.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn fetch(&self, address: u16) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `store` [INFO] [stderr] --> src/bus.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | pub fn store(&mut self, value: u8, address: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_file` [INFO] [stderr] --> src/bus.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | fn read_file(path: &Path) -> Vec { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Addressing` [INFO] [stderr] --> src/addressing.rs:3:12 [INFO] [stderr] | [INFO] [stderr] 3 | pub struct Addressing { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `IndexedIndirect` [INFO] [stderr] --> src/addressing.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | IndexedIndirect, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `IndirectIndexed` [INFO] [stderr] --> src/addressing.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | IndirectIndexed, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ZeroPage` [INFO] [stderr] --> src/addressing.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | ZeroPage, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Immediate` [INFO] [stderr] --> src/addressing.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | Immediate, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Absolute` [INFO] [stderr] --> src/addressing.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | Absolute, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `AbsoluteIndexed` [INFO] [stderr] --> src/addressing.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | AbsoluteIndexed, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ZeroPageIndexed` [INFO] [stderr] --> src/addressing.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | ZeroPageIndexed, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Accumulator` [INFO] [stderr] --> src/addressing.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | Accumulator, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Indirect` [INFO] [stderr] --> src/addressing.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | Indirect, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Relative` [INFO] [stderr] --> src/addressing.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | Relative [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `X` [INFO] [stderr] --> src/addressing.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | X, [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Y` [INFO] [stderr] --> src/addressing.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | Y [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `indexed_indirect` [INFO] [stderr] --> src/addressing.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn indexed_indirect() -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `indirect_indexed` [INFO] [stderr] --> src/addressing.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn indirect_indexed() -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero_page` [INFO] [stderr] --> src/addressing.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn zero_page() -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `immediate` [INFO] [stderr] --> src/addressing.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn immediate() -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `absolute` [INFO] [stderr] --> src/addressing.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn absolute() -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `absolute_indexed` [INFO] [stderr] --> src/addressing.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn absolute_indexed(reg: Option, add_cycles: bool) -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero_page_indexed` [INFO] [stderr] --> src/addressing.rs:79:5 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn zero_page_indexed(reg: Option, add_cycles: bool) -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `accumulator` [INFO] [stderr] --> src/addressing.rs:87:5 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn accumulator() -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `indirect` [INFO] [stderr] --> src/addressing.rs:95:5 [INFO] [stderr] | [INFO] [stderr] 95 | pub fn indirect() -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `relative` [INFO] [stderr] --> src/addressing.rs:103:5 [INFO] [stderr] | [INFO] [stderr] 103 | pub fn relative() -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `to_register_specific_addressing` [INFO] [stderr] --> src/addressing.rs:111:5 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn to_register_specific_addressing(&self) -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `from_op_code` [INFO] [stderr] --> src/addressing.rs:130:5 [INFO] [stderr] | [INFO] [stderr] 130 | pub fn from_op_code(mid_op_code: u8, lower_op_code: u8) -> Addressing { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `combine_u8` [INFO] [stderr] --> src/util.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn combine_u8(lsb: u8, msb: u8) -> u16 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `msb` [INFO] [stderr] --> src/util.rs:8:8 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn msb(value: u8) -> u8 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `nth_bit` [INFO] [stderr] --> src/util.rs:12:8 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn nth_bit(input: u8, n: u8) -> bool { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lsb` [INFO] [stderr] --> src/util.rs:20:8 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn lsb(value: u8) -> u8 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu.rs:673:9 [INFO] [stderr] | [INFO] [stderr] 673 | value > 0x00FF [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/bus.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | file.read_to_end(&mut data); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 119 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3.04s [INFO] running `"docker" "inspect" "9c4288b114067d0abc4122b8ba74a625baa0d80e855709af8510486a8e19d93a"` [INFO] running `"docker" "rm" "-f" "9c4288b114067d0abc4122b8ba74a625baa0d80e855709af8510486a8e19d93a"` [INFO] [stdout] 9c4288b114067d0abc4122b8ba74a625baa0d80e855709af8510486a8e19d93a [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 8de8c9b9fb97fdc6b8fce48440c33f03a60407b97e7b34041737503fefb9b59a [INFO] running `"docker" "start" "-a" "8de8c9b9fb97fdc6b8fce48440c33f03a60407b97e7b34041737503fefb9b59a"` [INFO] [stderr] Compiling r_nes v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `AddressingMode` [INFO] [stderr] --> src/cpu.rs:6:37 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::addressing::{Addressing, AddressingMode, AddressingRegistry}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/cpu.rs:105:45 [INFO] [stderr] | [INFO] [stderr] 105 | if self.overflow_occurred(lhs, rhs, (result as u8)) { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/cpu.rs:154:32 [INFO] [stderr] | [INFO] [stderr] 154 | let indirect_address = (self.fetch(self.program_counter) as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/cpu.rs:1109:36 [INFO] [stderr] | [INFO] [stderr] 1109 | let stored_acc = cpu.fetch(((cpu.stack_pointer + 1) as u16)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::addressing::Addressing` [INFO] [stderr] --> src/op_code.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::addressing::Addressing; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> src/op_code.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stderr] --> src/addressing.rs:1:19 [INFO] [stderr] | [INFO] [stderr] 1 | use std::borrow::{BorrowMut, Borrow}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addressing` [INFO] [stderr] --> src/cpu.rs:182:36 [INFO] [stderr] | [INFO] [stderr] 182 | fn indirect_address(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addressing` [INFO] [stderr] --> src/cpu.rs:194:28 [INFO] [stderr] | [INFO] [stderr] 194 | fn relative(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `borrow` [INFO] [stderr] --> src/cpu.rs:636:13 [INFO] [stderr] | [INFO] [stderr] 636 | let borrow = self.get_borrow(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_page` [INFO] [stderr] --> src/cpu.rs:677:13 [INFO] [stderr] | [INFO] [stderr] 677 | let lhs_page = lhs % 255; [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_page` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rhs_page` [INFO] [stderr] --> src/cpu.rs:678:13 [INFO] [stderr] | [INFO] [stderr] 678 | let rhs_page = rhs % 255; [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rhs_page` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `flags_on_stack` [INFO] [stderr] --> src/cpu.rs:1055:13 [INFO] [stderr] | [INFO] [stderr] 1055 | let flags_on_stack = Flags::NEGATIVE | Flags::PLACEHOLDER | Flags::OVERFLOW; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags_on_stack` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:435:13 [INFO] [stderr] | [INFO] [stderr] 435 | let mut cycles = 6; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:444:13 [INFO] [stderr] | [INFO] [stderr] 444 | let mut cycles = 6; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:605:13 [INFO] [stderr] | [INFO] [stderr] 605 | let mut result = (Wrapping(target) - Wrapping(value)).0; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:620:13 [INFO] [stderr] | [INFO] [stderr] 620 | let mut result = (self.acc as u16) + (value as u16) + (self.status.contains(Flags::CARRY) as u16); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:637:13 [INFO] [stderr] | [INFO] [stderr] 637 | let mut result = Wrapping(self.acc as u16) - (Wrapping(value as u16) - Wrapping(self.status.contains(Flags::CARRY) as u16)); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:693:13 [INFO] [stderr] | [INFO] [stderr] 693 | let mut bus = Bus::new(input); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:1072:13 [INFO] [stderr] | [INFO] [stderr] 1072 | let mut memory = vec![0; len]; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:1103:13 [INFO] [stderr] | [INFO] [stderr] 1103 | let mut memory = vec![0; len]; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `carry_arithmetic` [INFO] [stderr] --> src/cpu.rs:592:5 [INFO] [stderr] | [INFO] [stderr] 592 | fn carry_arithmetic(&mut self, operation: fn(u8, u8) -> (u8, bool), lhs: u8, rhs: u8) -> (u8, bool) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `load_rom` [INFO] [stderr] --> src/bus.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn load_rom(path: &Path) -> Bus { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu.rs:673:9 [INFO] [stderr] | [INFO] [stderr] 673 | value > 0x00FF [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused comparison that must be used [INFO] [stderr] --> src/cpu.rs:957:9 [INFO] [stderr] | [INFO] [stderr] 957 | cpu.acc == 0; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/bus.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | file.read_to_end(&mut data); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.79s [INFO] running `"docker" "inspect" "8de8c9b9fb97fdc6b8fce48440c33f03a60407b97e7b34041737503fefb9b59a"` [INFO] running `"docker" "rm" "-f" "8de8c9b9fb97fdc6b8fce48440c33f03a60407b97e7b34041737503fefb9b59a"` [INFO] [stdout] 8de8c9b9fb97fdc6b8fce48440c33f03a60407b97e7b34041737503fefb9b59a [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "test" "--frozen"` [INFO] [stdout] d0a9f54bb6f8c31258cd97235a7d432c7be477ccc3e2184a8e13338719d4e3d9 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "d0a9f54bb6f8c31258cd97235a7d432c7be477ccc3e2184a8e13338719d4e3d9"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused import: `AddressingMode` [INFO] [stderr] --> src/cpu.rs:6:37 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::addressing::{Addressing, AddressingMode, AddressingRegistry}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/cpu.rs:105:45 [INFO] [stderr] | [INFO] [stderr] 105 | if self.overflow_occurred(lhs, rhs, (result as u8)) { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/cpu.rs:154:32 [INFO] [stderr] | [INFO] [stderr] 154 | let indirect_address = (self.fetch(self.program_counter) as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/cpu.rs:1109:36 [INFO] [stderr] | [INFO] [stderr] 1109 | let stored_acc = cpu.fetch(((cpu.stack_pointer + 1) as u16)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::addressing::Addressing` [INFO] [stderr] --> src/op_code.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::addressing::Addressing; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> src/op_code.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stderr] --> src/addressing.rs:1:19 [INFO] [stderr] | [INFO] [stderr] 1 | use std::borrow::{BorrowMut, Borrow}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addressing` [INFO] [stderr] --> src/cpu.rs:182:36 [INFO] [stderr] | [INFO] [stderr] 182 | fn indirect_address(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addressing` [INFO] [stderr] --> src/cpu.rs:194:28 [INFO] [stderr] | [INFO] [stderr] 194 | fn relative(&mut self, addressing: &Addressing) -> u16 { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `borrow` [INFO] [stderr] --> src/cpu.rs:636:13 [INFO] [stderr] | [INFO] [stderr] 636 | let borrow = self.get_borrow(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_page` [INFO] [stderr] --> src/cpu.rs:677:13 [INFO] [stderr] | [INFO] [stderr] 677 | let lhs_page = lhs % 255; [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_page` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rhs_page` [INFO] [stderr] --> src/cpu.rs:678:13 [INFO] [stderr] | [INFO] [stderr] 678 | let rhs_page = rhs % 255; [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rhs_page` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `flags_on_stack` [INFO] [stderr] --> src/cpu.rs:1055:13 [INFO] [stderr] | [INFO] [stderr] 1055 | let flags_on_stack = Flags::NEGATIVE | Flags::PLACEHOLDER | Flags::OVERFLOW; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags_on_stack` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:435:13 [INFO] [stderr] | [INFO] [stderr] 435 | let mut cycles = 6; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:444:13 [INFO] [stderr] | [INFO] [stderr] 444 | let mut cycles = 6; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:605:13 [INFO] [stderr] | [INFO] [stderr] 605 | let mut result = (Wrapping(target) - Wrapping(value)).0; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:620:13 [INFO] [stderr] | [INFO] [stderr] 620 | let mut result = (self.acc as u16) + (value as u16) + (self.status.contains(Flags::CARRY) as u16); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:637:13 [INFO] [stderr] | [INFO] [stderr] 637 | let mut result = Wrapping(self.acc as u16) - (Wrapping(value as u16) - Wrapping(self.status.contains(Flags::CARRY) as u16)); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:693:13 [INFO] [stderr] | [INFO] [stderr] 693 | let mut bus = Bus::new(input); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:1072:13 [INFO] [stderr] | [INFO] [stderr] 1072 | let mut memory = vec![0; len]; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:1103:13 [INFO] [stderr] | [INFO] [stderr] 1103 | let mut memory = vec![0; len]; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `carry_arithmetic` [INFO] [stderr] --> src/cpu.rs:592:5 [INFO] [stderr] | [INFO] [stderr] 592 | fn carry_arithmetic(&mut self, operation: fn(u8, u8) -> (u8, bool), lhs: u8, rhs: u8) -> (u8, bool) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `load_rom` [INFO] [stderr] --> src/bus.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn load_rom(path: &Path) -> Bus { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu.rs:673:9 [INFO] [stderr] | [INFO] [stderr] 673 | value > 0x00FF [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused comparison that must be used [INFO] [stderr] --> src/cpu.rs:957:9 [INFO] [stderr] | [INFO] [stderr] 957 | cpu.acc == 0; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/bus.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | file.read_to_end(&mut data); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.16s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/r_nes-0413206e6e44ab51 [INFO] [stdout] [INFO] [stdout] running 42 tests [INFO] [stdout] test bus::tests::test_read_file ... ignored [INFO] [stdout] test cpu::tests::test_borrow ... ignored [INFO] [stdout] test cpu::tests::test_bit_and ... ok [INFO] [stdout] test cpu::tests::test_bit_test ... ok [INFO] [stdout] test cpu::tests::test_absolute_indexed ... ok [INFO] [stdout] test cpu::tests::test_adc ... ok [INFO] [stdout] test cpu::tests::test_absolute ... ok [INFO] [stdout] test cpu::tests::test_bit_xor ... ok [INFO] [stdout] test cpu::tests::test_immediate ... ok [INFO] [stdout] test cpu::tests::test_bit_or ... ok [INFO] [stdout] test cpu::tests::test_carry ... ok [INFO] [stdout] test cpu::tests::test_branch_on_flag ... ok [INFO] [stdout] test cpu::tests::test_decrement ... ok [INFO] [stdout] test cpu::tests::test_compare ... ok [INFO] [stdout] test cpu::tests::test_indirect_indexed ... ok [INFO] [stdout] test cpu::tests::test_jmp_indirect ... ok [INFO] [stdout] test cpu::tests::test_jmp ... ok [INFO] [stdout] test cpu::tests::test_increment ... ok [INFO] [stdout] test cpu::tests::test_indexed_indirect ... ok [INFO] [stdout] test cpu::tests::test_load_register_x ... ok [INFO] [stdout] test cpu::tests::test_overflow_sub ... ignored [INFO] [stdout] test cpu::tests::test_load_register_y ... ok [INFO] [stdout] test cpu::tests::test_logical_shift_right ... ok [INFO] [stdout] test cpu::tests::test_overflow_add ... ok [INFO] [stdout] test cpu::tests::test_load_accumulator ... ok [INFO] [stdout] test cpu::tests::test_push_acc ... ok [INFO] [stdout] test cpu::tests::test_rotate_left ... ok [INFO] [stdout] test cpu::tests::test_store_accumulator ... ok [INFO] [stdout] test cpu::tests::test_jsr ... ok [INFO] [stdout] test cpu::tests::test_break ... ok [INFO] [stdout] test cpu::tests::test_rotate_right ... ok [INFO] [stdout] test cpu::tests::test_php ... ok [INFO] [stdout] test cpu::tests::test_shift_left ... ok [INFO] [stdout] test cpu::tests::test_zero_page_indexed ... ok [INFO] [stdout] test cpu::tests::test_store_register_y ... ok [INFO] [stdout] test cpu::tests::test_zero_page ... ok [INFO] [stdout] test cpu::tests::test_pull_acc ... ok [INFO] [stdout] test cpu::tests::test_store_register_x ... ok [INFO] [stdout] test cpu::tests::test_sbc ... ok [INFO] [stderr] error: test failed, to rerun pass '--bin r_nes' [INFO] [stdout] test cpu::tests::test_plp ... FAILED [INFO] [stdout] test cpu::tests::test_rti ... FAILED [INFO] [stdout] test cpu::tests::test_rts ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- cpu::tests::test_plp stdout ---- [INFO] [stdout] Evaluating op code, hex: 0x28, bin: 0b101000 [INFO] [stdout] thread 'cpu::tests::test_plp' panicked at 'attempt to add with overflow', src/cpu.rs:286:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x564846a6eea4 - backtrace::backtrace::libunwind::trace::hbb4ce8c04526962e [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x564846a6eea4 - backtrace::backtrace::trace_unsynchronized::h79251c088e7be038 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x564846a6eea4 - std::sys_common::backtrace::_print_fmt::h6b0ea30a9223acae [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x564846a6eea4 - ::fmt::h4d51ef07ce58e54b [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x564846a97abc - core::fmt::write::he16b9c1345d8565e [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x564846a1be05 - std::io::Write::write_fmt::hc31efe493f037457 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x564846a694c1 - std::io::impls::>::write_fmt::hfcb1ff6c5b834381 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x564846a71775 - std::sys_common::backtrace::_print::h9288fa7d9f6629cb [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x564846a71775 - std::sys_common::backtrace::print::h82e606e62781d8af [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x564846a71775 - std::panicking::default_hook::{{closure}}::h1fe350ecbf7604e4 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x564846a7145b - std::panicking::default_hook::h1b8b42953fdc841d [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x564846a71dd2 - std::panicking::rust_panic_with_hook::he73826f4bb75a21e [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x564846a719bb - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x564846a964e1 - core::panicking::panic_fmt::hc8f9a0b2af5fb585 [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x564846a9642d - core::panicking::panic::hc3c435d4bc248f19 [INFO] [stdout] at src/libcore/panicking.rs:54 [INFO] [stdout] 15: 0x564846a12a73 - r_nes::cpu::Cpu::pull_from_stack::h9b0457f34b6a2f01 [INFO] [stdout] at src/cpu.rs:286 [INFO] [stdout] 16: 0x564846a12903 - r_nes::cpu::Cpu::read_flags_from_stack::h74e4f3e8b4663015 [INFO] [stdout] at src/cpu.rs:274 [INFO] [stdout] 17: 0x564846a137a8 - r_nes::cpu::Cpu::pull_processor_status::hd529ca03e7fc5810 [INFO] [stdout] at src/cpu.rs:359 [INFO] [stdout] 18: 0x564846a12c48 - r_nes::cpu::Cpu::evaluate::h314e064f586f0ca1 [INFO] [stdout] at src/cpu.rs:296 [INFO] [stdout] 19: 0x564846a0ebee - r_nes::cpu::tests::test_plp::hb0ea4978fac991ec [INFO] [stdout] at src/cpu.rs:1095 [INFO] [stdout] 20: 0x564846a0ea7a - r_nes::cpu::tests::test_plp::{{closure}}::h5d370be98ac70885 [INFO] [stdout] at src/cpu.rs:1085 [INFO] [stdout] 21: 0x564846a17c0e - core::ops::function::FnOnce::call_once::h87b1408ecb6f2a83 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libcore/ops/function.rs:232 [INFO] [stdout] 22: 0x564846a27cff - as core::ops::function::FnOnce>::call_once::he1ba1da20629a2d8 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 23: 0x564846a432fe - as core::ops::function::FnOnce<()>>::call_once::hf94927858761de4a [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:318 [INFO] [stdout] 24: 0x564846a432fe - std::panicking::try::do_call::h1585003392664d93 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:331 [INFO] [stdout] 25: 0x564846a432fe - std::panicking::try::h43d950f958a74468 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:274 [INFO] [stdout] 26: 0x564846a432fe - std::panic::catch_unwind::hb5284de2977ddeea [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:394 [INFO] [stdout] 27: 0x564846a432fe - test::run_test_in_process::had39bb305b26a3ae [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 28: 0x564846a432fe - test::run_test::run_test_inner::{{closure}}::h12b1756b854ada1a [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 29: 0x564846a1b2b6 - std::sys_common::backtrace::__rust_begin_short_backtrace::hec04b80bece92bf9 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 30: 0x564846a205d5 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::heca431434c1ac418 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/thread/mod.rs:475 [INFO] [stdout] 31: 0x564846a205d5 - as core::ops::function::FnOnce<()>>::call_once::he2457d582c032747 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:318 [INFO] [stdout] 32: 0x564846a205d5 - std::panicking::try::do_call::hbcd49dc3823e8b28 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:331 [INFO] [stdout] 33: 0x564846a205d5 - std::panicking::try::h1ba95c07dd8d422b [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:274 [INFO] [stdout] 34: 0x564846a205d5 - std::panic::catch_unwind::h95854794ba9eee4c [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:394 [INFO] [stdout] 35: 0x564846a205d5 - std::thread::Builder::spawn_unchecked::{{closure}}::h4e297b8574092d6e [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/thread/mod.rs:474 [INFO] [stdout] 36: 0x564846a205d5 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1b855aad7f5ac67e [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libcore/ops/function.rs:232 [INFO] [stdout] 37: 0x564846a6568f - as core::ops::function::FnOnce>::call_once::h48069b269ca48108 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 38: 0x564846a785b3 - as core::ops::function::FnOnce>::call_once::heff660b32cd3afd8 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 39: 0x564846a785b3 - std::sys::unix::thread::Thread::new::thread_start::ha538939ed1e2e958 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 40: 0x7f6a790646db - start_thread [INFO] [stdout] 41: 0x7f6a78b7588f - __clone [INFO] [stdout] 42: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- cpu::tests::test_rti stdout ---- [INFO] [stdout] Evaluating op code, hex: 0x40, bin: 0b1000000 [INFO] [stdout] thread 'cpu::tests::test_rti' panicked at 'attempt to add with overflow', src/cpu.rs:286:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x564846a6eea4 - backtrace::backtrace::libunwind::trace::hbb4ce8c04526962e [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x564846a6eea4 - backtrace::backtrace::trace_unsynchronized::h79251c088e7be038 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x564846a6eea4 - std::sys_common::backtrace::_print_fmt::h6b0ea30a9223acae [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x564846a6eea4 - ::fmt::h4d51ef07ce58e54b [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x564846a97abc - core::fmt::write::he16b9c1345d8565e [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x564846a1be05 - std::io::Write::write_fmt::hc31efe493f037457 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x564846a694c1 - std::io::impls::>::write_fmt::hfcb1ff6c5b834381 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x564846a71775 - std::sys_common::backtrace::_print::h9288fa7d9f6629cb [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x564846a71775 - std::sys_common::backtrace::print::h82e606e62781d8af [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x564846a71775 - std::panicking::default_hook::{{closure}}::h1fe350ecbf7604e4 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x564846a7145b - std::panicking::default_hook::h1b8b42953fdc841d [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x564846a71dd2 - std::panicking::rust_panic_with_hook::he73826f4bb75a21e [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x564846a719bb - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x564846a964e1 - core::panicking::panic_fmt::hc8f9a0b2af5fb585 [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x564846a9642d - core::panicking::panic::hc3c435d4bc248f19 [INFO] [stdout] at src/libcore/panicking.rs:54 [INFO] [stdout] 15: 0x564846a12a73 - r_nes::cpu::Cpu::pull_from_stack::h9b0457f34b6a2f01 [INFO] [stdout] at src/cpu.rs:286 [INFO] [stdout] 16: 0x564846a12973 - r_nes::cpu::Cpu::read_pc_from_stack::hfc97462044a7e6d1 [INFO] [stdout] at src/cpu.rs:279 [INFO] [stdout] 17: 0x564846a1419d - r_nes::cpu::Cpu::return_from::h37ad35e6e5e02fb8 [INFO] [stdout] at src/cpu.rs:448 [INFO] [stdout] 18: 0x564846a12c86 - r_nes::cpu::Cpu::evaluate::h314e064f586f0ca1 [INFO] [stdout] at src/cpu.rs:299 [INFO] [stdout] 19: 0x564846a0df5e - r_nes::cpu::tests::test_rti::ha71d3489ed69207b [INFO] [stdout] at src/cpu.rs:1046 [INFO] [stdout] 20: 0x564846a0dd2a - r_nes::cpu::tests::test_rti::{{closure}}::hccc17e96ce137e7d [INFO] [stdout] at src/cpu.rs:1032 [INFO] [stdout] 21: 0x564846a17f1e - core::ops::function::FnOnce::call_once::hfda7a3e54b95767f [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libcore/ops/function.rs:232 [INFO] [stdout] 22: 0x564846a27cff - as core::ops::function::FnOnce>::call_once::he1ba1da20629a2d8 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 23: 0x564846a432fe - as core::ops::function::FnOnce<()>>::call_once::hf94927858761de4a [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:318 [INFO] [stdout] 24: 0x564846a432fe - std::panicking::try::do_call::h1585003392664d93 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:331 [INFO] [stdout] 25: 0x564846a432fe - std::panicking::try::h43d950f958a74468 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:274 [INFO] [stdout] 26: 0x564846a432fe - std::panic::catch_unwind::hb5284de2977ddeea [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:394 [INFO] [stdout] 27: 0x564846a432fe - test::run_test_in_process::had39bb305b26a3ae [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 28: 0x564846a432fe - test::run_test::run_test_inner::{{closure}}::h12b1756b854ada1a [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 29: 0x564846a1b2b6 - std::sys_common::backtrace::__rust_begin_short_backtrace::hec04b80bece92bf9 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 30: 0x564846a205d5 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::heca431434c1ac418 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/thread/mod.rs:475 [INFO] [stdout] 31: 0x564846a205d5 - as core::ops::function::FnOnce<()>>::call_once::he2457d582c032747 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:318 [INFO] [stdout] 32: 0x564846a205d5 - std::panicking::try::do_call::hbcd49dc3823e8b28 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:331 [INFO] [stdout] 33: 0x564846a205d5 - std::panicking::try::h1ba95c07dd8d422b [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:274 [INFO] [stdout] 34: 0x564846a205d5 - std::panic::catch_unwind::h95854794ba9eee4c [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:394 [INFO] [stdout] 35: 0x564846a205d5 - std::thread::Builder::spawn_unchecked::{{closure}}::h4e297b8574092d6e [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/thread/mod.rs:474 [INFO] [stdout] 36: 0x564846a205d5 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1b855aad7f5ac67e [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libcore/ops/function.rs:232 [INFO] [stdout] 37: 0x564846a6568f - as core::ops::function::FnOnce>::call_once::h48069b269ca48108 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 38: 0x564846a785b3 - as core::ops::function::FnOnce>::call_once::heff660b32cd3afd8 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 39: 0x564846a785b3 - std::sys::unix::thread::Thread::new::thread_start::ha538939ed1e2e958 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 40: 0x7f6a790646db - start_thread [INFO] [stdout] 41: 0x7f6a78b7588f - __clone [INFO] [stdout] 42: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- cpu::tests::test_rts stdout ---- [INFO] [stdout] Evaluating op code, hex: 0x60, bin: 0b1100000 [INFO] [stdout] thread 'cpu::tests::test_rts' panicked at 'attempt to add with overflow', src/cpu.rs:280:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x564846a6eea4 - backtrace::backtrace::libunwind::trace::hbb4ce8c04526962e [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x564846a6eea4 - backtrace::backtrace::trace_unsynchronized::h79251c088e7be038 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x564846a6eea4 - std::sys_common::backtrace::_print_fmt::h6b0ea30a9223acae [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x564846a6eea4 - ::fmt::h4d51ef07ce58e54b [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x564846a97abc - core::fmt::write::he16b9c1345d8565e [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x564846a1be05 - std::io::Write::write_fmt::hc31efe493f037457 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x564846a694c1 - std::io::impls::>::write_fmt::hfcb1ff6c5b834381 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x564846a71775 - std::sys_common::backtrace::_print::h9288fa7d9f6629cb [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x564846a71775 - std::sys_common::backtrace::print::h82e606e62781d8af [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x564846a71775 - std::panicking::default_hook::{{closure}}::h1fe350ecbf7604e4 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x564846a7145b - std::panicking::default_hook::h1b8b42953fdc841d [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x564846a71dd2 - std::panicking::rust_panic_with_hook::he73826f4bb75a21e [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x564846a719bb - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x564846a964e1 - core::panicking::panic_fmt::hc8f9a0b2af5fb585 [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x564846a9642d - core::panicking::panic::hc3c435d4bc248f19 [INFO] [stdout] at src/libcore/panicking.rs:54 [INFO] [stdout] 15: 0x564846a12a0a - r_nes::cpu::Cpu::read_pc_from_stack::hfc97462044a7e6d1 [INFO] [stdout] at src/cpu.rs:280 [INFO] [stdout] 16: 0x564846a1419d - r_nes::cpu::Cpu::return_from::h37ad35e6e5e02fb8 [INFO] [stdout] at src/cpu.rs:448 [INFO] [stdout] 17: 0x564846a12c98 - r_nes::cpu::Cpu::evaluate::h314e064f586f0ca1 [INFO] [stdout] at src/cpu.rs:300 [INFO] [stdout] 18: 0x564846a0e4fb - r_nes::cpu::tests::test_rts::hfe46164130a22572 [INFO] [stdout] at src/cpu.rs:1065 [INFO] [stdout] 19: 0x564846a0e34a - r_nes::cpu::tests::test_rts::{{closure}}::h1615fa278c75f51a [INFO] [stdout] at src/cpu.rs:1052 [INFO] [stdout] 20: 0x564846a17b1e - core::ops::function::FnOnce::call_once::h6f92cf51a8c187b4 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libcore/ops/function.rs:232 [INFO] [stdout] 21: 0x564846a27cff - as core::ops::function::FnOnce>::call_once::he1ba1da20629a2d8 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 22: 0x564846a432fe - as core::ops::function::FnOnce<()>>::call_once::hf94927858761de4a [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:318 [INFO] [stdout] 23: 0x564846a432fe - std::panicking::try::do_call::h1585003392664d93 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:331 [INFO] [stdout] 24: 0x564846a432fe - std::panicking::try::h43d950f958a74468 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:274 [INFO] [stdout] 25: 0x564846a432fe - std::panic::catch_unwind::hb5284de2977ddeea [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:394 [INFO] [stdout] 26: 0x564846a432fe - test::run_test_in_process::had39bb305b26a3ae [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 27: 0x564846a432fe - test::run_test::run_test_inner::{{closure}}::h12b1756b854ada1a [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 28: 0x564846a1b2b6 - std::sys_common::backtrace::__rust_begin_short_backtrace::hec04b80bece92bf9 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 29: 0x564846a205d5 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::heca431434c1ac418 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/thread/mod.rs:475 [INFO] [stdout] 30: 0x564846a205d5 - as core::ops::function::FnOnce<()>>::call_once::he2457d582c032747 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:318 [INFO] [stdout] 31: 0x564846a205d5 - std::panicking::try::do_call::hbcd49dc3823e8b28 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:331 [INFO] [stdout] 32: 0x564846a205d5 - std::panicking::try::h1ba95c07dd8d422b [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panicking.rs:274 [INFO] [stdout] 33: 0x564846a205d5 - std::panic::catch_unwind::h95854794ba9eee4c [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/panic.rs:394 [INFO] [stdout] 34: 0x564846a205d5 - std::thread::Builder::spawn_unchecked::{{closure}}::h4e297b8574092d6e [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libstd/thread/mod.rs:474 [INFO] [stdout] 35: 0x564846a205d5 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1b855aad7f5ac67e [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/libcore/ops/function.rs:232 [INFO] [stdout] 36: 0x564846a6568f - as core::ops::function::FnOnce>::call_once::h48069b269ca48108 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 37: 0x564846a785b3 - as core::ops::function::FnOnce>::call_once::heff660b32cd3afd8 [INFO] [stdout] at /rustc/28742a1146f10a4f09369baad027a464acb7a766/src/liballoc/boxed.rs:1008 [INFO] [stdout] 38: 0x564846a785b3 - std::sys::unix::thread::Thread::new::thread_start::ha538939ed1e2e958 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 39: 0x7f6a790646db - start_thread [INFO] [stdout] 40: 0x7f6a78b7588f - __clone [INFO] [stdout] 41: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] cpu::tests::test_plp [INFO] [stdout] cpu::tests::test_rti [INFO] [stdout] cpu::tests::test_rts [INFO] [stdout] [INFO] [stdout] test result: FAILED. 36 passed; 3 failed; 3 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "d0a9f54bb6f8c31258cd97235a7d432c7be477ccc3e2184a8e13338719d4e3d9"` [INFO] running `"docker" "rm" "-f" "d0a9f54bb6f8c31258cd97235a7d432c7be477ccc3e2184a8e13338719d4e3d9"` [INFO] [stdout] d0a9f54bb6f8c31258cd97235a7d432c7be477ccc3e2184a8e13338719d4e3d9