[INFO] fetching crate lr35902 0.1.1... [INFO] testing lr35902-0.1.1 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate lr35902 0.1.1 into /workspace/builds/worker-1-tc1/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-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate lr35902 0.1.1 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 135 packages to latest 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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8159fd980e64c323fd3e27e0d04473941a3c82ac590cf64721ae1963f2d00931 [INFO] running `Command { std: "docker" "start" "-a" "8159fd980e64c323fd3e27e0d04473941a3c82ac590cf64721ae1963f2d00931", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8159fd980e64c323fd3e27e0d04473941a3c82ac590cf64721ae1963f2d00931", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8159fd980e64c323fd3e27e0d04473941a3c82ac590cf64721ae1963f2d00931", kill_on_drop: false }` [INFO] [stdout] 8159fd980e64c323fd3e27e0d04473941a3c82ac590cf64721ae1963f2d00931 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 78e34669b47517039d38c47ee3c74f08ece6960d81bccce4d38c5fd4503eb4dd [INFO] running `Command { std: "docker" "start" "-a" "78e34669b47517039d38c47ee3c74f08ece6960d81bccce4d38c5fd4503eb4dd", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.100 [INFO] [stderr] Compiling bumpalo v3.19.0 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Compiling wasm-bindgen v0.2.100 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling cfg-if v1.0.1 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.100 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.100 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.100 [INFO] [stderr] Compiling js-sys v0.3.77 [INFO] [stderr] Compiling console_error_panic_hook v0.1.7 [INFO] [stderr] Compiling web-sys v0.3.77 [INFO] [stderr] Compiling wasm-bindgen-futures v0.4.50 [INFO] [stderr] Compiling lr35902 v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: dropping unsupported crate type `cdylib` for target `x86_64-unknown-linux-musl` [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)]` 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)]` 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)]` 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)]` 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: 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] = note: `#[warn(dead_code)]` on by default [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) { [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 16.85s [INFO] running `Command { std: "docker" "inspect" "78e34669b47517039d38c47ee3c74f08ece6960d81bccce4d38c5fd4503eb4dd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "78e34669b47517039d38c47ee3c74f08ece6960d81bccce4d38c5fd4503eb4dd", kill_on_drop: false }` [INFO] [stdout] 78e34669b47517039d38c47ee3c74f08ece6960d81bccce4d38c5fd4503eb4dd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 92e800178338ab6cb77a858158e20c1f1219e7f464e61b35b5f79a968496f598 [INFO] running `Command { std: "docker" "start" "-a" "92e800178338ab6cb77a858158e20c1f1219e7f464e61b35b5f79a968496f598", kill_on_drop: false }` [INFO] [stdout] warning: dropping unsupported crate type `cdylib` for target `x86_64-unknown-linux-musl` [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)]` 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)]` 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)]` 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)]` 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: 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] = note: `#[warn(dead_code)]` on by default [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) { [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] Compiling 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)]` 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)]` 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)]` 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)]` 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: 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] = note: `#[warn(dead_code)]` on by default [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) { [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 `test` profile [unoptimized + debuginfo] target(s) in 0.60s [INFO] running `Command { std: "docker" "inspect" "92e800178338ab6cb77a858158e20c1f1219e7f464e61b35b5f79a968496f598", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "92e800178338ab6cb77a858158e20c1f1219e7f464e61b35b5f79a968496f598", kill_on_drop: false }` [INFO] [stdout] 92e800178338ab6cb77a858158e20c1f1219e7f464e61b35b5f79a968496f598 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] bbae1e55dccd5d885a5597dc2ebcbf650e969f52ebff78945f7fe1571cbbed37 [INFO] running `Command { std: "docker" "start" "-a" "bbae1e55dccd5d885a5597dc2ebcbf650e969f52ebff78945f7fe1571cbbed37", kill_on_drop: false }` [INFO] [stderr] warning: dropping unsupported crate type `cdylib` for target `x86_64-unknown-linux-musl` [INFO] [stderr] [INFO] [stderr] warning: unused import: `Ref` [INFO] [stderr] --> src/screen/web.rs:6:18 [INFO] [stderr] | [INFO] [stderr] 6 | use core::cell::{Ref, RefCell, RefMut}; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/cpu/data.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 25 | panic!("fix f attribution"); [INFO] [stderr] | --------------------------- any code following this expression is unreachable [INFO] [stderr] 26 | cpu.registers.a += cpu.registers.d; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/cpu/data.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 44 | panic!("fix f attribution"); [INFO] [stderr] | --------------------------- any code following this expression is unreachable [INFO] [stderr] 45 | cpu.registers.a += cpu.registers.h; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/cpu/data.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 53 | panic!("fix f attribution"); [INFO] [stderr] | --------------------------- any code following this expression is unreachable [INFO] [stderr] 54 | cpu.registers.a += cpu.registers.l; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/cpu/data.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 62 | panic!("fix f attribution"); [INFO] [stderr] | --------------------------- any code following this expression is unreachable [INFO] [stderr] 63 | cpu.registers.a += cpu.registers.a; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/cpu/data.rs:73:5 [INFO] [stderr] | [INFO] [stderr] 72 | panic!("fix f attribution"); [INFO] [stderr] | --------------------------- any code following this expression is unreachable [INFO] [stderr] 73 | cpu.registers.a += cpu.memory.rb(addr); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/cpu/data.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 113 | panic!("fix f attribution"); [INFO] [stderr] | --------------------------- any code following this expression is unreachable [INFO] [stderr] 114 | let mut hl: u16 = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/cpu/data.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 126 | panic!("fix f attribution"); [INFO] [stderr] | --------------------------- any code following this expression is unreachable [INFO] [stderr] 127 | let mut hl = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cpu` [INFO] [stderr] --> src/cpu/data.rs:24:15 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn addr_d(cpu: &mut Cpu) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_cpu` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cpu` [INFO] [stderr] --> src/cpu/data.rs:43:15 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn addr_h(cpu: &mut Cpu) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_cpu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cpu` [INFO] [stderr] --> src/cpu/data.rs:52:15 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn addr_l(cpu: &mut Cpu) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_cpu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cpu` [INFO] [stderr] --> src/cpu/data.rs:61:15 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn addr_a(cpu: &mut Cpu) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_cpu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addr` [INFO] [stderr] --> src/cpu/data.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | let addr = ((cpu.registers.h as u16) << 8) + cpu.registers.l as u16; [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cpu` [INFO] [stderr] --> src/cpu/data.rs:112:16 [INFO] [stderr] | [INFO] [stderr] 112 | pub fn addhlhl(cpu: &mut Cpu) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_cpu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cpu` [INFO] [stderr] --> src/cpu/data.rs:125:16 [INFO] [stderr] | [INFO] [stderr] 125 | pub fn addhlsp(cpu: &mut Cpu) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_cpu` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/cpu/data.rs:467:5 [INFO] [stderr] | [INFO] [stderr] 467 | i &= 255; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/cpu/data.rs:476:5 [INFO] [stderr] | [INFO] [stderr] 476 | i &= 255; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/cpu/data.rs:485:5 [INFO] [stderr] | [INFO] [stderr] 485 | i &= 255; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/cpu/data.rs:494:5 [INFO] [stderr] | [INFO] [stderr] 494 | i &= 255; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/cpu/data.rs:503:5 [INFO] [stderr] | [INFO] [stderr] 503 | i &= 255; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/cpu/data.rs:512:5 [INFO] [stderr] | [INFO] [stderr] 512 | i &= 255; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/cpu/data.rs:521:5 [INFO] [stderr] | [INFO] [stderr] 521 | i &= 255; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/cpu/data.rs:531:5 [INFO] [stderr] | [INFO] [stderr] 531 | i &= 255; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: field `is_sgb` is never read [INFO] [stderr] --> src/mmu/mmu.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 20 | pub struct Mmu { [INFO] [stderr] | --- field in this struct [INFO] [stderr] ... [INFO] [stderr] 51 | is_sgb: bool, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Mmu` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `add_event_listener` is never used [INFO] [stderr] --> src/screen/web.rs:27:4 [INFO] [stderr] | [INFO] [stderr] 27 | fn add_event_listener(listener: &str, f: &Closure) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:117:8 [INFO] [stderr] | [INFO] [stderr] 117 | if hl > 65535 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:129:8 [INFO] [stderr] | [INFO] [stderr] 129 | if hl > 65535 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:286:8 [INFO] [stderr] | [INFO] [stderr] 286 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:294:8 [INFO] [stderr] | [INFO] [stderr] 294 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:302:8 [INFO] [stderr] | [INFO] [stderr] 302 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:310:8 [INFO] [stderr] | [INFO] [stderr] 310 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:329:8 [INFO] [stderr] | [INFO] [stderr] 329 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:352:8 [INFO] [stderr] | [INFO] [stderr] 352 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:365:8 [INFO] [stderr] | [INFO] [stderr] 365 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:378:8 [INFO] [stderr] | [INFO] [stderr] 378 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:391:8 [INFO] [stderr] | [INFO] [stderr] 391 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:404:8 [INFO] [stderr] | [INFO] [stderr] 404 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:417:8 [INFO] [stderr] | [INFO] [stderr] 417 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:430:8 [INFO] [stderr] | [INFO] [stderr] 430 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:444:8 [INFO] [stderr] | [INFO] [stderr] 444 | if cpu.registers.a < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:464:8 [INFO] [stderr] | [INFO] [stderr] 464 | if i < 0 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:473:8 [INFO] [stderr] | [INFO] [stderr] 473 | if i < 0 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:482:8 [INFO] [stderr] | [INFO] [stderr] 482 | if i < 0 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:491:8 [INFO] [stderr] | [INFO] [stderr] 491 | if i < 0 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:500:8 [INFO] [stderr] | [INFO] [stderr] 500 | if i < 0 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:509:8 [INFO] [stderr] | [INFO] [stderr] 509 | if i < 0 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:518:8 [INFO] [stderr] | [INFO] [stderr] 518 | if i < 0 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/cpu/data.rs:528:8 [INFO] [stderr] | [INFO] [stderr] 528 | if i < 0 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `lr35902` (lib) generated 49 warnings (run `cargo fix --lib -p lr35902` to apply 1 suggestion) [INFO] [stderr] warning: `lr35902` (lib test) generated 48 warnings (48 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/lr35902-4fd47420f4ad84ca) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "bbae1e55dccd5d885a5597dc2ebcbf650e969f52ebff78945f7fe1571cbbed37", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bbae1e55dccd5d885a5597dc2ebcbf650e969f52ebff78945f7fe1571cbbed37", kill_on_drop: false }` [INFO] [stdout] bbae1e55dccd5d885a5597dc2ebcbf650e969f52ebff78945f7fe1571cbbed37