[INFO] fetching crate lr35902 0.1.1...
[INFO] checking lr35902-0.1.1 against 895980e0290783bb09b1ccf1b11f14eb09b10430 for pr-160186
[INFO] extracting crate lr35902 0.1.1 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate lr35902 0.1.1
[INFO] finished tweaking crates.io crate lr35902 0.1.1
[INFO] tweaked toml for crates.io crate lr35902 0.1.1 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate lr35902 0.1.1 on toolchain 895980e0290783bb09b1ccf1b11f14eb09b10430
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 136 packages to highest compatible versions
[INFO] [stderr]       Adding glutin v0.28.0 (available: v0.32.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d
[INFO] running `Command { std: "docker" "start" "ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.129
[INFO] [stderr]     Checking unicode-ident v1.0.27
[INFO] [stderr]     Checking once_cell v1.21.4
[INFO] [stderr]     Checking futures-core v0.3.34
[INFO] [stderr]    Compiling wasm-bindgen v0.2.129
[INFO] [stderr]    Compiling syn v3.0.9
[INFO] [stderr]     Checking futures-util v0.3.34
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.129
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.129
[INFO] [stderr]     Checking js-sys v0.3.106
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking web-sys v0.3.106
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.79
[INFO] [stderr]     Checking lr35902 v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Ref`
[INFO] [stdout]  --> src/screen/web.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::cell::{Ref, RefCell, RefMut};
[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: `Ref`
[INFO] [stdout]  --> src/screen/web.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::cell::{Ref, RefCell, RefMut};
[INFO] [stdout]   |                  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 26 |     cpu.registers.a += cpu.registers.d;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 45 |     cpu.registers.a += cpu.registers.h;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 54 |     cpu.registers.a += cpu.registers.l;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 63 |     cpu.registers.a += cpu.registers.a;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 73 |     cpu.registers.a += cpu.memory.rb(addr);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/cpu/data.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     panic!("fix f attribution");
[INFO] [stdout]     |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 114 |     let mut hl: u16 = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/cpu/data.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     panic!("fix f attribution");
[INFO] [stdout]     |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 127 |     let mut hl = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 26 |     cpu.registers.a += cpu.registers.d;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 45 |     cpu.registers.a += cpu.registers.h;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 54 |     cpu.registers.a += cpu.registers.l;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 63 |     cpu.registers.a += cpu.registers.a;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/cpu/data.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     panic!("fix f attribution");
[INFO] [stdout]    |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 73 |     cpu.registers.a += cpu.memory.rb(addr);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/cpu/data.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     panic!("fix f attribution");
[INFO] [stdout]     |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 114 |     let mut hl: u16 = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/cpu/data.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     panic!("fix f attribution");
[INFO] [stdout]     |     --------------------------- any code following this expression is unreachable
[INFO] [stdout] 127 |     let mut hl = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/cpu/data.rs:24:15
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn addr_d(cpu: &mut Cpu) {
[INFO] [stdout]    |               ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/cpu/data.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn addr_h(cpu: &mut Cpu) {
[INFO] [stdout]    |               ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/cpu/data.rs:52:15
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn addr_l(cpu: &mut Cpu) {
[INFO] [stdout]    |               ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/cpu/data.rs:61:15
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn addr_a(cpu: &mut Cpu) {
[INFO] [stdout]    |               ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]   --> src/cpu/data.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let addr = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/data.rs:112:16
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn addhlhl(cpu: &mut Cpu) {
[INFO] [stdout]     |                ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/data.rs:125:16
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn addhlsp(cpu: &mut Cpu) {
[INFO] [stdout]     |                ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:467:5
[INFO] [stdout]     |
[INFO] [stdout] 467 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:476:5
[INFO] [stdout]     |
[INFO] [stdout] 476 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:485:5
[INFO] [stdout]     |
[INFO] [stdout] 485 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:503:5
[INFO] [stdout]     |
[INFO] [stdout] 503 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:512:5
[INFO] [stdout]     |
[INFO] [stdout] 512 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:521:5
[INFO] [stdout]     |
[INFO] [stdout] 521 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:531:5
[INFO] [stdout]     |
[INFO] [stdout] 531 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/cpu/data.rs:24:15
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn addr_d(cpu: &mut Cpu) {
[INFO] [stdout]    |               ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/cpu/data.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn addr_h(cpu: &mut Cpu) {
[INFO] [stdout]    |               ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/cpu/data.rs:52:15
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn addr_l(cpu: &mut Cpu) {
[INFO] [stdout]    |               ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]   --> src/cpu/data.rs:61:15
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn addr_a(cpu: &mut Cpu) {
[INFO] [stdout]    |               ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]   --> src/cpu/data.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let addr = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/data.rs:112:16
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn addhlhl(cpu: &mut Cpu) {
[INFO] [stdout]     |                ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/data.rs:125:16
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn addhlsp(cpu: &mut Cpu) {
[INFO] [stdout]     |                ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:467:5
[INFO] [stdout]     |
[INFO] [stdout] 467 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:476:5
[INFO] [stdout]     |
[INFO] [stdout] 476 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:485:5
[INFO] [stdout]     |
[INFO] [stdout] 485 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:503:5
[INFO] [stdout]     |
[INFO] [stdout] 503 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:512:5
[INFO] [stdout]     |
[INFO] [stdout] 512 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:521:5
[INFO] [stdout]     |
[INFO] [stdout] 521 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]    --> src/cpu/data.rs:531:5
[INFO] [stdout]     |
[INFO] [stdout] 531 |     i &= 255;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `u8` to itself
[INFO] [stdout]    --> src/cpu/ld.rs:255:5
[INFO] [stdout]     |
[INFO] [stdout] 255 |     cpu.registers.h = cpu.registers.h;
[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 `is_sgb` is never read
[INFO] [stdout]   --> src/mmu/mmu.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Mmu {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 51 |     is_sgb: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Mmu` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_event_listener` is never used
[INFO] [stdout]   --> src/screen/web.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn add_event_listener(listener: &str, f: &Closure<dyn FnMut(web_sys::KeyboardEvent)>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 |     if hl > 65535 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 |     if hl > 65535 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:286:8
[INFO] [stdout]     |
[INFO] [stdout] 286 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:294:8
[INFO] [stdout]     |
[INFO] [stdout] 294 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:302:8
[INFO] [stdout]     |
[INFO] [stdout] 302 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:310:8
[INFO] [stdout]     |
[INFO] [stdout] 310 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:329:8
[INFO] [stdout]     |
[INFO] [stdout] 329 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:352:8
[INFO] [stdout]     |
[INFO] [stdout] 352 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:365:8
[INFO] [stdout]     |
[INFO] [stdout] 365 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:378:8
[INFO] [stdout]     |
[INFO] [stdout] 378 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:391:8
[INFO] [stdout]     |
[INFO] [stdout] 391 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:404:8
[INFO] [stdout]     |
[INFO] [stdout] 404 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:417:8
[INFO] [stdout]     |
[INFO] [stdout] 417 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:430:8
[INFO] [stdout]     |
[INFO] [stdout] 430 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:444:8
[INFO] [stdout]     |
[INFO] [stdout] 444 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:464:8
[INFO] [stdout]     |
[INFO] [stdout] 464 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:473:8
[INFO] [stdout]     |
[INFO] [stdout] 473 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:482:8
[INFO] [stdout]     |
[INFO] [stdout] 482 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:491:8
[INFO] [stdout]     |
[INFO] [stdout] 491 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:500:8
[INFO] [stdout]     |
[INFO] [stdout] 500 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:509:8
[INFO] [stdout]     |
[INFO] [stdout] 509 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:518:8
[INFO] [stdout]     |
[INFO] [stdout] 518 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:528:8
[INFO] [stdout]     |
[INFO] [stdout] 528 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `u8` to itself
[INFO] [stdout]    --> src/cpu/ld.rs:255:5
[INFO] [stdout]     |
[INFO] [stdout] 255 |     cpu.registers.h = cpu.registers.h;
[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 `is_sgb` is never read
[INFO] [stdout]   --> src/mmu/mmu.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Mmu {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 51 |     is_sgb: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Mmu` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_event_listener` is never used
[INFO] [stdout]   --> src/screen/web.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn add_event_listener(listener: &str, f: &Closure<dyn FnMut(web_sys::KeyboardEvent)>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 |     if hl > 65535 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 |     if hl > 65535 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:286:8
[INFO] [stdout]     |
[INFO] [stdout] 286 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:294:8
[INFO] [stdout]     |
[INFO] [stdout] 294 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:302:8
[INFO] [stdout]     |
[INFO] [stdout] 302 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:310:8
[INFO] [stdout]     |
[INFO] [stdout] 310 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:329:8
[INFO] [stdout]     |
[INFO] [stdout] 329 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:352:8
[INFO] [stdout]     |
[INFO] [stdout] 352 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:365:8
[INFO] [stdout]     |
[INFO] [stdout] 365 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:378:8
[INFO] [stdout]     |
[INFO] [stdout] 378 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:391:8
[INFO] [stdout]     |
[INFO] [stdout] 391 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:404:8
[INFO] [stdout]     |
[INFO] [stdout] 404 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:417:8
[INFO] [stdout]     |
[INFO] [stdout] 417 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:430:8
[INFO] [stdout]     |
[INFO] [stdout] 430 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:444:8
[INFO] [stdout]     |
[INFO] [stdout] 444 |     if cpu.registers.a < 0 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:464:8
[INFO] [stdout]     |
[INFO] [stdout] 464 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:473:8
[INFO] [stdout]     |
[INFO] [stdout] 473 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:482:8
[INFO] [stdout]     |
[INFO] [stdout] 482 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:491:8
[INFO] [stdout]     |
[INFO] [stdout] 491 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:500:8
[INFO] [stdout]     |
[INFO] [stdout] 500 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:509:8
[INFO] [stdout]     |
[INFO] [stdout] 509 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:518:8
[INFO] [stdout]     |
[INFO] [stdout] 518 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/cpu/data.rs:528:8
[INFO] [stdout]     |
[INFO] [stdout] 528 |     if i < 0 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 27.76s
[INFO] running `Command { std: "docker" "inspect" "ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d", kill_on_drop: false }`
[INFO] [stdout] ff56a6f5673f5e08df8a8aeb328c5db8786de9b247f23eca578c6d18041d2d7d
