[INFO] cloning repository https://github.com/andreachiara/RustyPuter_6502 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/andreachiara/RustyPuter_6502" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandreachiara%2FRustyPuter_6502", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandreachiara%2FRustyPuter_6502'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e971550b5514384f3b7297bda88e144a04fba9fc [INFO] testing andreachiara/RustyPuter_6502 against try#0936b3db0ae648ba2d5b60eb08cf4faf2ddab0c6 for pr-137122-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandreachiara%2FRustyPuter_6502" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/andreachiara/RustyPuter_6502 [INFO] finished tweaking git repo https://github.com/andreachiara/RustyPuter_6502 [INFO] tweaked toml for git repo https://github.com/andreachiara/RustyPuter_6502 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/andreachiara/RustyPuter_6502 on toolchain 0936b3db0ae648ba2d5b60eb08cf4faf2ddab0c6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0936b3db0ae648ba2d5b60eb08cf4faf2ddab0c6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/andreachiara/RustyPuter_6502 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" "+0936b3db0ae648ba2d5b60eb08cf4faf2ddab0c6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+0936b3db0ae648ba2d5b60eb08cf4faf2ddab0c6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d1f11d83a19f5e52e9de05e1f3741dd300fb6da7afaa80f747d3fe21d3a891d0 [INFO] running `Command { std: "docker" "start" "-a" "d1f11d83a19f5e52e9de05e1f3741dd300fb6da7afaa80f747d3fe21d3a891d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d1f11d83a19f5e52e9de05e1f3741dd300fb6da7afaa80f747d3fe21d3a891d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d1f11d83a19f5e52e9de05e1f3741dd300fb6da7afaa80f747d3fe21d3a891d0", kill_on_drop: false }` [INFO] [stdout] d1f11d83a19f5e52e9de05e1f3741dd300fb6da7afaa80f747d3fe21d3a891d0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+0936b3db0ae648ba2d5b60eb08cf4faf2ddab0c6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9d64e51816f2c27541b29192b13df665b16c3b0560838b7b7d48eff828338ff2 [INFO] running `Command { std: "docker" "start" "-a" "9d64e51816f2c27541b29192b13df665b16c3b0560838b7b7d48eff828338ff2", kill_on_drop: false }` [INFO] [stderr] Compiling RustyPuter_6502 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `core::num` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::num; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr::addr_eq` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::ptr::addr_eq; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `any::type_name` and `io` [INFO] [stdout] --> src/main.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{any::type_name, io}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `any::type_name` [INFO] [stdout] --> src/addresser.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{any::type_name, io}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `log_info` and `log_warning` [INFO] [stdout] --> src/addresser.rs:3:33 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::logging::{log_error, log_warning, log_info}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::fmt` [INFO] [stdout] --> src/data_bus.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::fmt; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error::Error`, `iter::FlatMap`, and `write` [INFO] [stdout] --> src/data_bus.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{error::Error, fmt::{write}, iter::FlatMap, io}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::memory` [INFO] [stdout] --> src/data_bus.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::memory; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::num` [INFO] [stdout] --> src/cpu6502.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::num; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/cpu6502.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr::addr_eq` [INFO] [stdout] --> src/cpu6502.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::ptr::addr_eq; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `any::type_name` [INFO] [stdout] --> src/cpu6502.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{any::type_name, io}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ADDRESSER` and `AddressingModes` [INFO] [stdout] --> src/main.rs:15:24 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::addresser::{AddressingModes, ADDRESSER}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `log_error`, `log_info`, and `log_warning` [INFO] [stdout] --> src/main.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::logging::{log_error, log_warning, log_info}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mode` [INFO] [stdout] --> src/addresser.rs:195:44 [INFO] [stdout] | [INFO] [stdout] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pulled_bytes` [INFO] [stdout] --> src/addresser.rs:195:78 [INFO] [stdout] | [INFO] [stdout] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pulled_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/data_bus.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let mut ep = self.get_endpoint(address)?; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `even_hi` [INFO] [stdout] --> src/cpu6502.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | let even_hi = hi % 2 == 0; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_even_hi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hi_group` [INFO] [stdout] --> src/cpu6502.rs:258:13 [INFO] [stdout] | [INFO] [stdout] 258 | let hi_group = hi >> 3; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hi_group` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `mode` is assigned to, but never used [INFO] [stdout] --> src/cpu6502.rs:264:17 [INFO] [stdout] | [INFO] [stdout] 264 | let mut mode: AddressingModes = AddressingModes::Implicit; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_mode` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mode` is never read [INFO] [stdout] --> src/cpu6502.rs:270:25 [INFO] [stdout] | [INFO] [stdout] 270 | mode = AddressingModes::XInd; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mode` is never read [INFO] [stdout] --> src/cpu6502.rs:272:25 [INFO] [stdout] | [INFO] [stdout] 272 | mode = AddressingModes::IndY; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AddressingModes` is never used [INFO] [stdout] --> src/addresser.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum AddressingModes { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STACK_ADDRESS_MSB` is never used [INFO] [stdout] --> src/addresser.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const STACK_ADDRESS_MSB: u16 = 0x0100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ZEROPAGE_ADDRESS_MSB` is never used [INFO] [stdout] --> src/addresser.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const ZEROPAGE_ADDRESS_MSB: u16 = 0x0000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEMORY_SIZE` is never used [INFO] [stdout] --> src/addresser.rs:28:7 [INFO] [stdout] | [INFO] [stdout] 28 | const MEMORY_SIZE: usize = 0x10000; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ADDRESSER` is never constructed [INFO] [stdout] --> src/addresser.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct ADDRESSER { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/addresser.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 46 | impl ADDRESSER { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 47 | fn reset_flags(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn reset_addresses(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | fn set_offset(&mut self, offset: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | fn set_low(&mut self, low_addr: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn set_high(&mut self, high_addr: u8) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn set_mode(&mut self, mode: AddressingModes) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn set_full(&mut self, full_addr: u16) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn get_fulladdress(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn zeropage(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | fn absolute(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn indirect(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | fn indexed_indirect(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn indirect_indexed(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn calc_address(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn deref_byte(&self, index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | pub fn deref_word(&self, index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn deref_n_bytes(&self, index: usize, num_bytes: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn calc_address_and_deref_byte(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) -> Resu... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn calc_address_and_deref_word(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) -> Resu... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log_error` is never used [INFO] [stdout] --> src/logging.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | pub fn log_error(tag: &str, error: &str) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log_warning` is never used [INFO] [stdout] --> src/logging.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn log_warning(tag: &str, error: &str) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log_info` is never used [INFO] [stdout] --> src/logging.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn log_info(tag: &str, error: &str) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BUS_SIZE` is never used [INFO] [stdout] --> src/data_bus.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const MAX_BUS_SIZE: usize = 0x10000; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Endpoint` is never constructed [INFO] [stdout] --> src/data_bus.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct Endpoint { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `read`, and `write` are never used [INFO] [stdout] --> src/data_bus.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl Endpoint { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 17 | fn new(begin: usize, size: usize, read_cb: fn(usize)->u8, write_cb: fn(usize, u8)) -> Endpoint { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn read(&self, address: usize) -> u8 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | fn write(&mut self, address: usize, byte_to_write: u8) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DataBus` is never constructed [INFO] [stdout] --> src/data_bus.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | struct DataBus { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_endpoint`, `read_byte`, and `write_byte` are never used [INFO] [stdout] --> src/data_bus.rs:42:8 [INFO] [stdout] | [INFO] [stdout] 41 | impl DataBus { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 42 | fn get_endpoint(&mut self, address: usize) -> Result<&mut Endpoint, io::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn read_byte(&mut self, address: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn write_byte(&mut self, address: usize, byte_w: u8) -> Result<(),io::Error> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProcessorStatus` is never constructed [INFO] [stdout] --> src/cpu6502.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ProcessorStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/cpu6502.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 25 | impl ProcessorStatus { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 26 | fn set_carry(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn get_carry(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | fn set_zero(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn get_zero(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn set_interrupt(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn get_interrupt(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | fn set_decimal(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn get_decimal(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn set_break(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn get_break(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | fn set_overflow(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | fn get_overflow(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | fn set_negative(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | fn get_negative(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `InstructionNames` is never used [INFO] [stdout] --> src/cpu6502.rs:76:6 [INFO] [stdout] | [INFO] [stdout] 76 | enum InstructionNames { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cpu6502` is never constructed [INFO] [stdout] --> src/cpu6502.rs:137:8 [INFO] [stdout] | [INFO] [stdout] 137 | struct Cpu6502 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `inst_adc`, `get_addr_mode`, and `dispatch_opcodes` are never used [INFO] [stdout] --> src/cpu6502.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 151 | impl Cpu6502 { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 152 | [INFO] [stdout] 153 | fn inst_adc(&mut self, byte: u8) { //ADd with Carry A, Z, C, N = A + M + C [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | fn get_addr_mode(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | fn dispatch_opcodes(&mut self) -> Result<(), io::Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compl2_is_pos` is never used [INFO] [stdout] --> src/helper_functions.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn compl2_is_pos(byte: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compl2_to_abs` is never used [INFO] [stdout] --> src/helper_functions.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn compl2_to_abs(byte: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compl2_greater_abs` is never used [INFO] [stdout] --> src/helper_functions.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn compl2_greater_abs(byte_a: u8, byte_b: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.18s [INFO] running `Command { std: "docker" "inspect" "9d64e51816f2c27541b29192b13df665b16c3b0560838b7b7d48eff828338ff2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9d64e51816f2c27541b29192b13df665b16c3b0560838b7b7d48eff828338ff2", kill_on_drop: false }` [INFO] [stdout] 9d64e51816f2c27541b29192b13df665b16c3b0560838b7b7d48eff828338ff2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+0936b3db0ae648ba2d5b60eb08cf4faf2ddab0c6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b6e1d0eb38df3ae962377a167890b80b9f9836eeab10c2a65faf7986b675b966 [INFO] running `Command { std: "docker" "start" "-a" "b6e1d0eb38df3ae962377a167890b80b9f9836eeab10c2a65faf7986b675b966", kill_on_drop: false }` [INFO] [stderr] Compiling RustyPuter_6502 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `core::num` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::num; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr::addr_eq` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::ptr::addr_eq; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `any::type_name` and `io` [INFO] [stdout] --> src/main.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{any::type_name, io}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `any::type_name` [INFO] [stdout] --> src/addresser.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{any::type_name, io}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `log_info` and `log_warning` [INFO] [stdout] --> src/addresser.rs:3:33 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::logging::{log_error, log_warning, log_info}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::fmt` [INFO] [stdout] --> src/data_bus.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::fmt; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error::Error`, `iter::FlatMap`, and `write` [INFO] [stdout] --> src/data_bus.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{error::Error, fmt::{write}, iter::FlatMap, io}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::memory` [INFO] [stdout] --> src/data_bus.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::memory; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::num` [INFO] [stdout] --> src/cpu6502.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::num; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/cpu6502.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr::addr_eq` [INFO] [stdout] --> src/cpu6502.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::ptr::addr_eq; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `any::type_name` [INFO] [stdout] --> src/cpu6502.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{any::type_name, io}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ADDRESSER` and `AddressingModes` [INFO] [stdout] --> src/main.rs:15:24 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::addresser::{AddressingModes, ADDRESSER}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `log_error`, `log_info`, and `log_warning` [INFO] [stdout] --> src/main.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::logging::{log_error, log_warning, log_info}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mode` [INFO] [stdout] --> src/addresser.rs:195:44 [INFO] [stdout] | [INFO] [stdout] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pulled_bytes` [INFO] [stdout] --> src/addresser.rs:195:78 [INFO] [stdout] | [INFO] [stdout] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pulled_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/data_bus.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let mut ep = self.get_endpoint(address)?; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `even_hi` [INFO] [stdout] --> src/cpu6502.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | let even_hi = hi % 2 == 0; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_even_hi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hi_group` [INFO] [stdout] --> src/cpu6502.rs:258:13 [INFO] [stdout] | [INFO] [stdout] 258 | let hi_group = hi >> 3; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hi_group` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `mode` is assigned to, but never used [INFO] [stdout] --> src/cpu6502.rs:264:17 [INFO] [stdout] | [INFO] [stdout] 264 | let mut mode: AddressingModes = AddressingModes::Implicit; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_mode` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mode` is never read [INFO] [stdout] --> src/cpu6502.rs:270:25 [INFO] [stdout] | [INFO] [stdout] 270 | mode = AddressingModes::XInd; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mode` is never read [INFO] [stdout] --> src/cpu6502.rs:272:25 [INFO] [stdout] | [INFO] [stdout] 272 | mode = AddressingModes::IndY; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AddressingModes` is never used [INFO] [stdout] --> src/addresser.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum AddressingModes { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STACK_ADDRESS_MSB` is never used [INFO] [stdout] --> src/addresser.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const STACK_ADDRESS_MSB: u16 = 0x0100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ZEROPAGE_ADDRESS_MSB` is never used [INFO] [stdout] --> src/addresser.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const ZEROPAGE_ADDRESS_MSB: u16 = 0x0000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEMORY_SIZE` is never used [INFO] [stdout] --> src/addresser.rs:28:7 [INFO] [stdout] | [INFO] [stdout] 28 | const MEMORY_SIZE: usize = 0x10000; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ADDRESSER` is never constructed [INFO] [stdout] --> src/addresser.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct ADDRESSER { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/addresser.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 46 | impl ADDRESSER { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 47 | fn reset_flags(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn reset_addresses(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | fn set_offset(&mut self, offset: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | fn set_low(&mut self, low_addr: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn set_high(&mut self, high_addr: u8) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn set_mode(&mut self, mode: AddressingModes) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn set_full(&mut self, full_addr: u16) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn get_fulladdress(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn zeropage(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | fn absolute(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn indirect(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | fn indexed_indirect(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn indirect_indexed(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn calc_address(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn deref_byte(&self, index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | pub fn deref_word(&self, index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn deref_n_bytes(&self, index: usize, num_bytes: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn calc_address_and_deref_byte(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) -> Resu... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn calc_address_and_deref_word(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) -> Resu... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log_error` is never used [INFO] [stdout] --> src/logging.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | pub fn log_error(tag: &str, error: &str) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log_warning` is never used [INFO] [stdout] --> src/logging.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn log_warning(tag: &str, error: &str) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log_info` is never used [INFO] [stdout] --> src/logging.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn log_info(tag: &str, error: &str) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BUS_SIZE` is never used [INFO] [stdout] --> src/data_bus.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const MAX_BUS_SIZE: usize = 0x10000; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Endpoint` is never constructed [INFO] [stdout] --> src/data_bus.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct Endpoint { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `read`, and `write` are never used [INFO] [stdout] --> src/data_bus.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl Endpoint { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 17 | fn new(begin: usize, size: usize, read_cb: fn(usize)->u8, write_cb: fn(usize, u8)) -> Endpoint { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn read(&self, address: usize) -> u8 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | fn write(&mut self, address: usize, byte_to_write: u8) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DataBus` is never constructed [INFO] [stdout] --> src/data_bus.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | struct DataBus { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_endpoint`, `read_byte`, and `write_byte` are never used [INFO] [stdout] --> src/data_bus.rs:42:8 [INFO] [stdout] | [INFO] [stdout] 41 | impl DataBus { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 42 | fn get_endpoint(&mut self, address: usize) -> Result<&mut Endpoint, io::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn read_byte(&mut self, address: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn write_byte(&mut self, address: usize, byte_w: u8) -> Result<(),io::Error> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProcessorStatus` is never constructed [INFO] [stdout] --> src/cpu6502.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ProcessorStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/cpu6502.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 25 | impl ProcessorStatus { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 26 | fn set_carry(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn get_carry(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | fn set_zero(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn get_zero(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn set_interrupt(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn get_interrupt(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | fn set_decimal(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn get_decimal(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn set_break(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn get_break(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | fn set_overflow(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | fn get_overflow(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | fn set_negative(&mut self, bit: bool) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | fn get_negative(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `InstructionNames` is never used [INFO] [stdout] --> src/cpu6502.rs:76:6 [INFO] [stdout] | [INFO] [stdout] 76 | enum InstructionNames { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cpu6502` is never constructed [INFO] [stdout] --> src/cpu6502.rs:137:8 [INFO] [stdout] | [INFO] [stdout] 137 | struct Cpu6502 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `inst_adc`, `get_addr_mode`, and `dispatch_opcodes` are never used [INFO] [stdout] --> src/cpu6502.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 151 | impl Cpu6502 { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 152 | [INFO] [stdout] 153 | fn inst_adc(&mut self, byte: u8) { //ADd with Carry A, Z, C, N = A + M + C [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | fn get_addr_mode(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | fn dispatch_opcodes(&mut self) -> Result<(), io::Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compl2_is_pos` is never used [INFO] [stdout] --> src/helper_functions.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn compl2_is_pos(byte: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compl2_to_abs` is never used [INFO] [stdout] --> src/helper_functions.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn compl2_to_abs(byte: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compl2_greater_abs` is never used [INFO] [stdout] --> src/helper_functions.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn compl2_greater_abs(byte_a: u8, byte_b: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s [INFO] running `Command { std: "docker" "inspect" "b6e1d0eb38df3ae962377a167890b80b9f9836eeab10c2a65faf7986b675b966", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b6e1d0eb38df3ae962377a167890b80b9f9836eeab10c2a65faf7986b675b966", kill_on_drop: false }` [INFO] [stdout] b6e1d0eb38df3ae962377a167890b80b9f9836eeab10c2a65faf7986b675b966 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+0936b3db0ae648ba2d5b60eb08cf4faf2ddab0c6" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 9e8ebc8dc4954f14fa99589a1256773b6586a539281757521be2896c0b11c6f7 [INFO] running `Command { std: "docker" "start" "-a" "9e8ebc8dc4954f14fa99589a1256773b6586a539281757521be2896c0b11c6f7", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `core::num` [INFO] [stderr] --> src/main.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use core::num; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Add` [INFO] [stderr] --> src/main.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ops::Add; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::addr_eq` [INFO] [stderr] --> src/main.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::ptr::addr_eq; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `any::type_name` and `io` [INFO] [stderr] --> src/main.rs:4:11 [INFO] [stderr] | [INFO] [stderr] 4 | use std::{any::type_name, io}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/main.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `any::type_name` [INFO] [stderr] --> src/addresser.rs:1:11 [INFO] [stderr] | [INFO] [stderr] 1 | use std::{any::type_name, io}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `log_info` and `log_warning` [INFO] [stderr] --> src/addresser.rs:3:33 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::logging::{log_error, log_warning, log_info}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `core::fmt` [INFO] [stderr] --> src/data_bus.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use core::fmt; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `error::Error`, `iter::FlatMap`, and `write` [INFO] [stderr] --> src/data_bus.rs:2:11 [INFO] [stderr] | [INFO] [stderr] 2 | use std::{error::Error, fmt::{write}, iter::FlatMap, io}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::memory` [INFO] [stderr] --> src/data_bus.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::memory; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `core::num` [INFO] [stderr] --> src/cpu6502.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use core::num; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Add` [INFO] [stderr] --> src/cpu6502.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ops::Add; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::addr_eq` [INFO] [stderr] --> src/cpu6502.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::ptr::addr_eq; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `any::type_name` [INFO] [stderr] --> src/cpu6502.rs:4:11 [INFO] [stderr] | [INFO] [stderr] 4 | use std::{any::type_name, io}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ADDRESSER` and `AddressingModes` [INFO] [stderr] --> src/main.rs:15:24 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::addresser::{AddressingModes, ADDRESSER}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `log_error`, `log_info`, and `log_warning` [INFO] [stderr] --> src/main.rs:16:22 [INFO] [stderr] | [INFO] [stderr] 16 | use crate::logging::{log_error, log_warning, log_info}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mode` [INFO] [stderr] --> src/addresser.rs:195:44 [INFO] [stderr] | [INFO] [stderr] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mode` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pulled_bytes` [INFO] [stderr] --> src/addresser.rs:195:78 [INFO] [stderr] | [INFO] [stderr] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pulled_bytes` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/data_bus.rs:60:13 [INFO] [stderr] | [INFO] [stderr] 60 | let mut ep = self.get_endpoint(address)?; [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: unused variable: `even_hi` [INFO] [stderr] --> src/cpu6502.rs:255:13 [INFO] [stderr] | [INFO] [stderr] 255 | let even_hi = hi % 2 == 0; [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_even_hi` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hi_group` [INFO] [stderr] --> src/cpu6502.rs:258:13 [INFO] [stderr] | [INFO] [stderr] 258 | let hi_group = hi >> 3; [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hi_group` [INFO] [stderr] [INFO] [stderr] warning: variable `mode` is assigned to, but never used [INFO] [stderr] --> src/cpu6502.rs:264:17 [INFO] [stderr] | [INFO] [stderr] 264 | let mut mode: AddressingModes = AddressingModes::Implicit; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_mode` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `mode` is never read [INFO] [stderr] --> src/cpu6502.rs:270:25 [INFO] [stderr] | [INFO] [stderr] 270 | mode = AddressingModes::XInd; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `mode` is never read [INFO] [stderr] --> src/cpu6502.rs:272:25 [INFO] [stderr] | [INFO] [stderr] 272 | mode = AddressingModes::IndY; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: enum `AddressingModes` is never used [INFO] [stderr] --> src/addresser.rs:7:10 [INFO] [stderr] | [INFO] [stderr] 7 | pub enum AddressingModes { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `STACK_ADDRESS_MSB` is never used [INFO] [stderr] --> src/addresser.rs:26:7 [INFO] [stderr] | [INFO] [stderr] 26 | const STACK_ADDRESS_MSB: u16 = 0x0100; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ZEROPAGE_ADDRESS_MSB` is never used [INFO] [stderr] --> src/addresser.rs:27:7 [INFO] [stderr] | [INFO] [stderr] 27 | const ZEROPAGE_ADDRESS_MSB: u16 = 0x0000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `MEMORY_SIZE` is never used [INFO] [stderr] --> src/addresser.rs:28:7 [INFO] [stderr] | [INFO] [stderr] 28 | const MEMORY_SIZE: usize = 0x10000; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ADDRESSER` is never constructed [INFO] [stderr] --> src/addresser.rs:30:12 [INFO] [stderr] | [INFO] [stderr] 30 | pub struct ADDRESSER { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/addresser.rs:47:8 [INFO] [stderr] | [INFO] [stderr] 46 | impl ADDRESSER { [INFO] [stderr] | -------------- methods in this implementation [INFO] [stderr] 47 | fn reset_flags(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 54 | fn reset_addresses(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 63 | fn set_offset(&mut self, offset: u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 66 | fn set_low(&mut self, low_addr: u8) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 69 | fn set_high(&mut self, high_addr: u8) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 72 | fn set_mode(&mut self, mode: AddressingModes) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 75 | fn set_full(&mut self, full_addr: u16) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 79 | fn get_fulladdress(&self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 84 | fn zeropage(&mut self) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 87 | fn absolute(&mut self) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 90 | fn indirect(&mut self) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 97 | fn indexed_indirect(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 102 | fn indirect_indexed(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 107 | pub fn calc_address(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 162 | pub fn deref_byte(&self, index: usize) -> Result { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 169 | pub fn deref_word(&self, index: usize) -> Result { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 175 | pub fn deref_n_bytes(&self, index: usize, num_bytes: usize) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 183 | pub fn calc_address_and_deref_byte(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) -> Resu... [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 189 | pub fn calc_address_and_deref_word(&mut self, low_addr: u8, high_addr: u8, full_addr: u16, offset: u8, mode: AddressingModes) -> Resu... [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 195 | pub fn get_opcode_arguments(&mut self, mode: AddressingModes, pc: usize, pulled_bytes: &usize) -> Result{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `log_error` is never used [INFO] [stderr] --> src/logging.rs:2:8 [INFO] [stderr] | [INFO] [stderr] 2 | pub fn log_error(tag: &str, error: &str) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `log_warning` is never used [INFO] [stderr] --> src/logging.rs:5:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn log_warning(tag: &str, error: &str) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `log_info` is never used [INFO] [stderr] --> src/logging.rs:8:8 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn log_info(tag: &str, error: &str) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `MAX_BUS_SIZE` is never used [INFO] [stderr] --> src/data_bus.rs:6:7 [INFO] [stderr] | [INFO] [stderr] 6 | const MAX_BUS_SIZE: usize = 0x10000; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Endpoint` is never constructed [INFO] [stderr] --> src/data_bus.rs:8:8 [INFO] [stderr] | [INFO] [stderr] 8 | struct Endpoint { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `read`, and `write` are never used [INFO] [stderr] --> src/data_bus.rs:17:8 [INFO] [stderr] | [INFO] [stderr] 16 | impl Endpoint { [INFO] [stderr] | ------------- associated items in this implementation [INFO] [stderr] 17 | fn new(begin: usize, size: usize, read_cb: fn(usize)->u8, write_cb: fn(usize, u8)) -> Endpoint { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 29 | fn read(&self, address: usize) -> u8 { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 33 | fn write(&mut self, address: usize, byte_to_write: u8) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `DataBus` is never constructed [INFO] [stderr] --> src/data_bus.rs:37:8 [INFO] [stderr] | [INFO] [stderr] 37 | struct DataBus { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `get_endpoint`, `read_byte`, and `write_byte` are never used [INFO] [stderr] --> src/data_bus.rs:42:8 [INFO] [stderr] | [INFO] [stderr] 41 | impl DataBus { [INFO] [stderr] | ------------ methods in this implementation [INFO] [stderr] 42 | fn get_endpoint(&mut self, address: usize) -> Result<&mut Endpoint, io::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 52 | fn read_byte(&mut self, address: usize) -> Result { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 59 | fn write_byte(&mut self, address: usize, byte_w: u8) -> Result<(),io::Error> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ProcessorStatus` is never constructed [INFO] [stderr] --> src/cpu6502.rs:13:8 [INFO] [stderr] | [INFO] [stderr] 13 | struct ProcessorStatus { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/cpu6502.rs:26:8 [INFO] [stderr] | [INFO] [stderr] 25 | impl ProcessorStatus { [INFO] [stderr] | -------------------- methods in this implementation [INFO] [stderr] 26 | fn set_carry(&mut self, bit: bool) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 29 | fn get_carry(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 33 | fn set_zero(&mut self, bit: bool) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 36 | fn get_zero(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 40 | fn set_interrupt(&mut self, bit: bool) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 43 | fn get_interrupt(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 47 | fn set_decimal(&mut self, bit: bool) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 50 | fn get_decimal(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 54 | fn set_break(&mut self, bit: bool) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 57 | fn get_break(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 61 | fn set_overflow(&mut self, bit: bool) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 64 | fn get_overflow(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 68 | fn set_negative(&mut self, bit: bool) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 71 | fn get_negative(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `InstructionNames` is never used [INFO] [stderr] --> src/cpu6502.rs:76:6 [INFO] [stderr] | [INFO] [stderr] 76 | enum InstructionNames { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Cpu6502` is never constructed [INFO] [stderr] --> src/cpu6502.rs:137:8 [INFO] [stderr] | [INFO] [stderr] 137 | struct Cpu6502 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `inst_adc`, `get_addr_mode`, and `dispatch_opcodes` are never used [INFO] [stderr] --> src/cpu6502.rs:153:8 [INFO] [stderr] | [INFO] [stderr] 151 | impl Cpu6502 { [INFO] [stderr] | ------------ methods in this implementation [INFO] [stderr] 152 | [INFO] [stderr] 153 | fn inst_adc(&mut self, byte: u8) { //ADd with Carry A, Z, C, N = A + M + C [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 172 | fn get_addr_mode(&mut self) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 247 | fn dispatch_opcodes(&mut self) -> Result<(), io::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `compl2_is_pos` is never used [INFO] [stderr] --> src/helper_functions.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn compl2_is_pos(byte: u8) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `compl2_to_abs` is never used [INFO] [stderr] --> src/helper_functions.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn compl2_to_abs(byte: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `compl2_greater_abs` is never used [INFO] [stderr] --> src/helper_functions.rs:11:8 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn compl2_greater_abs(byte_a: u8, byte_b: u8) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `RustyPuter_6502` (bin "RustyPuter_6502" test) generated 46 warnings (run `cargo fix --bin "RustyPuter_6502" --tests` to apply 17 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/RustyPuter_6502-915c4ec6cfd9e4be) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "9e8ebc8dc4954f14fa99589a1256773b6586a539281757521be2896c0b11c6f7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9e8ebc8dc4954f14fa99589a1256773b6586a539281757521be2896c0b11c6f7", kill_on_drop: false }` [INFO] [stdout] 9e8ebc8dc4954f14fa99589a1256773b6586a539281757521be2896c0b11c6f7