[INFO] cloning repository https://github.com/jopdorp/gamedorp
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jopdorp/gamedorp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjopdorp%2Fgamedorp", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjopdorp%2Fgamedorp'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c5ce633f02f450fdc2d2b2390f80ba4add8069c9
[INFO] checking jopdorp/gamedorp against master#f1ce0e6a00593493a12e0e3662119786c761f375 for pr-92413
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjopdorp%2Fgamedorp" "/workspace/builds/worker-107/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-107/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jopdorp/gamedorp on toolchain f1ce0e6a00593493a12e0e3662119786c761f375
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f1ce0e6a00593493a12e0e3662119786c761f375" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/jopdorp/gamedorp
[INFO] finished tweaking git repo https://github.com/jopdorp/gamedorp
[INFO] tweaked toml for git repo https://github.com/jopdorp/gamedorp written to /workspace/builds/worker-107/source/Cargo.toml
[INFO] crate git repo https://github.com/jopdorp/gamedorp already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f1ce0e6a00593493a12e0e3662119786c761f375" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-107/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-107/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+f1ce0e6a00593493a12e0e3662119786c761f375" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f31fa58635f72f279f8358429c8a4ec9b1097e0ef18aa6dfc9cf784e363a769c
[INFO] running `Command { std: "docker" "start" "-a" "f31fa58635f72f279f8358429c8a4ec9b1097e0ef18aa6dfc9cf784e363a769c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f31fa58635f72f279f8358429c8a4ec9b1097e0ef18aa6dfc9cf784e363a769c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f31fa58635f72f279f8358429c8a4ec9b1097e0ef18aa6dfc9cf784e363a769c", kill_on_drop: false }`
[INFO] [stdout] f31fa58635f72f279f8358429c8a4ec9b1097e0ef18aa6dfc9cf784e363a769c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-107/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-107/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+f1ce0e6a00593493a12e0e3662119786c761f375" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 26e6a4ae11180308a8f8974bf75d65afb6599f8479ea39a9a46393e1e46396ce
[INFO] running `Command { std: "docker" "start" "-a" "26e6a4ae11180308a8f8974bf75d65afb6599f8479ea39a9a46393e1e46396ce", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.45
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]     Checking rustc-serialize v0.3.24
[INFO] [stderr]    Compiling cfg-if v0.1.6
[INFO] [stderr]    Compiling num-iter v0.1.37
[INFO] [stderr]     Checking bitflags v0.7.0
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking lazy_static v1.2.0
[INFO] [stderr]     Checking bit-vec v0.5.0
[INFO] [stderr]     Checking ascii v0.5.4
[INFO] [stderr]     Checking log v0.4.6
[INFO] [stderr]    Compiling sdl2-sys v0.31.0
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking rand v0.4.3
[INFO] [stderr]     Checking time v0.1.41
[INFO] [stderr]     Checking rand v0.3.22
[INFO] [stderr]     Checking num-complex v0.1.43
[INFO] [stderr]     Checking num-bigint v0.1.44
[INFO] [stderr]     Checking num-rational v0.1.42
[INFO] [stderr]     Checking num v0.1.42
[INFO] [stderr]     Checking sdl2 v0.31.0
[INFO] [stderr]     Checking gb-rs v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/cartridge/models.rs:81:19
[INFO] [stdout]    |
[INFO] [stdout] 81 |             0x0000...0x1fff =>
[INFO] [stdout]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[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/models.rs:88:19
[INFO] [stdout]    |
[INFO] [stdout] 88 |             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/models.rs:96:19
[INFO] [stdout]    |
[INFO] [stdout] 96 |             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/models.rs:109:19
[INFO] [stdout]     |
[INFO] [stdout] 109 |             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/models.rs:158:19
[INFO] [stdout]     |
[INFO] [stdout] 158 |             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/models.rs:165:19
[INFO] [stdout]     |
[INFO] [stdout] 165 |             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/models.rs:186:19
[INFO] [stdout]     |
[INFO] [stdout] 186 |             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/models.rs:193:19
[INFO] [stdout]     |
[INFO] [stdout] 193 |             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/models.rs:198:19
[INFO] [stdout]     |
[INFO] [stdout] 198 |             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/models.rs:203:19
[INFO] [stdout]     |
[INFO] [stdout] 203 |             0x6000...0x7fff => debug!("Unhandled RTC access"),
[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/models.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         0x01...0x03 => mbc1::MODEL,
[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/models.rs:221:13
[INFO] [stdout]     |
[INFO] [stdout] 221 |         0x05...0x06 => mbc2::MODEL,
[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/models.rs:222:13
[INFO] [stdout]     |
[INFO] [stdout] 222 |         0x0f...0x13 => mbc3::MODEL,
[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: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cartridge/mod.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!((&mut source)
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cartridge/mod.rs:97:9
[INFO] [stdout]    |
[INFO] [stdout] 97 |         try!(cartridge.init_ram());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cartridge/mod.rs:47:26
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut source = try!(File::open(rom_path));
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cartridge/mod.rs:90:25
[INFO] [stdout]    |
[INFO] [stdout] 90 |                 let r = try!(source.read(&mut cartridge.rom[off..]));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:122:29
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut save_file = try!(OpenOptions::new()
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:128:25
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let save_size = try!(save_file.metadata()).len();
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |             try!(save_file.write_all(&self.ram));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |             try!((&mut save_file)
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |             try!(f.seek(SeekFrom::Start(0)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:165:13
[INFO] [stdout]     |
[INFO] [stdout] 165 |             try!(f.write_all(&self.ram));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         try!(write!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:454:9
[INFO] [stdout]     |
[INFO] [stdout] 454 |         try!(writeln!(f, "Registers:"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:456:9
[INFO] [stdout]     |
[INFO] [stdout] 456 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:464:9
[INFO] [stdout]     |
[INFO] [stdout] 464 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:472:9
[INFO] [stdout]     |
[INFO] [stdout] 472 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:479:9
[INFO] [stdout]     |
[INFO] [stdout] 479 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:486:9
[INFO] [stdout]     |
[INFO] [stdout] 486 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:493:9
[INFO] [stdout]     |
[INFO] [stdout] 493 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:504:9
[INFO] [stdout]     |
[INFO] [stdout] 504 |         try!(writeln!(f, "Flags:"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:506:9
[INFO] [stdout]     |
[INFO] [stdout] 506 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:512:9
[INFO] [stdout]     |
[INFO] [stdout] 512 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/io/mod.rs:293:26
[INFO] [stdout]     |
[INFO] [stdout] 293 |             NR3_RAM_START...NR3_RAM_END => {
[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/io/mod.rs:366:26
[INFO] [stdout]     |
[INFO] [stdout] 366 |             NR3_RAM_START...NR3_RAM_END => {
[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/models.rs:81:19
[INFO] [stdout]    |
[INFO] [stdout] 81 |             0x0000...0x1fff =>
[INFO] [stdout]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[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/models.rs:88:19
[INFO] [stdout]    |
[INFO] [stdout] 88 |             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/models.rs:96:19
[INFO] [stdout]    |
[INFO] [stdout] 96 |             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/models.rs:109:19
[INFO] [stdout]     |
[INFO] [stdout] 109 |             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/models.rs:158:19
[INFO] [stdout]     |
[INFO] [stdout] 158 |             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/models.rs:165:19
[INFO] [stdout]     |
[INFO] [stdout] 165 |             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/models.rs:186:19
[INFO] [stdout]     |
[INFO] [stdout] 186 |             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/models.rs:193:19
[INFO] [stdout]     |
[INFO] [stdout] 193 |             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/models.rs:198:19
[INFO] [stdout]     |
[INFO] [stdout] 198 |             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/models.rs:203:19
[INFO] [stdout]     |
[INFO] [stdout] 203 |             0x6000...0x7fff => debug!("Unhandled RTC access"),
[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/models.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         0x01...0x03 => mbc1::MODEL,
[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/models.rs:221:13
[INFO] [stdout]     |
[INFO] [stdout] 221 |         0x05...0x06 => mbc2::MODEL,
[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/models.rs:222:13
[INFO] [stdout]     |
[INFO] [stdout] 222 |         0x0f...0x13 => mbc3::MODEL,
[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: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cartridge/mod.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!((&mut source)
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cartridge/mod.rs:97:9
[INFO] [stdout]    |
[INFO] [stdout] 97 |         try!(cartridge.init_ram());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cartridge/mod.rs:47:26
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut source = try!(File::open(rom_path));
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cartridge/mod.rs:90:25
[INFO] [stdout]    |
[INFO] [stdout] 90 |                 let r = try!(source.read(&mut cartridge.rom[off..]));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:122:29
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut save_file = try!(OpenOptions::new()
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:128:25
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let save_size = try!(save_file.metadata()).len();
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |             try!(save_file.write_all(&self.ram));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |             try!((&mut save_file)
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |             try!(f.seek(SeekFrom::Start(0)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:165:13
[INFO] [stdout]     |
[INFO] [stdout] 165 |             try!(f.write_all(&self.ram));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cartridge/mod.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         try!(write!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Debug`, `Error`, `Formatter`
[INFO] [stdout]  --> src/cpu/cpu_test.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use std::fmt::{Debug, Error, Formatter};
[INFO] [stdout]   |                    ^^^^^  ^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/cpu/cpu_test.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use std::thread::sleep;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/cpu/cpu_test.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use std::time::Duration;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:454:9
[INFO] [stdout]     |
[INFO] [stdout] 454 |         try!(writeln!(f, "Registers:"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:456:9
[INFO] [stdout]     |
[INFO] [stdout] 456 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:464:9
[INFO] [stdout]     |
[INFO] [stdout] 464 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:472:9
[INFO] [stdout]     |
[INFO] [stdout] 472 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:479:9
[INFO] [stdout]     |
[INFO] [stdout] 479 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:486:9
[INFO] [stdout]     |
[INFO] [stdout] 486 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:493:9
[INFO] [stdout]     |
[INFO] [stdout] 493 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:504:9
[INFO] [stdout]     |
[INFO] [stdout] 504 |         try!(writeln!(f, "Flags:"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:506:9
[INFO] [stdout]     |
[INFO] [stdout] 506 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:512:9
[INFO] [stdout]     |
[INFO] [stdout] 512 |         try!(writeln!(
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/io/mod.rs:293:26
[INFO] [stdout]     |
[INFO] [stdout] 293 |             NR3_RAM_START...NR3_RAM_END => {
[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/io/mod.rs:366:26
[INFO] [stdout]     |
[INFO] [stdout] 366 |             NR3_RAM_START...NR3_RAM_END => {
[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/gpu/mod.rs:11:23
[INFO] [stdout]    |
[INFO] [stdout] 11 |     display: &'a mut (Display + 'a),
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 -     display: &'a mut (Display + 'a),
[INFO] [stdout] 11 +     display: &'a mut (dyn Display + 'a),
[INFO] [stdout]    | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/gpu/mod.rs:119:37
[INFO] [stdout]     |
[INFO] [stdout] 119 |     pub fn new<'n>(display: &'n mut Display) -> Gpu<'n> {
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 119 -     pub fn new<'n>(display: &'n mut Display) -> Gpu<'n> {
[INFO] [stdout] 119 +     pub fn new<'n>(display: &'n mut dyn Display) -> Gpu<'n> {
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/gpu/mod.rs:11:23
[INFO] [stdout]    |
[INFO] [stdout] 11 |     display: &'a mut (Display + 'a),
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 -     display: &'a mut (Display + 'a),
[INFO] [stdout] 11 +     display: &'a mut (dyn Display + 'a),
[INFO] [stdout]    | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/gpu/mod.rs:119:37
[INFO] [stdout]     |
[INFO] [stdout] 119 |     pub fn new<'n>(display: &'n mut Display) -> Gpu<'n> {
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 119 -     pub fn new<'n>(display: &'n mut Display) -> Gpu<'n> {
[INFO] [stdout] 119 +     pub fn new<'n>(display: &'n mut dyn Display) -> Gpu<'n> {
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:71:22
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let mut cpu: Box<CanRunInstruction> = if argv.len() > 2 && &argv[2] == "gb-rs" {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 71 -     let mut cpu: Box<CanRunInstruction> = if argv.len() > 2 && &argv[2] == "gb-rs" {
[INFO] [stdout] 71 +     let mut cpu: Box<dyn CanRunInstruction> = if argv.len() > 2 && &argv[2] == "gb-rs" {
[INFO] [stdout]    | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:71:22
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let mut cpu: Box<CanRunInstruction> = if argv.len() > 2 && &argv[2] == "gb-rs" {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 71 -     let mut cpu: Box<CanRunInstruction> = if argv.len() > 2 && &argv[2] == "gb-rs" {
[INFO] [stdout] 71 +     let mut cpu: Box<dyn CanRunInstruction> = if argv.len() > 2 && &argv[2] == "gb-rs" {
[INFO] [stdout]    | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 39 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cpu/cpu_test.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut audio = ::ui::sdl2::Audio::new(audio_channel, &sdl2.sdl2);
[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/cpu_test.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let mut audio2 = ::ui::sdl2::Audio::new(audio_channel2, &sdl2.sdl2);
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `from_vec`
[INFO] [stdout]    --> src/cartridge/mod.rs:340:12
[INFO] [stdout]     |
[INFO] [stdout] 340 |     pub fn from_vec(rom: Vec<u8>) -> Cartridge {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `reset`
[INFO] [stdout]    --> src/gb_rs_cpu/mod.rs:447:12
[INFO] [stdout]     |
[INFO] [stdout] 447 |     pub fn reset(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `DummyController`
[INFO] [stdout]    --> src/ui/mod.rs:100:16
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub struct DummyController {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]    --> src/ui/mod.rs:105:16
[INFO] [stdout]     |
[INFO] [stdout] 105 |         pub fn new() -> DummyController {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `buttons`
[INFO] [stdout]    --> src/ui/mod.rs:111:16
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub fn buttons(&self) -> &Cell<super::Buttons> {
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 49 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 6.06s
[INFO] running `Command { std: "docker" "inspect" "26e6a4ae11180308a8f8974bf75d65afb6599f8479ea39a9a46393e1e46396ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "26e6a4ae11180308a8f8974bf75d65afb6599f8479ea39a9a46393e1e46396ce", kill_on_drop: false }`
[INFO] [stdout] 26e6a4ae11180308a8f8974bf75d65afb6599f8479ea39a9a46393e1e46396ce