[INFO] cloning repository https://github.com/siikamiika/gba
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/siikamiika/gba" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsiikamiika%2Fgba", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsiikamiika%2Fgba'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5a12e524ede3cf03a65926d315286aee332e50b5
[INFO] checking siikamiika/gba against try#012cd62c9add58ab3910e44c137d87db3ab70f61 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsiikamiika%2Fgba" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/siikamiika/gba
[INFO] finished tweaking git repo https://github.com/siikamiika/gba
[INFO] tweaked toml for git repo https://github.com/siikamiika/gba written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/siikamiika/gba on toolchain 012cd62c9add58ab3910e44c137d87db3ab70f61
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+012cd62c9add58ab3910e44c137d87db3ab70f61" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/siikamiika/gba 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" "+012cd62c9add58ab3910e44c137d87db3ab70f61" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+012cd62c9add58ab3910e44c137d87db3ab70f61" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 71eb8b5c27ad6f5339e0c8e741f2604b4ae752eaed49e805f3376b7cc6a74b90
[INFO] running `Command { std: "docker" "start" "-a" "71eb8b5c27ad6f5339e0c8e741f2604b4ae752eaed49e805f3376b7cc6a74b90", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "71eb8b5c27ad6f5339e0c8e741f2604b4ae752eaed49e805f3376b7cc6a74b90", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "71eb8b5c27ad6f5339e0c8e741f2604b4ae752eaed49e805f3376b7cc6a74b90", kill_on_drop: false }`
[INFO] [stdout] 71eb8b5c27ad6f5339e0c8e741f2604b4ae752eaed49e805f3376b7cc6a74b90
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+012cd62c9add58ab3910e44c137d87db3ab70f61" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e37117e34e8182c94386d940a1ddf46be531df82d8c6bb96b3620f127d08a09a
[INFO] running `Command { std: "docker" "start" "-a" "e37117e34e8182c94386d940a1ddf46be531df82d8c6bb96b3620f127d08a09a", kill_on_drop: false }`
[INFO] [stderr]     Checking gba-emu v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/memory.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |         (bytes[0] as u16 + ((bytes[1] as u16) << 8))
[INFO] [stdout]    |         ^                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 70 -         (bytes[0] as u16 + ((bytes[1] as u16) << 8))
[INFO] [stdout] 70 +         bytes[0] as u16 + ((bytes[1] as u16) << 8) 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/memory.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         (bytes[0] as u32 + ((bytes[1] as u32) << 8) + ((bytes[2] as u32) << 16) + ((bytes[3] as u32) << 24))
[INFO] [stdout]    |         ^                                                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 75 -         (bytes[0] as u32 + ((bytes[1] as u32) << 8) + ((bytes[2] as u32) << 16) + ((bytes[3] as u32) << 24))
[INFO] [stdout] 75 +         bytes[0] as u32 + ((bytes[1] as u32) << 8) + ((bytes[2] as u32) << 16) + ((bytes[3] as u32) << 24) 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::registers::Register::*`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use self::registers::Register::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::cpu::Mode::*`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use self::cpu::Mode::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::arm_instructions::decode_instruction`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use self::arm_instructions::decode_instruction;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `int_to_from_bytes` has been stable since 1.32.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(int_to_from_bytes)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/memory.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |         (bytes[0] as u16 + ((bytes[1] as u16) << 8))
[INFO] [stdout]    |         ^                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 70 -         (bytes[0] as u16 + ((bytes[1] as u16) << 8))
[INFO] [stdout] 70 +         bytes[0] as u16 + ((bytes[1] as u16) << 8) 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/memory.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         (bytes[0] as u32 + ((bytes[1] as u32) << 8) + ((bytes[2] as u32) << 16) + ((bytes[3] as u32) << 24))
[INFO] [stdout]    |         ^                                                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 75 -         (bytes[0] as u32 + ((bytes[1] as u32) << 8) + ((bytes[2] as u32) << 16) + ((bytes[3] as u32) << 24))
[INFO] [stdout] 75 +         bytes[0] as u32 + ((bytes[1] as u32) << 8) + ((bytes[2] as u32) << 16) + ((bytes[3] as u32) << 24) 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::registers::Register::*`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use self::registers::Register::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::cpu::Mode::*`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use self::cpu::Mode::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::arm_instructions::decode_instruction`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use self::arm_instructions::decode_instruction;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `int_to_from_bytes` has been stable since 1.32.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(int_to_from_bytes)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/arm_instructions.rs:171:42
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn exec_arm_data_proc(&mut self, f: &Fn(u32, u32) -> u32, cond: Condition, i: bool, s: bool, rn: u32, rd: u32, mut op2: u32) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn exec_arm_data_proc(&mut self, f: &dyn Fn(u32, u32) -> u32, cond: Condition, i: bool, s: bool, rn: u32, rd: u32, mut op2: u32) {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/arm_instructions.rs:171:42
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn exec_arm_data_proc(&mut self, f: &Fn(u32, u32) -> u32, cond: Condition, i: bool, s: bool, rn: u32, rd: u32, mut op2: u32) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn exec_arm_data_proc(&mut self, f: &dyn Fn(u32, u32) -> u32, cond: Condition, i: bool, s: bool, rn: u32, rd: u32, mut op2: u32) {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/arm_instructions.rs:325:20
[INFO] [stdout]     |
[INFO] [stdout] 325 |         let oper: &Fn(u32, u32) -> u32;
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 325 |         let oper: &dyn Fn(u32, u32) -> u32;
[INFO] [stdout]     |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/arm_instructions.rs:325:20
[INFO] [stdout]     |
[INFO] [stdout] 325 |         let oper: &Fn(u32, u32) -> u32;
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 325 |         let oper: &dyn Fn(u32, u32) -> u32;
[INFO] [stdout]     |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/memory.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> src/arm_instructions.rs:4:42
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::registers::{Register, PsrBit, Read};
[INFO] [stdout]   |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/gba.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let mut memory = Rc::new(RefCell::new(Memory::new()));
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/gba.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 |         let mut cpu = ARM7TDMI::new(memory.clone());
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/registers.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let result = self.index(register);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/memory.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> src/arm_instructions.rs:4:42
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::registers::{Register, PsrBit, Read};
[INFO] [stdout]   |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c` is never read
[INFO] [stdout]    --> src/arm_instructions.rs:98:21
[INFO] [stdout]     |
[INFO] [stdout]  98 |         let mut c = self.registers.read_cpsr_bits(vec![C])[0];
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 110 |                     c = false;
[INFO] [stdout]     |                     --------- `c` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/gba.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let mut memory = Rc::new(RefCell::new(Memory::new()));
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/gba.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 |         let mut cpu = ARM7TDMI::new(memory.clone());
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:299:32
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_opc`
[INFO] [stdout]    --> src/arm_instructions.rs:299:49
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_c_opc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crn`
[INFO] [stdout]    --> src/arm_instructions.rs:299:61
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_crn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crd`
[INFO] [stdout]    --> src/arm_instructions.rs:299:71
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                                       ^^^ help: if this is intentional, prefix it with an underscore: `_crd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cn`
[INFO] [stdout]    --> src/arm_instructions.rs:299:81
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                                                 ^^ help: if this is intentional, prefix it with an underscore: `_cn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cinf`
[INFO] [stdout]    --> src/arm_instructions.rs:299:90
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_cinf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crm`
[INFO] [stdout]    --> src/arm_instructions.rs:299:101
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                                                                     ^^^ help: if this is intentional, prefix it with an underscore: `_crm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:303:35
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn exec_arm_ldcstc(&mut self, cond: Condition, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset:...
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/arm_instructions.rs:303:52
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn exec_arm_ldcstc(&mut self, cond: Condition, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset:...
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/arm_instructions.rs:303:61
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn exec_arm_ldcstc(&mut self, cond: Condition, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset:...
[INFO] [stdout]     |                                                             ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/arm_instructions.rs:303:70
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...: Condition, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/arm_instructions.rs:303:79
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...on, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/arm_instructions.rs:303:88
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...ol, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:303:97
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...l, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                  ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crd`
[INFO] [stdout]    --> src/arm_instructions.rs:303:106
[INFO] [stdout]     |
[INFO] [stdout] 303 | ..., w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_crd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cn`
[INFO] [stdout]    --> src/arm_instructions.rs:303:116
[INFO] [stdout]     |
[INFO] [stdout] 303 | ..., l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                  ^^ help: if this is intentional, prefix it with an underscore: `_cn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset`
[INFO] [stdout]    --> src/arm_instructions.rs:303:125
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/arm_instructions.rs:307:52
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/arm_instructions.rs:307:61
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                             ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/arm_instructions.rs:307:70
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                      ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/arm_instructions.rs:307:79
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                               ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/arm_instructions.rs:307:88
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                                        ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:307:97
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                                                 ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `regs`
[INFO] [stdout]    --> src/arm_instructions.rs:307:106
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_regs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:377:39
[INFO] [stdout]     |
[INFO] [stdout] 377 |     fn exec_arm_ldrstrhalf(&mut self, cond: Condition, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: b...
[INFO] [stdout]     |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/arm_instructions.rs:377:56
[INFO] [stdout]     |
[INFO] [stdout] 377 |     fn exec_arm_ldrstrhalf(&mut self, cond: Condition, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: b...
[INFO] [stdout]     |                                                        ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/arm_instructions.rs:377:65
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...elf, cond: Condition, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/arm_instructions.rs:377:74
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...: Condition, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/arm_instructions.rs:377:83
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...on, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/arm_instructions.rs:377:92
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...ol, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:377:101
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...l, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                  ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]    --> src/arm_instructions.rs:377:110
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...l, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                  ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/arm_instructions.rs:377:119
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...ol, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]    --> src/arm_instructions.rs:377:128
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...ol, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset`
[INFO] [stdout]    --> src/arm_instructions.rs:377:137
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...d: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:422:32
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/arm_instructions.rs:422:49
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/arm_instructions.rs:422:58
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                          ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]    --> src/arm_instructions.rs:422:67
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                                   ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:422:76
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                                            ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rs`
[INFO] [stdout]    --> src/arm_instructions.rs:422:85
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                                                     ^^ help: if this is intentional, prefix it with an underscore: `_rs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rm`
[INFO] [stdout]    --> src/arm_instructions.rs:422:94
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                                                              ^^ help: if this is intentional, prefix it with an underscore: `_rm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:426:33
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/arm_instructions.rs:426:50
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                  ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/arm_instructions.rs:426:59
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                           ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/arm_instructions.rs:426:68
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                    ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd_hi`
[INFO] [stdout]    --> src/arm_instructions.rs:426:77
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_rd_hi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd_lo`
[INFO] [stdout]    --> src/arm_instructions.rs:426:89
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_rd_lo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:426:101
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                                                     ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rm`
[INFO] [stdout]    --> src/arm_instructions.rs:426:110
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                                                              ^^ help: if this is intentional, prefix it with an underscore: `_rm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:430:32
[INFO] [stdout]     |
[INFO] [stdout] 430 |     fn exec_arm_swi(&mut self, cond: Condition, comment: u32) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `comment`
[INFO] [stdout]    --> src/arm_instructions.rs:430:49
[INFO] [stdout]     |
[INFO] [stdout] 430 |     fn exec_arm_swi(&mut self, cond: Condition, comment: u32) {
[INFO] [stdout]     |                                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_comment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:434:32
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/arm_instructions.rs:434:49
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:434:58
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                                          ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]    --> src/arm_instructions.rs:434:67
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                                                   ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rm`
[INFO] [stdout]    --> src/arm_instructions.rs:434:76
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                                                            ^^ help: if this is intentional, prefix it with an underscore: `_rm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:438:32
[INFO] [stdout]     |
[INFO] [stdout] 438 |     fn exec_arm_und(&mut self, cond: Condition) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_halfword` and `write_halfword` are never used
[INFO] [stdout]    --> src/memory.rs:68:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl Memory {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub fn read_halfword(&self, start: usize) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn write_halfword(&mut self, value: u16, start: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `state` is never read
[INFO] [stdout]  --> src/cpu.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ARM7TDMI {
[INFO] [stdout]   |            -------- field in this struct
[INFO] [stdout] 8 |     state: State,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_mode` is never used
[INFO] [stdout]   --> src/cpu.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl ARM7TDMI {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn set_mode(&mut self, mode: Mode) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Thumb` is never constructed
[INFO] [stdout]   --> src/cpu.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub enum State {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] 66 |     Arm,    // 32 bit opcodes
[INFO] [stdout] 67 |     Thumb,  // 16 bit opcodes
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/registers.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub enum Register {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 174 |     R0   = 0,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 175 |     R1   = 1,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 176 |     R2   = 2,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 177 |     R3   = 3,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 178 |     R4   = 4,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 179 |     R5   = 5,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 180 |     R6   = 6,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 181 |     R7   = 7,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 182 |     R8   = 8,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 183 |     R9   = 9,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 184 |     R10  = 10,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 185 |     R11  = 11,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 186 |     R12  = 12,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 187 |     Sp   = 13,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/registers.rs:204:5
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub enum PsrBit {
[INFO] [stdout]     |          ------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 204 |     Q  = 27, // 0 = no sticky overflow , 1 = sticky overflow
[INFO] [stdout]     |     ^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     T  = 5,  // 0 = ARM                , 1 = THUMB; only set by BX
[INFO] [stdout]     |     ^
[INFO] [stdout] 212 |     M4 = 4,  // mode bits (current operating mode):
[INFO] [stdout]     |     ^^
[INFO] [stdout] 213 |     M3 = 3,  // Binary Hex Dec  Expl.
[INFO] [stdout]     |     ^^
[INFO] [stdout] 214 |     M2 = 2,  // 0xx00b 00h 0  - Old User       ;\26bit Backward Compatibility modes
[INFO] [stdout]     |     ^^
[INFO] [stdout] 215 |     M1 = 1,  // 0xx01b 01h 1  - Old FIQ        ; (supported only on ARMv3, except ARMv3G,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 216 |     M0 = 0,  // 0xx10b 02h 2  - Old IRQ        ; and on some non-T variants of ARMv4)
[INFO] [stdout]     |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/arm_instructions.rs:789:9
[INFO] [stdout]     |
[INFO] [stdout] 788 |     McrMrc {
[INFO] [stdout]     |     ------ fields in this variant
[INFO] [stdout] 789 |         cond: Condition,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 790 |         copc: u32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 791 |         l: bool,
[INFO] [stdout]     |         ^
[INFO] [stdout] 792 |         crn: u32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 793 |         rd: u32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 794 |         cn: u32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 795 |         cinf: u32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 796 |         crm: u32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Instruction` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/registers.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let result = self.index(register);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `c` is never read
[INFO] [stdout]    --> src/arm_instructions.rs:98:21
[INFO] [stdout]     |
[INFO] [stdout]  98 |         let mut c = self.registers.read_cpsr_bits(vec![C])[0];
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 110 |                     c = false;
[INFO] [stdout]     |                     --------- `c` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:299:32
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_opc`
[INFO] [stdout]    --> src/arm_instructions.rs:299:49
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_c_opc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crn`
[INFO] [stdout]    --> src/arm_instructions.rs:299:61
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_crn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crd`
[INFO] [stdout]    --> src/arm_instructions.rs:299:71
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                                       ^^^ help: if this is intentional, prefix it with an underscore: `_crd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cn`
[INFO] [stdout]    --> src/arm_instructions.rs:299:81
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                                                 ^^ help: if this is intentional, prefix it with an underscore: `_cn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cinf`
[INFO] [stdout]    --> src/arm_instructions.rs:299:90
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_cinf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crm`
[INFO] [stdout]    --> src/arm_instructions.rs:299:101
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn exec_arm_cdp(&mut self, cond: Condition, c_opc: u32, crn: u32, crd: u32, cn: u32, cinf: u32, crm: u32) {
[INFO] [stdout]     |                                                                                                     ^^^ help: if this is intentional, prefix it with an underscore: `_crm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:303:35
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn exec_arm_ldcstc(&mut self, cond: Condition, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset:...
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/arm_instructions.rs:303:52
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn exec_arm_ldcstc(&mut self, cond: Condition, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset:...
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/arm_instructions.rs:303:61
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn exec_arm_ldcstc(&mut self, cond: Condition, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset:...
[INFO] [stdout]     |                                                             ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/arm_instructions.rs:303:70
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...: Condition, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/arm_instructions.rs:303:79
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...on, p: bool, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/arm_instructions.rs:303:88
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...ol, u: bool, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:303:97
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...l, n: bool, w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                  ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crd`
[INFO] [stdout]    --> src/arm_instructions.rs:303:106
[INFO] [stdout]     |
[INFO] [stdout] 303 | ..., w: bool, l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_crd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cn`
[INFO] [stdout]    --> src/arm_instructions.rs:303:116
[INFO] [stdout]     |
[INFO] [stdout] 303 | ..., l: bool, rn: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                                  ^^ help: if this is intentional, prefix it with an underscore: `_cn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset`
[INFO] [stdout]    --> src/arm_instructions.rs:303:125
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...: u32, crd: u32, cn: u32, offset: u32) {
[INFO] [stdout]     |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/arm_instructions.rs:307:52
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/arm_instructions.rs:307:61
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                             ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/arm_instructions.rs:307:70
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                      ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/arm_instructions.rs:307:79
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                               ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/arm_instructions.rs:307:88
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                                        ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:307:97
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                                                 ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `regs`
[INFO] [stdout]    --> src/arm_instructions.rs:307:106
[INFO] [stdout]     |
[INFO] [stdout] 307 |     fn exec_arm_ldmstm(&mut self, cond: Condition, p: bool, u: bool, s: bool, w: bool, l: bool, rn: u32, regs: u32) {
[INFO] [stdout]     |                                                                                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_regs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:377:39
[INFO] [stdout]     |
[INFO] [stdout] 377 |     fn exec_arm_ldrstrhalf(&mut self, cond: Condition, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: b...
[INFO] [stdout]     |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/arm_instructions.rs:377:56
[INFO] [stdout]     |
[INFO] [stdout] 377 |     fn exec_arm_ldrstrhalf(&mut self, cond: Condition, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: b...
[INFO] [stdout]     |                                                        ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/arm_instructions.rs:377:65
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...elf, cond: Condition, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/arm_instructions.rs:377:74
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...: Condition, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/arm_instructions.rs:377:83
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...on, p: bool, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/arm_instructions.rs:377:92
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...ol, u: bool, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:377:101
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...l, i: bool, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                  ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]    --> src/arm_instructions.rs:377:110
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...l, w: bool, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                  ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/arm_instructions.rs:377:119
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...ol, l: bool, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]    --> src/arm_instructions.rs:377:128
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...ol, rn: u32, rd: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset`
[INFO] [stdout]    --> src/arm_instructions.rs:377:137
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...d: u32, s: bool, h: bool, offset: u32) {
[INFO] [stdout]     |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:422:32
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/arm_instructions.rs:422:49
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/arm_instructions.rs:422:58
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                          ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]    --> src/arm_instructions.rs:422:67
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                                   ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:422:76
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                                            ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rs`
[INFO] [stdout]    --> src/arm_instructions.rs:422:85
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                                                     ^^ help: if this is intentional, prefix it with an underscore: `_rs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rm`
[INFO] [stdout]    --> src/arm_instructions.rs:422:94
[INFO] [stdout]     |
[INFO] [stdout] 422 |     fn exec_arm_mul(&mut self, cond: Condition, a: bool, s: bool, rd: u32, rn: u32, rs: u32, rm: u32) {
[INFO] [stdout]     |                                                                                              ^^ help: if this is intentional, prefix it with an underscore: `_rm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:426:33
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/arm_instructions.rs:426:50
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                  ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/arm_instructions.rs:426:59
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                           ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/arm_instructions.rs:426:68
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                    ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd_hi`
[INFO] [stdout]    --> src/arm_instructions.rs:426:77
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_rd_hi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd_lo`
[INFO] [stdout]    --> src/arm_instructions.rs:426:89
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_rd_lo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:426:101
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                                                     ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rm`
[INFO] [stdout]    --> src/arm_instructions.rs:426:110
[INFO] [stdout]     |
[INFO] [stdout] 426 |     fn exec_arm_mull(&mut self, cond: Condition, u: bool, a: bool, s: bool, rd_hi: u32, rd_lo: u32, rn: u32, rm: u32) {
[INFO] [stdout]     |                                                                                                              ^^ help: if this is intentional, prefix it with an underscore: `_rm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:430:32
[INFO] [stdout]     |
[INFO] [stdout] 430 |     fn exec_arm_swi(&mut self, cond: Condition, comment: u32) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `comment`
[INFO] [stdout]    --> src/arm_instructions.rs:430:49
[INFO] [stdout]     |
[INFO] [stdout] 430 |     fn exec_arm_swi(&mut self, cond: Condition, comment: u32) {
[INFO] [stdout]     |                                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_comment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:434:32
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/arm_instructions.rs:434:49
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rn`
[INFO] [stdout]    --> src/arm_instructions.rs:434:58
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                                          ^^ help: if this is intentional, prefix it with an underscore: `_rn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]    --> src/arm_instructions.rs:434:67
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                                                   ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rm`
[INFO] [stdout]    --> src/arm_instructions.rs:434:76
[INFO] [stdout]     |
[INFO] [stdout] 434 |     fn exec_arm_swp(&mut self, cond: Condition, b: bool, rn: u32, rd: u32, rm: u32) {
[INFO] [stdout]     |                                                                            ^^ help: if this is intentional, prefix it with an underscore: `_rm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> src/arm_instructions.rs:438:32
[INFO] [stdout]     |
[INFO] [stdout] 438 |     fn exec_arm_und(&mut self, cond: Condition) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_cond`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_halfword` and `write_halfword` are never used
[INFO] [stdout]    --> src/memory.rs:68:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl Memory {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub fn read_halfword(&self, start: usize) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn write_halfword(&mut self, value: u16, start: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `state` is never read
[INFO] [stdout]  --> src/cpu.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ARM7TDMI {
[INFO] [stdout]   |            -------- field in this struct
[INFO] [stdout] 8 |     state: State,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_mode` is never used
[INFO] [stdout]   --> src/cpu.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl ARM7TDMI {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn set_mode(&mut self, mode: Mode) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Thumb` is never constructed
[INFO] [stdout]   --> src/cpu.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub enum State {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] 66 |     Arm,    // 32 bit opcodes
[INFO] [stdout] 67 |     Thumb,  // 16 bit opcodes
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/registers.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub enum Register {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 174 |     R0   = 0,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 175 |     R1   = 1,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 176 |     R2   = 2,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 177 |     R3   = 3,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 178 |     R4   = 4,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 179 |     R5   = 5,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 180 |     R6   = 6,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 181 |     R7   = 7,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 182 |     R8   = 8,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 183 |     R9   = 9,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 184 |     R10  = 10,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 185 |     R11  = 11,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 186 |     R12  = 12,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 187 |     Sp   = 13,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/registers.rs:204:5
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub enum PsrBit {
[INFO] [stdout]     |          ------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 204 |     Q  = 27, // 0 = no sticky overflow , 1 = sticky overflow
[INFO] [stdout]     |     ^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     T  = 5,  // 0 = ARM                , 1 = THUMB; only set by BX
[INFO] [stdout]     |     ^
[INFO] [stdout] 212 |     M4 = 4,  // mode bits (current operating mode):
[INFO] [stdout]     |     ^^
[INFO] [stdout] 213 |     M3 = 3,  // Binary Hex Dec  Expl.
[INFO] [stdout]     |     ^^
[INFO] [stdout] 214 |     M2 = 2,  // 0xx00b 00h 0  - Old User       ;\26bit Backward Compatibility modes
[INFO] [stdout]     |     ^^
[INFO] [stdout] 215 |     M1 = 1,  // 0xx01b 01h 1  - Old FIQ        ; (supported only on ARMv3, except ARMv3G,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 216 |     M0 = 0,  // 0xx10b 02h 2  - Old IRQ        ; and on some non-T variants of ARMv4)
[INFO] [stdout]     |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/arm_instructions.rs:789:9
[INFO] [stdout]     |
[INFO] [stdout] 788 |     McrMrc {
[INFO] [stdout]     |     ------ fields in this variant
[INFO] [stdout] 789 |         cond: Condition,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 790 |         copc: u32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 791 |         l: bool,
[INFO] [stdout]     |         ^
[INFO] [stdout] 792 |         crn: u32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 793 |         rd: u32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 794 |         cn: u32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 795 |         cinf: u32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 796 |         crm: u32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Instruction` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.58s
[INFO] running `Command { std: "docker" "inspect" "e37117e34e8182c94386d940a1ddf46be531df82d8c6bb96b3620f127d08a09a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e37117e34e8182c94386d940a1ddf46be531df82d8c6bb96b3620f127d08a09a", kill_on_drop: false }`
[INFO] [stdout] e37117e34e8182c94386d940a1ddf46be531df82d8c6bb96b3620f127d08a09a
