[INFO] cloning repository https://github.com/chrisbutcher/gameboy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/chrisbutcher/gameboy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchrisbutcher%2Fgameboy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchrisbutcher%2Fgameboy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ac1093be588df5877f95b9af50a5bb970b788c08 [INFO] testing chrisbutcher/gameboy against master#a77da2d454e6caa227a85b16410b95f93495e7e0 for pr-91031 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchrisbutcher%2Fgameboy" "/workspace/builds/worker-8/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-8/source'... [INFO] [stderr] done. [INFO] [stderr] Updating files: 63% (83/131) Updating files: 64% (84/131) Updating files: 65% (86/131) Updating files: 66% (87/131) Updating files: 67% (88/131) Updating files: 68% (90/131) Updating files: 69% (91/131) Updating files: 70% (92/131) Updating files: 71% (94/131) Updating files: 72% (95/131) Updating files: 73% (96/131) Updating files: 74% (97/131) Updating files: 75% (99/131) Updating files: 76% (100/131) Updating files: 77% (101/131) Updating files: 78% (103/131) Updating files: 79% (104/131) Updating files: 80% (105/131) Updating files: 81% (107/131) Updating files: 82% (108/131) Updating files: 83% (109/131) Updating files: 84% (111/131) Updating files: 85% (112/131) Updating files: 86% (113/131) Updating files: 87% (114/131) Updating files: 88% (116/131) Updating files: 89% (117/131) Updating files: 90% (118/131) Updating files: 91% (120/131) Updating files: 92% (121/131) Updating files: 93% (122/131) Updating files: 94% (124/131) Updating files: 95% (125/131) Updating files: 96% (126/131) Updating files: 97% (128/131) Updating files: 98% (129/131) Updating files: 99% (130/131) Updating files: 100% (131/131) Updating files: 100% (131/131), done. [INFO] validating manifest of git repo https://github.com/chrisbutcher/gameboy on toolchain a77da2d454e6caa227a85b16410b95f93495e7e0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/chrisbutcher/gameboy [INFO] finished tweaking git repo https://github.com/chrisbutcher/gameboy [INFO] tweaked toml for git repo https://github.com/chrisbutcher/gameboy written to /workspace/builds/worker-8/source/Cargo.toml [INFO] crate git repo https://github.com/chrisbutcher/gameboy already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 6fb5b1e828931ab85a4be95e8fadaedf999320d5802707d84b4ca8760578c3de [INFO] running `Command { std: "docker" "start" "-a" "6fb5b1e828931ab85a4be95e8fadaedf999320d5802707d84b4ca8760578c3de", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6fb5b1e828931ab85a4be95e8fadaedf999320d5802707d84b4ca8760578c3de", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6fb5b1e828931ab85a4be95e8fadaedf999320d5802707d84b4ca8760578c3de", kill_on_drop: false }` [INFO] [stdout] 6fb5b1e828931ab85a4be95e8fadaedf999320d5802707d84b4ca8760578c3de [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9ee8ff3a7f9f30a91d5d016a3e2b99b1e56835d9aa2f82cf531f0a378264e50b [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "9ee8ff3a7f9f30a91d5d016a3e2b99b1e56835d9aa2f82cf531f0a378264e50b", kill_on_drop: false }` [INFO] [stderr] Compiling cfg-if v0.1.2 [INFO] [stderr] Compiling lazy_static v0.2.4 [INFO] [stderr] Compiling unicode-segmentation v1.1.0 [INFO] [stderr] Compiling gameboy v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling memchr v0.1.11 [INFO] [stderr] Compiling term_size v0.3.0 [INFO] [stderr] Compiling atty v0.2.2 [INFO] [stderr] Compiling time v0.1.36 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Compiling num-integer v0.1.33 [INFO] [stderr] Compiling sdl2-sys v0.31.0 [INFO] [stderr] Compiling textwrap v0.6.0 [INFO] [stderr] Compiling aho-corasick v0.5.3 [INFO] [stderr] Compiling num-iter v0.1.33 [INFO] [stderr] Compiling num v0.1.37 [INFO] [stderr] Compiling clap v2.25.0 [INFO] [stderr] Compiling thread-id v2.0.0 [INFO] [stderr] Compiling thread_local v0.2.7 [INFO] [stderr] Compiling regex v0.1.80 [INFO] [stderr] Compiling sdl2 v0.31.0 [INFO] [stderr] Compiling env_logger v0.3.5 [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | 0x0000...0x7FFF => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | 0x8000...0x9FFF => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | 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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:96:13 [INFO] [stdout] | [INFO] [stdout] 96 | 0xC000...0xDFFF => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 99 | 0xE000...0xFDFF => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | 0xFE00...0xFE9F => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | 0xFF04...0xFF07 => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:111:13 [INFO] [stdout] | [INFO] [stdout] 111 | 0xFF01...0xFF0E => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:117:13 [INFO] [stdout] | [INFO] [stdout] 117 | 0xFF10...0xFF3F => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:120:20 [INFO] [stdout] | [INFO] [stdout] 120 | addr @ 0xFF40...0xFF7F => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:122:17 [INFO] [stdout] | [INFO] [stdout] 122 | 0xFF40...0xFF7F => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | 0xFF80...0xFFFE => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:145:13 [INFO] [stdout] | [INFO] [stdout] 145 | 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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:147:13 [INFO] [stdout] | [INFO] [stdout] 147 | 0x8000...0x9FFF => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | 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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | 0xC000...0xDFFF => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:161:13 [INFO] [stdout] | [INFO] [stdout] 161 | 0xE000...0xFDFF => self.write(address - 0xC000 - 0x2000, data), // ECHO work ram [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:162:13 [INFO] [stdout] | [INFO] [stdout] 162 | 0xFE00...0xFE9F => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:170:13 [INFO] [stdout] | [INFO] [stdout] 170 | 0xFEA0...0xFEFF => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | 0xFF04...0xFF07 => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:178:13 [INFO] [stdout] | [INFO] [stdout] 178 | 0xFF01...0xFF0E => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | 0xFF10...0xFF3F => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | 0xFF40...0xFF45 | 0xFF47...0xFF7F => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:187:31 [INFO] [stdout] | [INFO] [stdout] 187 | 0xFF40...0xFF45 | 0xFF47...0xFF7F => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/mmu.rs:197:13 [INFO] [stdout] | [INFO] [stdout] 197 | 0xFF80...0xFFFE => { [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> src/main.rs:154:5 [INFO] [stdout] | [INFO] [stdout] 154 | 'frame_limiter: loop { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/cpu/opcode_cycles.rs:260:5 [INFO] [stdout] | [INFO] [stdout] 260 | _ => panic!("Unexpected opcode: {:#X}", opcode), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/cpu/opcode_cycles.rs:522:5 [INFO] [stdout] | [INFO] [stdout] 522 | _ => panic!("Unexpected opcode: {:#X}", opcode), [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/cpu/mod.rs:1615:7 [INFO] [stdout] | [INFO] [stdout] 1615 | _ => self.explode(format!("Unexpected CB opcode: {:#X}", opcode)), [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/mmu.rs:203:7 [INFO] [stdout] | [INFO] [stdout] 203 | _ => { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `index` [INFO] [stdout] --> src/ppu.rs:14:3 [INFO] [stdout] | [INFO] [stdout] 14 | index: usize, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cpu/mod.rs:180:12 [INFO] [stdout] | [INFO] [stdout] 180 | panic!(message) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 180 | panic!("{}", message) [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::num::::wrapping_sub` that must be used [INFO] [stdout] --> src/gb.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | cycles_this_frame.wrapping_sub(cycles_per_frame); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this returns the result of the operation, without modifying the original [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: linking with `cc` failed: exit status: 1 [INFO] [stdout] | [INFO] [stdout] = note: "cc" "-m64" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.8.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.gameboy.cb78458e-cgu.9.rcgu.o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8.2a4ghnz4llxbqvkk.rcgu.o" "-Wl,--as-needed" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/libsdl2-2c90b62418cf6dcb.rlib" "/opt/rustwide/target/debug/deps/librand-22b591d6848842ff.rlib" "/opt/rustwide/target/debug/deps/libsdl2_sys-6e5f01e76a168583.rlib" "/opt/rustwide/target/debug/deps/libbitflags-e0f7dbb2934afe82.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-5960fb8aa5f4b1e3.rlib" "/opt/rustwide/target/debug/deps/libnum-1069e8d705a85e6a.rlib" "/opt/rustwide/target/debug/deps/libnum_iter-10795f6b4524d421.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-0feb20880d87fdec.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-cc2f2b366697568c.rlib" "/opt/rustwide/target/debug/deps/libenv_logger-57ff5bde8c0dba6c.rlib" "/opt/rustwide/target/debug/deps/libregex-115d572707700b45.rlib" "/opt/rustwide/target/debug/deps/libutf8_ranges-a505cd05bbdfb81d.rlib" "/opt/rustwide/target/debug/deps/libregex_syntax-336a9301e9d8fcde.rlib" "/opt/rustwide/target/debug/deps/libthread_local-91eca3bbe9e25c61.rlib" "/opt/rustwide/target/debug/deps/libthread_id-dca2cbad1af2ad3f.rlib" "/opt/rustwide/target/debug/deps/libaho_corasick-371ad7a8f6875345.rlib" "/opt/rustwide/target/debug/deps/libmemchr-f8069cf5c2665d27.rlib" "/opt/rustwide/target/debug/deps/liblog-b5fa4ada04273c5e.rlib" "/opt/rustwide/target/debug/deps/libtime-9406b6ed39ba466f.rlib" "/opt/rustwide/target/debug/deps/libclap-50437bb92ce2150d.rlib" "/opt/rustwide/target/debug/deps/libatty-de4c07cf89203231.rlib" "/opt/rustwide/target/debug/deps/libunicode_segmentation-bd3ba599ce1ab969.rlib" "/opt/rustwide/target/debug/deps/libtextwrap-1c949043f2f04d50.rlib" "/opt/rustwide/target/debug/deps/libterm_size-eb6b286f62970eec.rlib" "/opt/rustwide/target/debug/deps/liblibc-5d01d54f05972b67.rlib" "/opt/rustwide/target/debug/deps/libvec_map-57b7f6963103b8d1.rlib" "/opt/rustwide/target/debug/deps/libbitflags-1810396d55db4a65.rlib" "/opt/rustwide/target/debug/deps/libunicode_width-120a54c762d0b92b.rlib" "/opt/rustwide/target/debug/deps/libansi_term-d712b9e0e273b9aa.rlib" "/opt/rustwide/target/debug/deps/libstrsim-3c7c4c723cf30476.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-29e5e596e889a0aa.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-1b145d9fcdc08832.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-5b037ee6b77e2ff0.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-9635a64fca0ebd28.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-a7574eb9bb7a8fc5.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-f5fa1dc334dcaeeb.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-6ee570a898e75ef0.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-afb62f29a0815772.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-a632746535fd9988.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-25acc307bcb1d7b6.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-377721a625f6ace7.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-43c01431c8a4ee6f.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-5f74725679453254.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-2b35d8999819161d.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-a81f2980c3f58cf2.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-57b4679830289815.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-2a6a2797f7a73818.rlib" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-0e3656b1fda5fd7b.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-13b419dfbcf9c1f8.rlib" "-Wl,-Bdynamic" "-lSDL2_image" "-lSDL2" "-lutil" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-znoexecstack" "-L" "/opt/rustwide/rustup-home/toolchains/a77da2d454e6caa227a85b16410b95f93495e7e0/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/gameboy-4ca8c0a5cfd66aa8" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro,-znow" "-nodefaultlibs" [INFO] [stdout] = note: /usr/bin/ld: cannot find -lSDL2_image [INFO] [stdout] collect2: error: ld returned 1 exit status [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 33 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `gameboy` due to 2 previous errors; 33 warnings emitted [INFO] running `Command { std: "docker" "inspect" "9ee8ff3a7f9f30a91d5d016a3e2b99b1e56835d9aa2f82cf531f0a378264e50b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9ee8ff3a7f9f30a91d5d016a3e2b99b1e56835d9aa2f82cf531f0a378264e50b", kill_on_drop: false }` [INFO] [stdout] 9ee8ff3a7f9f30a91d5d016a3e2b99b1e56835d9aa2f82cf531f0a378264e50b