[INFO] cloning repository https://github.com/aconbere/anders-gameboy-emulator
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/aconbere/anders-gameboy-emulator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faconbere%2Fanders-gameboy-emulator", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faconbere%2Fanders-gameboy-emulator'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4c87381272b60c484de4984f1f989f88d99cc252
[INFO] checking aconbere/anders-gameboy-emulator against master#30f74ff0dc4d66debc8b50724c446f817e5f75f4 for pr-121848-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faconbere%2Fanders-gameboy-emulator" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/aconbere/anders-gameboy-emulator on toolchain 30f74ff0dc4d66debc8b50724c446f817e5f75f4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/aconbere/anders-gameboy-emulator
[INFO] finished tweaking git repo https://github.com/aconbere/anders-gameboy-emulator
[INFO] tweaked toml for git repo https://github.com/aconbere/anders-gameboy-emulator written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/aconbere/anders-gameboy-emulator already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[ERROR] this task or one of its parent failed!
[ERROR] no output for 300 seconds
[ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace.
[INFO] checking aconbere/anders-gameboy-emulator against try#72eda894eb3548c7ba774079ce0afab42958d4ee for pr-121848-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faconbere%2Fanders-gameboy-emulator" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/aconbere/anders-gameboy-emulator on toolchain 72eda894eb3548c7ba774079ce0afab42958d4ee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/aconbere/anders-gameboy-emulator
[INFO] finished tweaking git repo https://github.com/aconbere/anders-gameboy-emulator
[INFO] tweaked toml for git repo https://github.com/aconbere/anders-gameboy-emulator written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/aconbere/anders-gameboy-emulator already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cfg-if v0.1.3
[INFO] [stderr]   Downloaded atty v0.2.10
[INFO] [stderr]   Downloaded redox_syscall v0.1.40
[INFO] [stderr]   Downloaded num-integer v0.1.38
[INFO] [stderr]   Downloaded num-traits v0.2.4
[INFO] [stderr]   Downloaded num-iter v0.1.37
[INFO] [stderr]   Downloaded libc v0.2.42
[INFO] [stderr]   Downloaded winapi v0.3.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e4c36726600fda738041a12845e1276de226345100fe6314253d00eb769e9d2d
[INFO] running `Command { std: "docker" "start" "-a" "e4c36726600fda738041a12845e1276de226345100fe6314253d00eb769e9d2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e4c36726600fda738041a12845e1276de226345100fe6314253d00eb769e9d2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e4c36726600fda738041a12845e1276de226345100fe6314253d00eb769e9d2d", kill_on_drop: false }`
[INFO] [stdout] e4c36726600fda738041a12845e1276de226345100fe6314253d00eb769e9d2d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e67e11b00e22f0c141ee30439eaf2e78d7e7c134b510c55d1dd7497260aea9d6
[INFO] running `Command { std: "docker" "start" "-a" "e67e11b00e22f0c141ee30439eaf2e78d7e7c134b510c55d1dd7497260aea9d6", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.4
[INFO] [stderr]    Compiling num-integer v0.1.38
[INFO] [stderr]     Checking libc v0.2.42
[INFO] [stderr]    Compiling cfg-if v0.1.3
[INFO] [stderr]    Compiling num-iter v0.1.37
[INFO] [stderr]     Checking unicode-width v0.1.5
[INFO] [stderr]     Checking strsim v0.7.0
[INFO] [stderr]     Checking bitflags v0.7.0
[INFO] [stderr]    Compiling sdl2-sys v0.31.0
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking textwrap v0.10.0
[INFO] [stderr]     Checking bitflags v1.0.3
[INFO] [stderr]     Checking rand v0.4.2
[INFO] [stderr]     Checking atty v0.2.10
[INFO] [stderr]     Checking clap v2.32.0
[INFO] [stderr]     Checking rand v0.3.22
[INFO] [stderr]     Checking num v0.1.42
[INFO] [stderr]     Checking sdl2 v0.31.0
[INFO] [stderr]     Checking anders-gameboy-emulator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:34:15
[INFO] [stdout]    |
[INFO] [stdout] 34 |         0x0000...0x00FF => Kind::RestartAndInterrupt,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:37:15
[INFO] [stdout]    |
[INFO] [stdout] 37 |         0x00FF...0x014F => Kind::CartridgeHeader,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |         0x014F...0x3FFF => Kind::CartridgeROMBank0,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |         0x3FFF...0x7FFF => Kind::CartridgeROMBank1,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 |         0x8000...0x8FFF => Kind::TileData1,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |         0x8800...0x97FF => Kind::TileData2,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 |         0x9800...0x9BFF => Kind::TileMap1,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |         0x9C00...0x9FFF => Kind::TileMap2,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:49:15
[INFO] [stdout]    |
[INFO] [stdout] 49 |         0xA000...0xBFFF => Kind::CartridgeRAM,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:52:15
[INFO] [stdout]    |
[INFO] [stdout] 52 |         0xC000...0xCFFF => Kind::InternalRAMBank0,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 |         0xD000...0xDFFF => Kind::InternalRAMBank1,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:55:15
[INFO] [stdout]    |
[INFO] [stdout] 55 |         0xE000...0xFDFF => Kind::EchoRAM,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:56:15
[INFO] [stdout]    |
[INFO] [stdout] 56 |         0xFE00...0xFE9F => Kind::ObjectAttributeMemory,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |         0xFEA0...0xFEFF => Kind::UnusableMemory,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:58:15
[INFO] [stdout]    |
[INFO] [stdout] 58 |         0xFF00...0xFF7F => Kind::HardwareIORegisters,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         0xFF80...0xFFFE => Kind::ZeroPage,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:60:15
[INFO] [stdout]    |
[INFO] [stdout] 60 |         0xFFFF...0xFFFF => Kind::InterruptEnableFlag,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `sdl2` is imported redundantly
[INFO] [stdout]  --> src/display/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use sdl2;
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate sdl2;
[INFO] [stdout]   | ------------------ the item `sdl2` is already imported here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `sdl2` is imported redundantly
[INFO] [stdout]  --> src/display/rate_limiter.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use sdl2;
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate sdl2;
[INFO] [stdout]   | ------------------ the item `sdl2` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::Map`
[INFO] [stdout]    --> src/gameboy.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     use std::iter::Map;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:34:15
[INFO] [stdout]    |
[INFO] [stdout] 34 |         0x0000...0x00FF => Kind::RestartAndInterrupt,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:37:15
[INFO] [stdout]    |
[INFO] [stdout] 37 |         0x00FF...0x014F => Kind::CartridgeHeader,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |         0x014F...0x3FFF => Kind::CartridgeROMBank0,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |         0x3FFF...0x7FFF => Kind::CartridgeROMBank1,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 |         0x8000...0x8FFF => Kind::TileData1,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |         0x8800...0x97FF => Kind::TileData2,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 |         0x9800...0x9BFF => Kind::TileMap1,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |         0x9C00...0x9FFF => Kind::TileMap2,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:49:15
[INFO] [stdout]    |
[INFO] [stdout] 49 |         0xA000...0xBFFF => Kind::CartridgeRAM,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:52:15
[INFO] [stdout]    |
[INFO] [stdout] 52 |         0xC000...0xCFFF => Kind::InternalRAMBank0,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 |         0xD000...0xDFFF => Kind::InternalRAMBank1,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:55:15
[INFO] [stdout]    |
[INFO] [stdout] 55 |         0xE000...0xFDFF => Kind::EchoRAM,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:56:15
[INFO] [stdout]    |
[INFO] [stdout] 56 |         0xFE00...0xFE9F => Kind::ObjectAttributeMemory,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |         0xFEA0...0xFEFF => Kind::UnusableMemory,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:58:15
[INFO] [stdout]    |
[INFO] [stdout] 58 |         0xFF00...0xFF7F => Kind::HardwareIORegisters,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         0xFF80...0xFFFE => Kind::ZeroPage,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/device/mod.rs:60:15
[INFO] [stdout]    |
[INFO] [stdout] 60 |         0xFFFF...0xFFFF => Kind::InterruptEnableFlag,
[INFO] [stdout]    |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `sdl2` is imported redundantly
[INFO] [stdout]  --> src/display/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use sdl2;
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate sdl2;
[INFO] [stdout]   | ------------------ the item `sdl2` is already imported here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `sdl2` is imported redundantly
[INFO] [stdout]  --> src/display/rate_limiter.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use sdl2;
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate sdl2;
[INFO] [stdout]   | ------------------ the item `sdl2` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple patterns overlap on their endpoints
[INFO] [stdout]   --> src/device/mod.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         0x0000...0x00FF => Kind::RestartAndInterrupt,
[INFO] [stdout]    |         --------------- this range overlaps on `255_u16`...
[INFO] [stdout] ...
[INFO] [stdout] 37 |         0x00FF...0x014F => Kind::CartridgeHeader,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ ... with this range
[INFO] [stdout]    |
[INFO] [stdout]    = note: you likely meant to write mutually exclusive ranges
[INFO] [stdout]    = note: `#[warn(overlapping_range_endpoints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple patterns overlap on their endpoints
[INFO] [stdout]   --> src/device/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         0x00FF...0x014F => Kind::CartridgeHeader,
[INFO] [stdout]    |         --------------- this range overlaps on `335_u16`...
[INFO] [stdout] 38 |         0x014F...0x3FFF => Kind::CartridgeROMBank0,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ ... with this range
[INFO] [stdout]    |
[INFO] [stdout]    = note: you likely meant to write mutually exclusive ranges
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple patterns overlap on their endpoints
[INFO] [stdout]   --> src/device/mod.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         0x014F...0x3FFF => Kind::CartridgeROMBank0,
[INFO] [stdout]    |         --------------- this range overlaps on `16383_u16`...
[INFO] [stdout] 39 |         0x3FFF...0x7FFF => Kind::CartridgeROMBank1,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ ... with this range
[INFO] [stdout]    |
[INFO] [stdout]    = note: you likely meant to write mutually exclusive ranges
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/device/mod.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |         _ => panic!("WTF: address: {:X} isn't covered", address),
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple patterns overlap on their endpoints
[INFO] [stdout]   --> src/device/mod.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         0x0000...0x00FF => Kind::RestartAndInterrupt,
[INFO] [stdout]    |         --------------- this range overlaps on `255_u16`...
[INFO] [stdout] ...
[INFO] [stdout] 37 |         0x00FF...0x014F => Kind::CartridgeHeader,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ ... with this range
[INFO] [stdout]    |
[INFO] [stdout]    = note: you likely meant to write mutually exclusive ranges
[INFO] [stdout]    = note: `#[warn(overlapping_range_endpoints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple patterns overlap on their endpoints
[INFO] [stdout]   --> src/device/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         0x00FF...0x014F => Kind::CartridgeHeader,
[INFO] [stdout]    |         --------------- this range overlaps on `335_u16`...
[INFO] [stdout] 38 |         0x014F...0x3FFF => Kind::CartridgeROMBank0,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ ... with this range
[INFO] [stdout]    |
[INFO] [stdout]    = note: you likely meant to write mutually exclusive ranges
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple patterns overlap on their endpoints
[INFO] [stdout]   --> src/device/mod.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         0x014F...0x3FFF => Kind::CartridgeROMBank0,
[INFO] [stdout]    |         --------------- this range overlaps on `16383_u16`...
[INFO] [stdout] 39 |         0x3FFF...0x7FFF => Kind::CartridgeROMBank1,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ ... with this range
[INFO] [stdout]    |
[INFO] [stdout]    = note: you likely meant to write mutually exclusive ranges
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/device/mod.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |         _ => panic!("WTF: address: {:X} isn't covered", address),
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instructions`
[INFO] [stdout]     --> src/instructions.rs:1869:13
[INFO] [stdout]      |
[INFO] [stdout] 1869 |         let instructions = new();
[INFO] [stdout]      |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instructions`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `WindowTileSelect`, `WindowDisplayEnable`, `ObjectSize`, `ObjectDisplayEnable`, and `BackgroundDisplay` are never constructed
[INFO] [stdout]   --> src/device/hardware_io.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub enum LCDControlFlag {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 8  |     LCDDisplayEnable,
[INFO] [stdout] 9  |     WindowTileSelect,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     WindowDisplayEnable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     ObjectSize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 15 |     ObjectDisplayEnable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     BackgroundDisplay,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LCDModes` is never used
[INFO] [stdout]   --> src/device/hardware_io.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub enum LCDModes {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LCDStatusFlag` is never used
[INFO] [stdout]   --> src/device/hardware_io.rs:60:10
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub enum LCDStatusFlag {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_index` is never used
[INFO] [stdout]   --> src/device/hardware_io.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl LCDStatusFlag {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] 70 |     pub fn get_index(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_flag` and `get_flag` are never used
[INFO] [stdout]   --> src/device/hardware_io.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 89 | impl LCDStatusRegister {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] 90 |     pub fn set_flag(&mut self, f: LCDStatusFlag, t: bool) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn get_flag(&self, f: LCDStatusFlag) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `flags` is never used
[INFO] [stdout]   --> src/device/interrupt.rs:96:8
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub fn flags(enabled: u8, requested: u8) -> Vec<Flag> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `kind` is never read
[INFO] [stdout]   --> src/device/tile_data.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub struct TileData {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 9  |     storage: [u8; 4096],
[INFO] [stdout] 10 |     kind: TileDataKind,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_zero` is never used
[INFO] [stdout]   --> src/tile.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Tile {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn is_zero(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LD8Args` is never used
[INFO] [stdout]   --> src/instructions.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum LD8Args {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Mem` is never constructed
[INFO] [stdout]   --> src/instructions.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum Destination16 {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] 26 |     R(Registers16),
[INFO] [stdout] 27 |     Mem(Registers16),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Destination16` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DAA` is never constructed
[INFO] [stdout]   --> src/instructions.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub enum Op {
[INFO] [stdout]    |          -- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 89 |     DAA,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Op` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `State` is never used
[INFO] [stdout]  --> src/repl.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum State {
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Repl` is never constructed
[INFO] [stdout]  --> src/repl.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Repl {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new` is never used
[INFO] [stdout]   --> src/repl.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn new(state:State) -> Repl {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `WindowTileSelect`, `WindowDisplayEnable`, `ObjectSize`, `ObjectDisplayEnable`, and `BackgroundDisplay` are never constructed
[INFO] [stdout]   --> src/device/hardware_io.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub enum LCDControlFlag {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 8  |     LCDDisplayEnable,
[INFO] [stdout] 9  |     WindowTileSelect,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     WindowDisplayEnable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     ObjectSize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 15 |     ObjectDisplayEnable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     BackgroundDisplay,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LCDModes` is never used
[INFO] [stdout]   --> src/device/hardware_io.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub enum LCDModes {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LCDStatusFlag` is never used
[INFO] [stdout]   --> src/device/hardware_io.rs:60:10
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub enum LCDStatusFlag {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_index` is never used
[INFO] [stdout]   --> src/device/hardware_io.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl LCDStatusFlag {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] 70 |     pub fn get_index(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_flag` and `get_flag` are never used
[INFO] [stdout]   --> src/device/hardware_io.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 89 | impl LCDStatusRegister {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] 90 |     pub fn set_flag(&mut self, f: LCDStatusFlag, t: bool) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn get_flag(&self, f: LCDStatusFlag) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `flags` is never used
[INFO] [stdout]   --> src/device/interrupt.rs:96:8
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub fn flags(enabled: u8, requested: u8) -> Vec<Flag> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `kind` is never read
[INFO] [stdout]   --> src/device/tile_data.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub struct TileData {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 9  |     storage: [u8; 4096],
[INFO] [stdout] 10 |     kind: TileDataKind,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_zero` is never used
[INFO] [stdout]   --> src/tile.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Tile {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn is_zero(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LD8Args` is never used
[INFO] [stdout]   --> src/instructions.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum LD8Args {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Mem` is never constructed
[INFO] [stdout]   --> src/instructions.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum Destination16 {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] 26 |     R(Registers16),
[INFO] [stdout] 27 |     Mem(Registers16),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Destination16` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DAA` is never constructed
[INFO] [stdout]   --> src/instructions.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub enum Op {
[INFO] [stdout]    |          -- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 89 |     DAA,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Op` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `State` is never used
[INFO] [stdout]  --> src/repl.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum State {
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Repl` is never constructed
[INFO] [stdout]  --> src/repl.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Repl {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new` is never used
[INFO] [stdout]   --> src/repl.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn new(state:State) -> Repl {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 39 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 37 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.10s
[INFO] running `Command { std: "docker" "inspect" "e67e11b00e22f0c141ee30439eaf2e78d7e7c134b510c55d1dd7497260aea9d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e67e11b00e22f0c141ee30439eaf2e78d7e7c134b510c55d1dd7497260aea9d6", kill_on_drop: false }`
[INFO] [stdout] e67e11b00e22f0c141ee30439eaf2e78d7e7c134b510c55d1dd7497260aea9d6
