[INFO] cloning repository https://github.com/davedissian/gbc-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/davedissian/gbc-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavedissian%2Fgbc-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavedissian%2Fgbc-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e603e5f037a7ac662b98c83a3437e89337683828
[INFO] testing davedissian/gbc-rs against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavedissian%2Fgbc-rs" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/davedissian/gbc-rs
[INFO] finished tweaking git repo https://github.com/davedissian/gbc-rs
[INFO] tweaked toml for git repo https://github.com/davedissian/gbc-rs written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/davedissian/gbc-rs on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/davedissian/gbc-rs 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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Updating git repository `https://github.com/davedissian/rasteriser.git`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded redox_syscall v0.1.32
[INFO] [stderr]   Downloaded smallvec v0.4.4
[INFO] [stderr]   Downloaded wayland-window v0.13.2
[INFO] [stderr]   Downloaded cocoa v0.9.2
[INFO] [stderr]   Downloaded shell32-sys v0.1.2
[INFO] [stderr]   Downloaded shared_library v0.1.8
[INFO] [stderr]   Downloaded core-graphics v0.8.2
[INFO] [stderr]   Downloaded cgl v0.2.1
[INFO] [stderr]   Downloaded core-foundation-sys v0.3.1
[INFO] [stderr]   Downloaded backtrace v0.3.4
[INFO] [stderr]   Downloaded khronos_api v2.0.0
[INFO] [stderr]   Downloaded libc v0.2.34
[INFO] [stderr]   Downloaded gl_generator v0.6.1
[INFO] [stderr]   Downloaded gleam v0.4.17
[INFO] [stderr]   Downloaded core-foundation v0.3.0
[INFO] [stderr]   Downloaded xml-rs v0.6.1
[INFO] [stderr]   Downloaded num-traits v0.1.41
[INFO] [stderr]   Downloaded libloading v0.3.4
[INFO] [stderr]   Downloaded gdi32-sys v0.1.2
[INFO] [stderr]   Downloaded gl_generator v0.7.0
[INFO] [stderr]   Downloaded wayland-sys v0.9.10
[INFO] [stderr]   Downloaded core-foundation-sys v0.4.6
[INFO] [stderr]   Downloaded dwmapi-sys v0.1.1
[INFO] [stderr]   Downloaded memmap v0.6.1
[INFO] [stderr]   Downloaded wayland-scanner v0.9.10
[INFO] [stderr]   Downloaded wayland-client v0.9.10
[INFO] [stderr]   Downloaded dlib v0.4.0
[INFO] [stderr]   Downloaded core-foundation v0.4.6
[INFO] [stderr]   Downloaded tempfile v2.2.0
[INFO] [stderr]   Downloaded libloading v0.4.3
[INFO] [stderr]   Downloaded user32-sys v0.1.3
[INFO] [stderr]   Downloaded token_store v0.1.2
[INFO] [stderr]   Downloaded unborrow v0.3.1
[INFO] [stderr]   Downloaded glutin v0.11.0
[INFO] [stderr]   Downloaded winit v0.9.0
[INFO] [stderr]   Downloaded wayland-scanner v0.12.4
[INFO] [stderr]   Downloaded wayland-client v0.12.4
[INFO] [stderr]   Downloaded wayland-sys v0.12.4
[INFO] [stderr]   Downloaded x11-dl v2.17.1
[INFO] [stderr]   Downloaded glium v0.19.0
[INFO] [stderr]   Downloaded wayland-protocols v0.12.4
[INFO] [stderr]   Downloaded cocoa v0.11.0
[INFO] [stderr]   Downloaded core-graphics v0.10.0
[INFO] [stderr]   Downloaded wayland-kbd v0.13.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 726973e1b1c4b30b467803b5a94a35cd4e312e28f4f6f187e39122b38114185b
[INFO] running `Command { std: "docker" "start" "-a" "726973e1b1c4b30b467803b5a94a35cd4e312e28f4f6f187e39122b38114185b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "726973e1b1c4b30b467803b5a94a35cd4e312e28f4f6f187e39122b38114185b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "726973e1b1c4b30b467803b5a94a35cd4e312e28f4f6f187e39122b38114185b", kill_on_drop: false }`
[INFO] [stdout] 726973e1b1c4b30b467803b5a94a35cd4e312e28f4f6f187e39122b38114185b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6498b8ac84e07ba76d5b9b8c3ffedaaff228a7f3f0e18c66ec3680671e637dea
[INFO] running `Command { std: "docker" "start" "-a" "6498b8ac84e07ba76d5b9b8c3ffedaaff228a7f3f0e18c66ec3680671e637dea", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling libc v0.2.34
[INFO] [stderr]    Compiling bitflags v1.0.1
[INFO] [stderr]    Compiling siphasher v0.2.2
[INFO] [stderr]    Compiling lazy_static v1.0.0
[INFO] [stderr]    Compiling lazy_static v0.2.11
[INFO] [stderr]    Compiling libloading v0.4.3
[INFO] [stderr]    Compiling dtoa v0.4.2
[INFO] [stderr]    Compiling itoa v0.3.4
[INFO] [stderr]    Compiling num-traits v0.1.41
[INFO] [stderr]    Compiling serde v0.9.15
[INFO] [stderr]    Compiling khronos_api v2.0.0
[INFO] [stderr]    Compiling log v0.3.8
[INFO] [stderr]    Compiling bitflags v0.9.1
[INFO] [stderr]    Compiling token_store v0.1.2
[INFO] [stderr]    Compiling pkg-config v0.3.9
[INFO] [stderr]    Compiling cc v1.0.3
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]    Compiling cfg-if v0.1.2
[INFO] [stderr]    Compiling rustc-demangle v0.1.5
[INFO] [stderr]    Compiling smallvec v0.4.4
[INFO] [stderr]    Compiling unborrow v0.3.1
[INFO] [stderr]    Compiling xml-rs v0.6.1
[INFO] [stderr]    Compiling phf_shared v0.7.21
[INFO] [stderr]    Compiling phf v0.7.21
[INFO] [stderr]    Compiling dlib v0.4.0
[INFO] [stderr]    Compiling wayland-sys v0.12.4
[INFO] [stderr]    Compiling rand v0.3.18
[INFO] [stderr]    Compiling memmap v0.6.1
[INFO] [stderr]    Compiling shared_library v0.1.8
[INFO] [stderr]    Compiling time v0.1.38
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling wayland-scanner v0.12.4
[INFO] [stderr]    Compiling gl_generator v0.7.0
[INFO] [stderr]    Compiling x11-dl v2.17.1
[INFO] [stderr]    Compiling wayland-scanner v0.9.10
[INFO] [stderr]    Compiling phf_generator v0.7.21
[INFO] [stderr]    Compiling tempfile v2.2.0
[INFO] [stderr]    Compiling phf_codegen v0.7.21
[INFO] [stderr]    Compiling target_build_utils v0.3.1
[INFO] [stderr]    Compiling wayland-client v0.12.4
[INFO] [stderr]    Compiling wayland-protocols v0.12.4
[INFO] [stderr]    Compiling glutin v0.11.0
[INFO] [stderr]    Compiling glium v0.19.0
[INFO] [stderr]    Compiling wayland-client v0.9.10
[INFO] [stderr]    Compiling backtrace-sys v0.1.16
[INFO] [stderr]    Compiling serde_json v0.9.10
[INFO] [stderr]    Compiling wayland-kbd v0.13.0
[INFO] [stderr]    Compiling wayland-window v0.13.2
[INFO] [stderr]    Compiling winit v0.9.0
[INFO] [stderr]    Compiling backtrace v0.3.4
[INFO] [stderr]    Compiling libloading v0.3.4
[INFO] [stderr]    Compiling dlib v0.3.1
[INFO] [stderr]    Compiling wayland-sys v0.9.10
[INFO] [stderr]    Compiling rasteriser v0.1.0 (https://github.com/davedissian/rasteriser.git#f26c7fc6)
[INFO] [stderr]    Compiling gbc-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/cartridge/mbc1.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |             0x0000...0x3FFF => self.rom[addr as usize],
[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/cartridge/mbc1.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |             0x4000...0x7FFF => self.rom[self.rom_bank_addr(addr - 0x4000, self.rom_bank)],
[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/cartridge/mbc1.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 |             0xA000...0xBFFF => self.ram[self.ram_bank_addr(addr - 0xA000, self.ram_bank)],
[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/cartridge/mbc1.rs:25:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |             0x0000...0x1FFF => {
[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/cartridge/mbc1.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |             0x2000...0x3FFF => {
[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/cartridge/mbc1.rs:43:19
[INFO] [stdout]    |
[INFO] [stdout] 43 |             0x4000...0x5FFF => {
[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/cartridge/mbc1.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 |             0x6000...0x7FFF => {
[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/cartridge/mbc1.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |             0xA000...0xBFFF => {
[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/gpu.rs:123:19
[INFO] [stdout]     |
[INFO] [stdout] 123 |             0x8000...0x9FFF => self.vram[addr as usize - 0x8000],
[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/gpu.rs:124:19
[INFO] [stdout]     |
[INFO] [stdout] 124 |             0xFE00...0xFE9F => self.oam[addr as usize - 0xFE00],
[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/gpu.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 |             0x8000...0x9FFF => self.vram[addr as usize - 0x8000] = value,
[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/gpu.rs:145:19
[INFO] [stdout]     |
[INFO] [stdout] 145 |             0xFE00...0xFE9F => self.oam[addr as usize - 0xFE00] = value,
[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/memory.rs:125:19
[INFO] [stdout]     |
[INFO] [stdout] 125 |             0x0000...0x7FFF => {
[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/memory.rs:136:19
[INFO] [stdout]     |
[INFO] [stdout] 136 |             0x8000...0x9FFF => self.gpu.read_u8(addr),
[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/memory.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |             0xA000...0xBFFF => {
[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/memory.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000],
[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/memory.rs:145:19
[INFO] [stdout]     |
[INFO] [stdout] 145 |             0xE000...0xFDFF => self.internal[addr as usize - 0xE000],
[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/memory.rs:146:19
[INFO] [stdout]     |
[INFO] [stdout] 146 |             0xFE00...0xFE9F => self.gpu.read_u8(addr),
[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/memory.rs:147:19
[INFO] [stdout]     |
[INFO] [stdout] 147 |             0xFEA0...0xFEFF => { println!("WARNING: Reading from unused memory area. Addr = 0x{:X}", addr); 0 },
[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/memory.rs:149:19
[INFO] [stdout]     |
[INFO] [stdout] 149 |             0xFF00...0xFF7F => self.read_u8_io(addr),
[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/memory.rs:150:19
[INFO] [stdout]     |
[INFO] [stdout] 150 |             0xFF80...0xFFFE => self.zero_page_ram[addr as usize - 0xFF80],
[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/memory.rs:163:19
[INFO] [stdout]     |
[INFO] [stdout] 163 |             0x0000...0x7FFF => {
[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/memory.rs:170:19
[INFO] [stdout]     |
[INFO] [stdout] 170 |             0x8000...0x9FFF => self.gpu.write_u8(addr, value),
[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/memory.rs:171:19
[INFO] [stdout]     |
[INFO] [stdout] 171 |             0xA000...0xBFFF =>  {
[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/memory.rs:178:19
[INFO] [stdout]     |
[INFO] [stdout] 178 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000] = value,
[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/memory.rs:179:19
[INFO] [stdout]     |
[INFO] [stdout] 179 |             0xE000...0xFDFF => self.internal[addr as usize - 0xE000] = value,
[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/memory.rs:180:19
[INFO] [stdout]     |
[INFO] [stdout] 180 |             0xFE00...0xFE9F => self.gpu.write_u8(addr, value),
[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/memory.rs:181:19
[INFO] [stdout]     |
[INFO] [stdout] 181 |             0xFEA0...0xFEFF => println!("WARNING: Writing to unused memory area. Addr = 0x{:X}", addr),
[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/memory.rs:182:19
[INFO] [stdout]     |
[INFO] [stdout] 182 |             0xFF00...0xFF7F => self.write_u8_io(addr, value),
[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/memory.rs:183:19
[INFO] [stdout]     |
[INFO] [stdout] 183 |             0xFF80...0xFFFE => self.zero_page_ram[addr as usize - 0xFF80] = value,
[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/memory.rs:198:19
[INFO] [stdout]     |
[INFO] [stdout] 198 |             0xFF40...0xFF4F => self.gpu.read_u8(addr),
[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/memory.rs:231:19
[INFO] [stdout]     |
[INFO] [stdout] 231 |             0xFF40...0xFF4F => self.gpu.write_u8(addr, value),
[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: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cpu/ops.rs:60:18
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Partial8(Box<Fn(u8) -> R>),
[INFO] [stdout]    |                  ^^^^^^^^^^^
[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(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Partial8(Box<dyn Fn(u8) -> R>),
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cpu/ops.rs:61:19
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Partial16(Box<Fn(u16) -> R>),
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Partial16(Box<dyn Fn(u16) -> R>),
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cartridge/mod.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub mbc: Box<MemoryBankController>,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub mbc: Box<dyn MemoryBankController>,
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/gpu.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 |     driver: Box<driver::Driver>,
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 8 |     driver: Box<dyn driver::Driver>,
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/gpu.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |     window: Box<driver::Window>,
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     window: Box<dyn driver::Window>,
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/gpu.rs:78:54
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn set_key_callback(&mut self, callback: Box<FnMut(KeyCode, KeyState)>) {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn set_key_callback(&mut self, callback: Box<dyn FnMut(KeyCode, KeyState)>) {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cartridge/mod.rs:64:22
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mbc: Box<MemoryBankController> = match cartridge_type {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mbc: Box<dyn MemoryBankController> = match cartridge_type {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/memory.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |             _ => panic!("ERROR: Out of bounds memory read. Addr = 0x{:X}", addr),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/memory.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |             0x0000...0x7FFF => {
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 136 |             0x8000...0x9FFF => self.gpu.read_u8(addr),
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] 137 |             0xA000...0xBFFF => {
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 144 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000],
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 152 |             _ => panic!("ERROR: Out of bounds memory read. Addr = 0x{:X}", addr),
[INFO] [stdout]     |             ^ ...and 6 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/memory.rs:185:13
[INFO] [stdout]     |
[INFO] [stdout] 185 |             _ => panic!("ERROR: Out of bounds memory write. Addr = 0x{:X}", addr),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/memory.rs:185:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             0x0000...0x7FFF => {
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 170 |             0x8000...0x9FFF => self.gpu.write_u8(addr, value),
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] 171 |             0xA000...0xBFFF =>  {
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 178 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000] = value,
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 185 |             _ => panic!("ERROR: Out of bounds memory write. Addr = 0x{:X}", addr),
[INFO] [stdout]     |             ^ ...and 6 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 09s
[INFO] running `Command { std: "docker" "inspect" "6498b8ac84e07ba76d5b9b8c3ffedaaff228a7f3f0e18c66ec3680671e637dea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6498b8ac84e07ba76d5b9b8c3ffedaaff228a7f3f0e18c66ec3680671e637dea", kill_on_drop: false }`
[INFO] [stdout] 6498b8ac84e07ba76d5b9b8c3ffedaaff228a7f3f0e18c66ec3680671e637dea
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 605232d412855262aef666e99c4cf111a52d4f63f54eb31c291754c7fffa235c
[INFO] running `Command { std: "docker" "start" "-a" "605232d412855262aef666e99c4cf111a52d4f63f54eb31c291754c7fffa235c", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling gbc-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `cpu::ops::*`
[INFO] [stdout]    --> src/cpu/interpreter.rs:684:9
[INFO] [stdout]     |
[INFO] [stdout] 684 |     use cpu::ops::*;
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/cartridge/mbc1.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |             0x0000...0x3FFF => self.rom[addr as usize],
[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/cartridge/mbc1.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |             0x4000...0x7FFF => self.rom[self.rom_bank_addr(addr - 0x4000, self.rom_bank)],
[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/cartridge/mbc1.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 |             0xA000...0xBFFF => self.ram[self.ram_bank_addr(addr - 0xA000, self.ram_bank)],
[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/cartridge/mbc1.rs:25:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |             0x0000...0x1FFF => {
[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/cartridge/mbc1.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |             0x2000...0x3FFF => {
[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/cartridge/mbc1.rs:43:19
[INFO] [stdout]    |
[INFO] [stdout] 43 |             0x4000...0x5FFF => {
[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/cartridge/mbc1.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 |             0x6000...0x7FFF => {
[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/cartridge/mbc1.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |             0xA000...0xBFFF => {
[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/gpu.rs:123:19
[INFO] [stdout]     |
[INFO] [stdout] 123 |             0x8000...0x9FFF => self.vram[addr as usize - 0x8000],
[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/gpu.rs:124:19
[INFO] [stdout]     |
[INFO] [stdout] 124 |             0xFE00...0xFE9F => self.oam[addr as usize - 0xFE00],
[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/gpu.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 |             0x8000...0x9FFF => self.vram[addr as usize - 0x8000] = value,
[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/gpu.rs:145:19
[INFO] [stdout]     |
[INFO] [stdout] 145 |             0xFE00...0xFE9F => self.oam[addr as usize - 0xFE00] = value,
[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/memory.rs:125:19
[INFO] [stdout]     |
[INFO] [stdout] 125 |             0x0000...0x7FFF => {
[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/memory.rs:136:19
[INFO] [stdout]     |
[INFO] [stdout] 136 |             0x8000...0x9FFF => self.gpu.read_u8(addr),
[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/memory.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |             0xA000...0xBFFF => {
[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/memory.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000],
[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/memory.rs:145:19
[INFO] [stdout]     |
[INFO] [stdout] 145 |             0xE000...0xFDFF => self.internal[addr as usize - 0xE000],
[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/memory.rs:146:19
[INFO] [stdout]     |
[INFO] [stdout] 146 |             0xFE00...0xFE9F => self.gpu.read_u8(addr),
[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/memory.rs:147:19
[INFO] [stdout]     |
[INFO] [stdout] 147 |             0xFEA0...0xFEFF => { println!("WARNING: Reading from unused memory area. Addr = 0x{:X}", addr); 0 },
[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/memory.rs:149:19
[INFO] [stdout]     |
[INFO] [stdout] 149 |             0xFF00...0xFF7F => self.read_u8_io(addr),
[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/memory.rs:150:19
[INFO] [stdout]     |
[INFO] [stdout] 150 |             0xFF80...0xFFFE => self.zero_page_ram[addr as usize - 0xFF80],
[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/memory.rs:163:19
[INFO] [stdout]     |
[INFO] [stdout] 163 |             0x0000...0x7FFF => {
[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/memory.rs:170:19
[INFO] [stdout]     |
[INFO] [stdout] 170 |             0x8000...0x9FFF => self.gpu.write_u8(addr, value),
[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/memory.rs:171:19
[INFO] [stdout]     |
[INFO] [stdout] 171 |             0xA000...0xBFFF =>  {
[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/memory.rs:178:19
[INFO] [stdout]     |
[INFO] [stdout] 178 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000] = value,
[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/memory.rs:179:19
[INFO] [stdout]     |
[INFO] [stdout] 179 |             0xE000...0xFDFF => self.internal[addr as usize - 0xE000] = value,
[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/memory.rs:180:19
[INFO] [stdout]     |
[INFO] [stdout] 180 |             0xFE00...0xFE9F => self.gpu.write_u8(addr, value),
[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/memory.rs:181:19
[INFO] [stdout]     |
[INFO] [stdout] 181 |             0xFEA0...0xFEFF => println!("WARNING: Writing to unused memory area. Addr = 0x{:X}", addr),
[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/memory.rs:182:19
[INFO] [stdout]     |
[INFO] [stdout] 182 |             0xFF00...0xFF7F => self.write_u8_io(addr, value),
[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/memory.rs:183:19
[INFO] [stdout]     |
[INFO] [stdout] 183 |             0xFF80...0xFFFE => self.zero_page_ram[addr as usize - 0xFF80] = value,
[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/memory.rs:198:19
[INFO] [stdout]     |
[INFO] [stdout] 198 |             0xFF40...0xFF4F => self.gpu.read_u8(addr),
[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/memory.rs:231:19
[INFO] [stdout]     |
[INFO] [stdout] 231 |             0xFF40...0xFF4F => self.gpu.write_u8(addr, value),
[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: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cpu/ops.rs:60:18
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Partial8(Box<Fn(u8) -> R>),
[INFO] [stdout]    |                  ^^^^^^^^^^^
[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(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Partial8(Box<dyn Fn(u8) -> R>),
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cpu/ops.rs:61:19
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Partial16(Box<Fn(u16) -> R>),
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Partial16(Box<dyn Fn(u16) -> R>),
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cartridge/mod.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub mbc: Box<MemoryBankController>,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub mbc: Box<dyn MemoryBankController>,
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/gpu.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 |     driver: Box<driver::Driver>,
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 8 |     driver: Box<dyn driver::Driver>,
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/gpu.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |     window: Box<driver::Window>,
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     window: Box<dyn driver::Window>,
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/gpu.rs:78:54
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn set_key_callback(&mut self, callback: Box<FnMut(KeyCode, KeyState)>) {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn set_key_callback(&mut self, callback: Box<dyn FnMut(KeyCode, KeyState)>) {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cartridge/mod.rs:64:22
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mbc: Box<MemoryBankController> = match cartridge_type {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^
[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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mbc: Box<dyn MemoryBankController> = match cartridge_type {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cpu/interpreter.rs:704:13
[INFO] [stdout]     |
[INFO] [stdout] 704 |         let mut cpu = &mut init_cpu();
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cpu/interpreter.rs:713:13
[INFO] [stdout]     |
[INFO] [stdout] 713 |         let mut cpu = &mut init_cpu();
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/memory.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |             _ => panic!("ERROR: Out of bounds memory read. Addr = 0x{:X}", addr),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/memory.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |             0x0000...0x7FFF => {
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 136 |             0x8000...0x9FFF => self.gpu.read_u8(addr),
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] 137 |             0xA000...0xBFFF => {
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 144 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000],
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 152 |             _ => panic!("ERROR: Out of bounds memory read. Addr = 0x{:X}", addr),
[INFO] [stdout]     |             ^ ...and 6 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/memory.rs:185:13
[INFO] [stdout]     |
[INFO] [stdout] 185 |             _ => panic!("ERROR: Out of bounds memory write. Addr = 0x{:X}", addr),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/memory.rs:185:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             0x0000...0x7FFF => {
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 170 |             0x8000...0x9FFF => self.gpu.write_u8(addr, value),
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] 171 |             0xA000...0xBFFF =>  {
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 178 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000] = value,
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 185 |             _ => panic!("ERROR: Out of bounds memory write. Addr = 0x{:X}", addr),
[INFO] [stdout]     |             ^ ...and 6 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.47s
[INFO] running `Command { std: "docker" "inspect" "605232d412855262aef666e99c4cf111a52d4f63f54eb31c291754c7fffa235c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "605232d412855262aef666e99c4cf111a52d4f63f54eb31c291754c7fffa235c", kill_on_drop: false }`
[INFO] [stdout] 605232d412855262aef666e99c4cf111a52d4f63f54eb31c291754c7fffa235c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 6745968fe464a294f23636c5bcefef294ff00cc0c253d1753e2ad1f5e988ed7a
[INFO] running `Command { std: "docker" "start" "-a" "6745968fe464a294f23636c5bcefef294ff00cc0c253d1753e2ad1f5e988ed7a", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: unused import: `cpu::ops::*`
[INFO] [stderr]    --> src/cpu/interpreter.rs:684:9
[INFO] [stderr]     |
[INFO] [stderr] 684 |     use cpu::ops::*;
[INFO] [stderr]     |         ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/cartridge/mbc1.rs:15:19
[INFO] [stderr]    |
[INFO] [stderr] 15 |             0x0000...0x3FFF => self.rom[addr as usize],
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/cartridge/mbc1.rs:16:19
[INFO] [stderr]    |
[INFO] [stderr] 16 |             0x4000...0x7FFF => self.rom[self.rom_bank_addr(addr - 0x4000, self.rom_bank)],
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/cartridge/mbc1.rs:17:19
[INFO] [stderr]    |
[INFO] [stderr] 17 |             0xA000...0xBFFF => self.ram[self.ram_bank_addr(addr - 0xA000, self.ram_bank)],
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/cartridge/mbc1.rs:25:19
[INFO] [stderr]    |
[INFO] [stderr] 25 |             0x0000...0x1FFF => {
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/cartridge/mbc1.rs:30:19
[INFO] [stderr]    |
[INFO] [stderr] 30 |             0x2000...0x3FFF => {
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/cartridge/mbc1.rs:43:19
[INFO] [stderr]    |
[INFO] [stderr] 43 |             0x4000...0x5FFF => {
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/cartridge/mbc1.rs:60:19
[INFO] [stderr]    |
[INFO] [stderr] 60 |             0x6000...0x7FFF => {
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/cartridge/mbc1.rs:65:19
[INFO] [stderr]    |
[INFO] [stderr] 65 |             0xA000...0xBFFF => {
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/gpu.rs:123:19
[INFO] [stderr]     |
[INFO] [stderr] 123 |             0x8000...0x9FFF => self.vram[addr as usize - 0x8000],
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/gpu.rs:124:19
[INFO] [stderr]     |
[INFO] [stderr] 124 |             0xFE00...0xFE9F => self.oam[addr as usize - 0xFE00],
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/gpu.rs:144:19
[INFO] [stderr]     |
[INFO] [stderr] 144 |             0x8000...0x9FFF => self.vram[addr as usize - 0x8000] = value,
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/gpu.rs:145:19
[INFO] [stderr]     |
[INFO] [stderr] 145 |             0xFE00...0xFE9F => self.oam[addr as usize - 0xFE00] = value,
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:125:19
[INFO] [stderr]     |
[INFO] [stderr] 125 |             0x0000...0x7FFF => {
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:136:19
[INFO] [stderr]     |
[INFO] [stderr] 136 |             0x8000...0x9FFF => self.gpu.read_u8(addr),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:137:19
[INFO] [stderr]     |
[INFO] [stderr] 137 |             0xA000...0xBFFF => {
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:144:19
[INFO] [stderr]     |
[INFO] [stderr] 144 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000],
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:145:19
[INFO] [stderr]     |
[INFO] [stderr] 145 |             0xE000...0xFDFF => self.internal[addr as usize - 0xE000],
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:146:19
[INFO] [stderr]     |
[INFO] [stderr] 146 |             0xFE00...0xFE9F => self.gpu.read_u8(addr),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:147:19
[INFO] [stderr]     |
[INFO] [stderr] 147 |             0xFEA0...0xFEFF => { println!("WARNING: Reading from unused memory area. Addr = 0x{:X}", addr); 0 },
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:149:19
[INFO] [stderr]     |
[INFO] [stderr] 149 |             0xFF00...0xFF7F => self.read_u8_io(addr),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:150:19
[INFO] [stderr]     |
[INFO] [stderr] 150 |             0xFF80...0xFFFE => self.zero_page_ram[addr as usize - 0xFF80],
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:163:19
[INFO] [stderr]     |
[INFO] [stderr] 163 |             0x0000...0x7FFF => {
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:170:19
[INFO] [stderr]     |
[INFO] [stderr] 170 |             0x8000...0x9FFF => self.gpu.write_u8(addr, value),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:171:19
[INFO] [stderr]     |
[INFO] [stderr] 171 |             0xA000...0xBFFF =>  {
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:178:19
[INFO] [stderr]     |
[INFO] [stderr] 178 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000] = value,
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:179:19
[INFO] [stderr]     |
[INFO] [stderr] 179 |             0xE000...0xFDFF => self.internal[addr as usize - 0xE000] = value,
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:180:19
[INFO] [stderr]     |
[INFO] [stderr] 180 |             0xFE00...0xFE9F => self.gpu.write_u8(addr, value),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:181:19
[INFO] [stderr]     |
[INFO] [stderr] 181 |             0xFEA0...0xFEFF => println!("WARNING: Writing to unused memory area. Addr = 0x{:X}", addr),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:182:19
[INFO] [stderr]     |
[INFO] [stderr] 182 |             0xFF00...0xFF7F => self.write_u8_io(addr, value),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:183:19
[INFO] [stderr]     |
[INFO] [stderr] 183 |             0xFF80...0xFFFE => self.zero_page_ram[addr as usize - 0xFF80] = value,
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:198:19
[INFO] [stderr]     |
[INFO] [stderr] 198 |             0xFF40...0xFF4F => self.gpu.read_u8(addr),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/memory.rs:231:19
[INFO] [stderr]     |
[INFO] [stderr] 231 |             0xFF40...0xFF4F => self.gpu.write_u8(addr, value),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/cpu/ops.rs:60:18
[INFO] [stderr]    |
[INFO] [stderr] 60 |     Partial8(Box<Fn(u8) -> R>),
[INFO] [stderr]    |                  ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 60 |     Partial8(Box<dyn Fn(u8) -> R>),
[INFO] [stderr]    |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/cpu/ops.rs:61:19
[INFO] [stderr]    |
[INFO] [stderr] 61 |     Partial16(Box<Fn(u16) -> R>),
[INFO] [stderr]    |                   ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 61 |     Partial16(Box<dyn Fn(u16) -> R>),
[INFO] [stderr]    |                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/cartridge/mod.rs:17:18
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pub mbc: Box<MemoryBankController>,
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pub mbc: Box<dyn MemoryBankController>,
[INFO] [stderr]    |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/gpu.rs:8:17
[INFO] [stderr]   |
[INFO] [stderr] 8 |     driver: Box<driver::Driver>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]   |
[INFO] [stderr] 8 |     driver: Box<dyn driver::Driver>,
[INFO] [stderr]   |                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/gpu.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 |     window: Box<driver::Window>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]   |
[INFO] [stderr] 9 |     window: Box<dyn driver::Window>,
[INFO] [stderr]   |                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/gpu.rs:78:54
[INFO] [stderr]    |
[INFO] [stderr] 78 |     pub fn set_key_callback(&mut self, callback: Box<FnMut(KeyCode, KeyState)>) {
[INFO] [stderr]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 78 |     pub fn set_key_callback(&mut self, callback: Box<dyn FnMut(KeyCode, KeyState)>) {
[INFO] [stderr]    |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/cartridge/mod.rs:64:22
[INFO] [stderr]    |
[INFO] [stderr] 64 |         let mbc: Box<MemoryBankController> = match cartridge_type {
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 64 |         let mbc: Box<dyn MemoryBankController> = match cartridge_type {
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/cpu/interpreter.rs:704:13
[INFO] [stderr]     |
[INFO] [stderr] 704 |         let mut cpu = &mut init_cpu();
[INFO] [stderr]     |             ----^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/cpu/interpreter.rs:713:13
[INFO] [stderr]     |
[INFO] [stderr] 713 |         let mut cpu = &mut init_cpu();
[INFO] [stderr]     |             ----^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/memory.rs:152:13
[INFO] [stderr]     |
[INFO] [stderr] 152 |             _ => panic!("ERROR: Out of bounds memory read. Addr = 0x{:X}", addr),
[INFO] [stderr]     |             ^ no value can reach this
[INFO] [stderr]     |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]    --> src/memory.rs:152:13
[INFO] [stderr]     |
[INFO] [stderr] 125 |             0x0000...0x7FFF => {
[INFO] [stderr]     |             --------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 136 |             0x8000...0x9FFF => self.gpu.read_u8(addr),
[INFO] [stderr]     |             --------------- matches some of the same values
[INFO] [stderr] 137 |             0xA000...0xBFFF => {
[INFO] [stderr]     |             --------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 144 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000],
[INFO] [stderr]     |             --------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 152 |             _ => panic!("ERROR: Out of bounds memory read. Addr = 0x{:X}", addr),
[INFO] [stderr]     |             ^ ...and 6 other patterns collectively make this unreachable
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/memory.rs:185:13
[INFO] [stderr]     |
[INFO] [stderr] 185 |             _ => panic!("ERROR: Out of bounds memory write. Addr = 0x{:X}", addr),
[INFO] [stderr]     |             ^ no value can reach this
[INFO] [stderr]     |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]    --> src/memory.rs:185:13
[INFO] [stderr]     |
[INFO] [stderr] 163 |             0x0000...0x7FFF => {
[INFO] [stderr]     |             --------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 170 |             0x8000...0x9FFF => self.gpu.write_u8(addr, value),
[INFO] [stderr]     |             --------------- matches some of the same values
[INFO] [stderr] 171 |             0xA000...0xBFFF =>  {
[INFO] [stderr]     |             --------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 178 |             0xC000...0xDFFF => self.internal[addr as usize - 0xC000] = value,
[INFO] [stderr]     |             --------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 185 |             _ => panic!("ERROR: Out of bounds memory write. Addr = 0x{:X}", addr),
[INFO] [stderr]     |             ^ ...and 6 other patterns collectively make this unreachable
[INFO] [stderr] 
[INFO] [stderr] warning: `gbc-rs` (bin "gbc-rs" test) generated 44 warnings (run `cargo fix --bin "gbc-rs" --tests` to apply 42 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/gbc_rs-1a3e66ccfb8d384a)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stderr] error: XDG_RUNTIME_DIR is invalid or not set in the environment.
[INFO] [stdout] test cpu::decoder::test::decode_correctness ... ok
[INFO] [stdout] test cpu::decoder::test::decode_totality ... ok
[INFO] [stdout] test cpu::decoder::test::decode_cb_totality ... ok
[INFO] [stderr] 
[INFO] [stderr] thread 'cpu::interpreter::test::ld16_bc_then_de' panicked at library/core/src/panicking.rs:225:5:
[INFO] [stderr] attempted to zero-initialize type `core::mem::manually_drop::ManuallyDrop<xlib::Xlib>`, which is invalid
[INFO] [stderr] stack backtrace:
[INFO] [stderr] error: XDG_RUNTIME_DIR is invalid or not set in the environment.
[INFO] [stderr]    0:     0x6156654eab12 - std::backtrace_rs::backtrace::libunwind::trace::hd39b1f53d3cf9745
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stderr]    1:     0x6156654eab12 - std::backtrace_rs::backtrace::trace_unsynchronized::he91d9a75d4e3972b
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stderr]    2:     0x6156654eab12 - std::sys::backtrace::_print_fmt::hca46938f8c6e22cf
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:66:9
[INFO] [stderr]    3:     0x6156654eab12 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha499add612cccf8e
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:39:26
[INFO] [stderr]    4:     0x61566550fdd3 - core::fmt::rt::Argument::fmt::hd21145b75a833b7a
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/rt.rs:173:76
[INFO] [stderr]    5:     0x61566550fdd3 - core::fmt::write::hb10c956f5235c8a4
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/mod.rs:1465:25
[INFO] [stderr]    6:     0x6156654e7983 - std::io::default_write_fmt::h1470b6bb31d733fd
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:639:11
[INFO] [stderr]    7:     0x6156654e7983 - std::io::Write::write_fmt::hd8146ab3991543d1
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:1954:13
[INFO] [stderr]    8:     0x6156654ea962 - std::sys::backtrace::BacktraceLock::print::hb47c770ef659fd10
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:42:9
[INFO] [stderr]    9:     0x6156654ec13c - std::panicking::default_hook::{{closure}}::hdda8afb9d457a22c
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:300:27
[INFO] [stderr]   10:     0x6156654ebf3f - std::panicking::default_hook::h7c46b44874fe5c9a
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:327:9
[INFO] [stderr]   11:     0x61566542e214 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h178a5fcedee41e2f
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stderr]   12:     0x61566542e214 - test::test_main_with_exit_callback::{{closure}}::h951a41e0149d6d5d
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:145:21
[INFO] [stderr]   13:     0x6156654ecc1b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h13602080f5b63276
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stderr]   14:     0x6156654ecc1b - std::panicking::rust_panic_with_hook::ha6cb99ed099eb1c5
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:841:13
[INFO] [stderr]   15:     0x6156654ec8b6 - std::panicking::begin_panic_handler::{{closure}}::he11808bc797ee921
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:699:13
[INFO] [stderr]   16:     0x6156654eb019 - std::sys::backtrace::__rust_end_short_backtrace::h9418807cb7346258
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:168:18
[INFO] [stderr]   17:     0x6156654ec57d - __rustc[18fb429eef004894]::rust_begin_unwind
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:697:5
[INFO] [stderr]   18:     0x61566550e972 - core::panicking::panic_nounwind_fmt::runtime::h8ddb2a5f88f26324
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:117:22
[INFO] [stderr]   19:     0x61566550e972 - core::panicking::panic_nounwind_fmt::he1eacb19cf6e69ba
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/intrinsics/mod.rs:2345:9
[INFO] [stderr]   20:     0x61566550ea02 - core::panicking::panic_nounwind::hf868e336811f003c
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:225:5
[INFO] [stderr]   21:     0x6156654b4554 - core::mem::zeroed::hb983e7ba62a9163a
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/mem/mod.rs:670:9
[INFO] [stderr]   22:     0x6156654b4554 - x11_dl::xlib::Xlib::open::he844c91f93ceb11e
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/x11-dl-2.17.1/src/link.rs:59:17
[INFO] [stderr]   23:     0x61566549c7b2 - winit::platform::platform::x11::xdisplay::XConnection::new::h5f775415cd15439f
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.9.0/src/platform/linux/x11/xdisplay.rs:29:25
[INFO] [stderr]   24:     0x6156654a25b5 - <winit::platform::platform::X11_BACKEND as core::ops::deref::Deref>::deref::__static_ref_initialize::h61bffd660283c198
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.9.0/src/platform/linux/mod.rs:38:9
[INFO] [stderr]   25:     0x6156654a25b5 - core::ops::function::FnOnce::call_once::hde3d45791beb885d
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   26:     0x6156654a25b5 - lazy_static::lazy::Lazy<T>::get::{{closure}}::h1928e0986b57820a
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-0.2.11/src/lazy.rs:24:45
[INFO] [stderr]   27:     0x6156654a25b5 - std::sync::poison::once::Once::call_once::{{closure}}::hf9665f8f1464d5c4
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sync/poison/once.rs:155:41
[INFO] [stderr]   28:     0x6156654f5964 - std::sys::sync::once::futex::Once::call::he3fa89c0e4e8f1d1
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/sync/once/futex.rs:176:21
[INFO] [stderr]   29:     0x6156654a34f3 - std::sync::poison::once::Once::call_once::h223763c2ba176b35
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sync/poison/once.rs:155:20
[INFO] [stderr]   30:     0x6156654a34f3 - lazy_static::lazy::Lazy<T>::get::h1a622633d3cd5bab
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-0.2.11/src/lazy.rs:23:20
[INFO] [stderr]   31:     0x6156654a34f3 - <winit::platform::platform::X11_BACKEND as core::ops::deref::Deref>::deref::__stability::hdb0ceb79bbdacf90
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-0.2.11/src/lib.rs:138:30
[INFO] [stderr]   32:     0x6156654a34f3 - <winit::platform::platform::X11_BACKEND as core::ops::deref::Deref>::deref::h76eee92d6318e456
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-0.2.11/src/lib.rs:140:21
[INFO] [stderr]   33:     0x6156654a34f3 - winit::platform::platform::EventsLoop::new_x11::hd3bd59632fbea318
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.9.0/src/platform/linux/mod.rs:342:15
[INFO] [stderr]   34:     0x6156654a324b - winit::platform::platform::EventsLoop::new::h93ea674eab79f241
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.9.0/src/platform/linux/mod.rs:328:25
[INFO] [stderr]   35:     0x61566549cca9 - winit::EventsLoop::new::h848c832c7cf5a01d
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.9.0/src/lib.rs:201:26
[INFO] [stderr]   36:     0x615665440e1b - rasteriser::driver::glium::GliumWindow::new::hc2b143ba4707dc16
[INFO] [stderr]                                at /opt/rustwide/cargo-home/git/checkouts/rasteriser-73e6f8041c3008c0/f26c7fc/src/driver/glium.rs:67:27
[INFO] [stderr]   37:     0x615665440e1b - <rasteriser::driver::glium::GliumDriver as rasteriser::driver::Driver>::create_window::h7a64576c49128bca
[INFO] [stderr]                                at /opt/rustwide/cargo-home/git/checkouts/rasteriser-73e6f8041c3008c0/f26c7fc/src/driver/glium.rs:22:18
[INFO] [stderr]   38:     0x6156653f17ab - gbc_rs::gpu::Display::new::h8aec08f73446c954
[INFO] [stderr]                                at /opt/rustwide/workdir/src/gpu.rs:18:28
[INFO] [stderr]   39:     0x6156653f17ab - gbc_rs::gpu::Gpu::new::h7c4878cc449d1c8e
[INFO] [stderr]                                at /opt/rustwide/workdir/src/gpu.rs:62:22
[INFO] [stderr]   40:     0x6156653f17ab - gbc_rs::memory::Memory::new::h64446d045d42fb63
[INFO] [stderr]                                at /opt/rustwide/workdir/src/memory.rs:63:18
[INFO] [stderr]   41:     0x6156653f17ab - gbc_rs::cpu::interpreter::test::init_cpu::h9ad380cd25cfed4f
[INFO] [stderr]                                at /opt/rustwide/workdir/src/cpu/interpreter.rs:699:39
[INFO] [stderr]   42:     0x6156653f1207 - gbc_rs::cpu::interpreter::test::ld16_bc_then_de::h9328d2b57fdeacb5
[INFO] [stderr]                                at /opt/rustwide/workdir/src/cpu/interpreter.rs:713:28
[INFO] [stderr]   43:     0x6156653f1207 - gbc_rs::cpu::interpreter::test::ld16_bc_then_de::{{closure}}::hc2d4642383ea7158
[INFO] [stderr]                                at /opt/rustwide/workdir/src/cpu/interpreter.rs:712:25
[INFO] [stderr]   44:     0x6156653f1207 - core::ops::function::FnOnce::call_once::hd6f432c3c7c8577c
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   45:     0x61566543399b - core::ops::function::FnOnce::call_once::h2869fb5b0a2b0bdc
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   46:     0x61566543399b - test::__rust_begin_short_backtrace::h7dd7142bd62fa711
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:648:18
[INFO] [stderr]   47:     0x615665432b8e - test::run_test_in_process::{{closure}}::h43a753f038d36b3f
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:74
[INFO] [stderr]   48:     0x615665432b8e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0ca95dd3e12d1e16
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stderr]   49:     0x615665432b8e - std::panicking::catch_unwind::do_call::he308587d70ac34ba
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stderr]   50:     0x615665432b8e - std::panicking::catch_unwind::h30dcba31973e8fb0
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stderr]   51:     0x615665432b8e - std::panic::catch_unwind::hfb68364e5621fbee
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stderr]   52:     0x615665432b8e - test::run_test_in_process::hcdcc2977903b998a
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:27
[INFO] [stderr]   53:     0x615665432b8e - test::run_test::{{closure}}::h544a6550958c5d14
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:592:43
[INFO] [stderr]   54:     0x6156653f6704 - test::run_test::{{closure}}::hb172e48ebe2b92c7
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:622:41
[INFO] [stderr]   55:     0x6156653f6704 - std::sys::backtrace::__rust_begin_short_backtrace::h7e79d8706638bea0
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:152:18
[INFO] [stderr]   56:     0x6156653fa0da - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc4a275f1e71b8ab0
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:559:17
[INFO] [stderr]   57:     0x6156653fa0da - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h01ed0d242df78cfd
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stderr]   58:     0x6156653fa0da - std::panicking::catch_unwind::do_call::h052f373fb905fee0
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stderr]   59:     0x6156653fa0da - std::panicking::catch_unwind::hb425d20c8ffb09c8
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stderr]   60:     0x6156653fa0da - std::panic::catch_unwind::ha0d5dfbf18fdeda5
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stderr]   61:     0x6156653fa0da - std::thread::Builder::spawn_unchecked_::{{closure}}::hbe79182bd37949c7
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:557:30
[INFO] [stderr]   62:     0x6156653fa0da - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc096c4a06972fde5
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   63:     0x6156654efb77 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h47377e27fb938a26
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stderr]   64:     0x6156654efb77 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h72f1fe5d095abf57
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stderr]   65:     0x6156654efb77 - std::sys::pal::unix::thread::Thread::new::thread_start::h0a4d8e1b9c0d38cf
[INFO] [stderr]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stderr]   66:     0x7f926b1fcaa4 - <unknown>
[INFO] [stderr]   67:     0x7f926b289a34 - clone
[INFO] [stderr]   68:                0x0 - <unknown>
[INFO] [stderr] thread caused non-unwinding panic. aborting.
[INFO] [stderr] error: test failed, to rerun pass `--bin gbc-rs`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/gbc_rs-1a3e66ccfb8d384a` (signal: 6, SIGABRT: process abort signal)
[INFO] running `Command { std: "docker" "inspect" "6745968fe464a294f23636c5bcefef294ff00cc0c253d1753e2ad1f5e988ed7a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6745968fe464a294f23636c5bcefef294ff00cc0c253d1753e2ad1f5e988ed7a", kill_on_drop: false }`
[INFO] [stdout] 6745968fe464a294f23636c5bcefef294ff00cc0c253d1753e2ad1f5e988ed7a
