[INFO] cloning repository https://github.com/mahimahi42/chip8 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mahimahi42/chip8" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmahimahi42%2Fchip8", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmahimahi42%2Fchip8'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 094b1ec56ce474369a81daa3b4654a3b2b4afe3a [INFO] testing mahimahi42/chip8 against master#432e145bd5a974c5b6f4dd9b352891bd7502b69d for pr-87041 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmahimahi42%2Fchip8" "/workspace/builds/worker-14/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-14/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mahimahi42/chip8 on toolchain 432e145bd5a974c5b6f4dd9b352891bd7502b69d [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/mahimahi42/chip8 [INFO] finished tweaking git repo https://github.com/mahimahi42/chip8 [INFO] tweaked toml for git repo https://github.com/mahimahi42/chip8 written to /workspace/builds/worker-14/source/Cargo.toml [INFO] crate git repo https://github.com/mahimahi42/chip8 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5fef8a93d36c1f03e24cf546cac966544100667f044981baaa62e26ffedc1f50 [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" "5fef8a93d36c1f03e24cf546cac966544100667f044981baaa62e26ffedc1f50", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5fef8a93d36c1f03e24cf546cac966544100667f044981baaa62e26ffedc1f50", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5fef8a93d36c1f03e24cf546cac966544100667f044981baaa62e26ffedc1f50", kill_on_drop: false }` [INFO] [stdout] 5fef8a93d36c1f03e24cf546cac966544100667f044981baaa62e26ffedc1f50 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "build" "--frozen" "--message-format=json", 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] d1ad42a00e65a2c52b42649c8f68b103b486524e412f2f2bbd63461e08c5eb47 [INFO] running `Command { std: "docker" "start" "-a" "d1ad42a00e65a2c52b42649c8f68b103b486524e412f2f2bbd63461e08c5eb47", kill_on_drop: false }` [INFO] [stderr] Compiling cfg-if v0.1.9 [INFO] [stderr] Compiling lazy_static v1.3.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.5 [INFO] [stderr] Compiling unicode-width v0.1.5 [INFO] [stderr] Compiling sdl2 v0.32.2 [INFO] [stderr] Compiling c_vec v1.3.3 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling fps_clock v2.0.0 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling num-iter v0.1.39 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling atty v0.2.13 [INFO] [stderr] Compiling getrandom v0.1.7 [INFO] [stderr] Compiling sdl2-sys v0.32.6 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling rand_core v0.5.0 [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling c2-chacha v0.2.2 [INFO] [stderr] Compiling rand_pcg v0.2.1 [INFO] [stderr] Compiling rand_chacha v0.2.1 [INFO] [stderr] Compiling rand v0.7.0 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling chip8 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Rng`, `SeedableRng` [INFO] [stdout] --> src/cpu/cpu.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::{SeedableRng, RngCore, Rng}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sdl2::EventPump` [INFO] [stdout] --> src/display/display.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use sdl2::EventPump; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Chip8Audio` [INFO] [stdout] --> src/audio/audio.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Chip8Audio { [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: `new` [INFO] [stdout] --> src/audio/audio.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn new(sdl: &sdl2::Sdl) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `play` [INFO] [stdout] --> src/audio/audio.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn play(&self) { self.device.resume(); } [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `stop` [INFO] [stdout] --> src/audio/audio.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn stop(&self) { self.device.pause(); } [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `RAM` [INFO] [stdout] --> src/cpu/cpu.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const RAM: usize = 4096; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `HEIGHT` [INFO] [stdout] --> src/cpu/cpu.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const HEIGHT: usize = 32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `WIDTH` [INFO] [stdout] --> src/cpu/cpu.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | const WIDTH: usize = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `PROG_START` [INFO] [stdout] --> src/cpu/cpu.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const PROG_START: usize = 0x200; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `FONT` [INFO] [stdout] --> src/cpu/cpu.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | / const FONT: [u8; 80] = [ [INFO] [stdout] 14 | | 0xF0, 0x90, 0x90, 0x90, 0xF0, [INFO] [stdout] 15 | | 0x20, 0x60, 0x20, 0x20, 0x70, [INFO] [stdout] 16 | | 0xF0, 0x10, 0xF0, 0x80, 0xF0, [INFO] [stdout] ... | [INFO] [stdout] 29 | | 0xF0, 0x80, 0xF0, 0x80, 0x80, [INFO] [stdout] 30 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Chip8Cpu` [INFO] [stdout] --> src/cpu/cpu.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct Chip8Cpu { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/cpu/cpu.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `load_rom` [INFO] [stdout] --> src/cpu/cpu.rs:124:12 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn load_rom(&mut self, path: &str) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `read_rom` [INFO] [stdout] --> src/cpu/cpu.rs:138:8 [INFO] [stdout] | [INFO] [stdout] 138 | fn read_rom(&self, path: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `fetch_opcode` [INFO] [stdout] --> src/cpu/cpu.rs:147:8 [INFO] [stdout] | [INFO] [stdout] 147 | fn fetch_opcode(&self) -> Opcode { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tick` [INFO] [stdout] --> src/cpu/cpu.rs:151:12 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn tick(&mut self, input: [bool; 16]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `decode_opcode` [INFO] [stdout] --> src/cpu/cpu.rs:163:8 [INFO] [stdout] | [INFO] [stdout] 163 | fn decode_opcode(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `cls_00E0` [INFO] [stdout] --> src/cpu/cpu.rs:207:8 [INFO] [stdout] | [INFO] [stdout] 207 | fn cls_00E0(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ret_00EE` [INFO] [stdout] --> src/cpu/cpu.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | fn ret_00EE(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `jp_addr_1nnn` [INFO] [stdout] --> src/cpu/cpu.rs:222:8 [INFO] [stdout] | [INFO] [stdout] 222 | fn jp_addr_1nnn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `call_addr_2nnn` [INFO] [stdout] --> src/cpu/cpu.rs:226:8 [INFO] [stdout] | [INFO] [stdout] 226 | fn call_addr_2nnn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `se_vx_kk_3xkk` [INFO] [stdout] --> src/cpu/cpu.rs:232:8 [INFO] [stdout] | [INFO] [stdout] 232 | fn se_vx_kk_3xkk(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sne_vx_kk_4xkk` [INFO] [stdout] --> src/cpu/cpu.rs:236:8 [INFO] [stdout] | [INFO] [stdout] 236 | fn sne_vx_kk_4xkk(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `se_vx_vy_5xy0` [INFO] [stdout] --> src/cpu/cpu.rs:240:8 [INFO] [stdout] | [INFO] [stdout] 240 | fn se_vx_vy_5xy0(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_vx_kk_6xkk` [INFO] [stdout] --> src/cpu/cpu.rs:244:8 [INFO] [stdout] | [INFO] [stdout] 244 | fn ld_vx_kk_6xkk(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add_vx_kk_7xkk` [INFO] [stdout] --> src/cpu/cpu.rs:249:8 [INFO] [stdout] | [INFO] [stdout] 249 | fn add_vx_kk_7xkk(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_vx_vy_8xy0` [INFO] [stdout] --> src/cpu/cpu.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 255 | fn ld_vx_vy_8xy0(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `or_vx_vy_8xy1` [INFO] [stdout] --> src/cpu/cpu.rs:260:8 [INFO] [stdout] | [INFO] [stdout] 260 | fn or_vx_vy_8xy1(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `and_vx_vy_8xy2` [INFO] [stdout] --> src/cpu/cpu.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | fn and_vx_vy_8xy2(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `xor_vx_vy_8xy3` [INFO] [stdout] --> src/cpu/cpu.rs:270:8 [INFO] [stdout] | [INFO] [stdout] 270 | fn xor_vx_vy_8xy3(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add_vx_vy_8xy4` [INFO] [stdout] --> src/cpu/cpu.rs:275:8 [INFO] [stdout] | [INFO] [stdout] 275 | fn add_vx_vy_8xy4(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sub_vx_vy_8xy5` [INFO] [stdout] --> src/cpu/cpu.rs:282:8 [INFO] [stdout] | [INFO] [stdout] 282 | fn sub_vx_vy_8xy5(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `shr_vx_8xy6` [INFO] [stdout] --> src/cpu/cpu.rs:289:8 [INFO] [stdout] | [INFO] [stdout] 289 | fn shr_vx_8xy6(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `subn_vx_vy_8xy7` [INFO] [stdout] --> src/cpu/cpu.rs:295:8 [INFO] [stdout] | [INFO] [stdout] 295 | fn subn_vx_vy_8xy7(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `shl_vx_8xyE` [INFO] [stdout] --> src/cpu/cpu.rs:302:8 [INFO] [stdout] | [INFO] [stdout] 302 | fn shl_vx_8xyE(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sne_vx_vy_9xy0` [INFO] [stdout] --> src/cpu/cpu.rs:308:8 [INFO] [stdout] | [INFO] [stdout] 308 | fn sne_vx_vy_9xy0(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_i_addr_Annn` [INFO] [stdout] --> src/cpu/cpu.rs:312:8 [INFO] [stdout] | [INFO] [stdout] 312 | fn ld_i_addr_Annn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `jp_v0_addr_Bnnn` [INFO] [stdout] --> src/cpu/cpu.rs:317:8 [INFO] [stdout] | [INFO] [stdout] 317 | fn jp_v0_addr_Bnnn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `rnd_vx_kk_Cxkk` [INFO] [stdout] --> src/cpu/cpu.rs:321:8 [INFO] [stdout] | [INFO] [stdout] 321 | fn rnd_vx_kk_Cxkk(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `drw_vx_vy_n_Dxyn` [INFO] [stdout] --> src/cpu/cpu.rs:328:8 [INFO] [stdout] | [INFO] [stdout] 328 | fn drw_vx_vy_n_Dxyn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `skp_vx_Ex9E` [INFO] [stdout] --> src/cpu/cpu.rs:343:8 [INFO] [stdout] | [INFO] [stdout] 343 | fn skp_vx_Ex9E(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sknp_vx_ExA1` [INFO] [stdout] --> src/cpu/cpu.rs:352:8 [INFO] [stdout] | [INFO] [stdout] 352 | fn sknp_vx_ExA1(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_vx_dt_Fx07` [INFO] [stdout] --> src/cpu/cpu.rs:361:8 [INFO] [stdout] | [INFO] [stdout] 361 | fn ld_vx_dt_Fx07(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_vx_k_Fx0A` [INFO] [stdout] --> src/cpu/cpu.rs:366:8 [INFO] [stdout] | [INFO] [stdout] 366 | fn ld_vx_k_Fx0A(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_dt_vx_Fx15` [INFO] [stdout] --> src/cpu/cpu.rs:375:8 [INFO] [stdout] | [INFO] [stdout] 375 | fn ld_dt_vx_Fx15(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_st_vx_Fx18` [INFO] [stdout] --> src/cpu/cpu.rs:380:8 [INFO] [stdout] | [INFO] [stdout] 380 | fn ld_st_vx_Fx18(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add_i_vx_Fx1E` [INFO] [stdout] --> src/cpu/cpu.rs:385:8 [INFO] [stdout] | [INFO] [stdout] 385 | fn add_i_vx_Fx1E(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_f_vx_Fx29` [INFO] [stdout] --> src/cpu/cpu.rs:391:8 [INFO] [stdout] | [INFO] [stdout] 391 | fn ld_f_vx_Fx29(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_b_vx_Fx33` [INFO] [stdout] --> src/cpu/cpu.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | fn ld_b_vx_Fx33(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_i_vx_Fx55` [INFO] [stdout] --> src/cpu/cpu.rs:403:8 [INFO] [stdout] | [INFO] [stdout] 403 | fn ld_i_vx_Fx55(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ld_vx_i_Fx65` [INFO] [stdout] --> src/cpu/cpu.rs:410:8 [INFO] [stdout] | [INFO] [stdout] 410 | fn ld_vx_i_Fx65(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `SCALE` [INFO] [stdout] --> src/display/display.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const SCALE: u32 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `HEIGHT` [INFO] [stdout] --> src/display/display.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const HEIGHT: u32 = 32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `WIDTH` [INFO] [stdout] --> src/display/display.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const WIDTH: u32 = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `SCREEN_HEIGHT` [INFO] [stdout] --> src/display/display.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | const SCREEN_HEIGHT: u32 = SCALE * HEIGHT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `SCREEN_WIDTH` [INFO] [stdout] --> src/display/display.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const SCREEN_WIDTH: u32 = SCALE * WIDTH; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Chip8Display` [INFO] [stdout] --> src/display/display.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Chip8Display { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/display/display.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn new(sdl: &sdl2::Sdl) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `draw` [INFO] [stdout] --> src/display/display.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn draw(&mut self, vram: &[[u8; WIDTH as usize]; HEIGHT as usize]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `pix_color` [INFO] [stdout] --> src/display/display.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | fn pix_color(pix: u8) -> pixels::Color { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Chip8Input` [INFO] [stdout] --> src/input/input.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Chip8Input { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/input/input.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn new(sdl: &sdl2::Sdl) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `poll` [INFO] [stdout] --> src/input/input.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn poll(&self) -> [bool; 16] { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `cls_00E0` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:207:8 [INFO] [stdout] | [INFO] [stdout] 207 | fn cls_00E0(&mut self) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `cls_00_e0` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ret_00EE` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | fn ret_00EE(&mut self) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `ret_00_ee` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `shl_vx_8xyE` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:302:8 [INFO] [stdout] | [INFO] [stdout] 302 | fn shl_vx_8xyE(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `shl_vx_8xy_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_i_addr_Annn` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:312:8 [INFO] [stdout] | [INFO] [stdout] 312 | fn ld_i_addr_Annn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `ld_i_addr_annn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `jp_v0_addr_Bnnn` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:317:8 [INFO] [stdout] | [INFO] [stdout] 317 | fn jp_v0_addr_Bnnn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `jp_v0_addr_bnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `rnd_vx_kk_Cxkk` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:321:8 [INFO] [stdout] | [INFO] [stdout] 321 | fn rnd_vx_kk_Cxkk(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `rnd_vx_kk_cxkk` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `drw_vx_vy_n_Dxyn` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:328:8 [INFO] [stdout] | [INFO] [stdout] 328 | fn drw_vx_vy_n_Dxyn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `drw_vx_vy_n_dxyn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `skp_vx_Ex9E` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:343:8 [INFO] [stdout] | [INFO] [stdout] 343 | fn skp_vx_Ex9E(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `skp_vx_ex9_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sknp_vx_ExA1` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:352:8 [INFO] [stdout] | [INFO] [stdout] 352 | fn sknp_vx_ExA1(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `sknp_vx_ex_a1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_vx_dt_Fx07` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:361:8 [INFO] [stdout] | [INFO] [stdout] 361 | fn ld_vx_dt_Fx07(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_vx_dt_fx07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_vx_k_Fx0A` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:366:8 [INFO] [stdout] | [INFO] [stdout] 366 | fn ld_vx_k_Fx0A(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `ld_vx_k_fx0_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_dt_vx_Fx15` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:375:8 [INFO] [stdout] | [INFO] [stdout] 375 | fn ld_dt_vx_Fx15(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_dt_vx_fx15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_st_vx_Fx18` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:380:8 [INFO] [stdout] | [INFO] [stdout] 380 | fn ld_st_vx_Fx18(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_st_vx_fx18` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_i_vx_Fx1E` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:385:8 [INFO] [stdout] | [INFO] [stdout] 385 | fn add_i_vx_Fx1E(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `add_i_vx_fx1_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_f_vx_Fx29` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:391:8 [INFO] [stdout] | [INFO] [stdout] 391 | fn ld_f_vx_Fx29(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_f_vx_fx29` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_b_vx_Fx33` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | fn ld_b_vx_Fx33(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_b_vx_fx33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_i_vx_Fx55` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:403:8 [INFO] [stdout] | [INFO] [stdout] 403 | fn ld_i_vx_Fx55(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_i_vx_fx55` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_vx_i_Fx65` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:410:8 [INFO] [stdout] | [INFO] [stdout] 410 | fn ld_vx_i_Fx65(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_vx_i_fx65` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 82 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng`, `SeedableRng` [INFO] [stdout] --> src/cpu/cpu.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::{SeedableRng, RngCore, Rng}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sdl2::EventPump` [INFO] [stdout] --> src/display/display.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use sdl2::EventPump; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `cls_00E0` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:207:8 [INFO] [stdout] | [INFO] [stdout] 207 | fn cls_00E0(&mut self) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `cls_00_e0` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ret_00EE` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | fn ret_00EE(&mut self) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `ret_00_ee` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `shl_vx_8xyE` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:302:8 [INFO] [stdout] | [INFO] [stdout] 302 | fn shl_vx_8xyE(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `shl_vx_8xy_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_i_addr_Annn` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:312:8 [INFO] [stdout] | [INFO] [stdout] 312 | fn ld_i_addr_Annn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `ld_i_addr_annn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `jp_v0_addr_Bnnn` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:317:8 [INFO] [stdout] | [INFO] [stdout] 317 | fn jp_v0_addr_Bnnn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `jp_v0_addr_bnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `rnd_vx_kk_Cxkk` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:321:8 [INFO] [stdout] | [INFO] [stdout] 321 | fn rnd_vx_kk_Cxkk(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `rnd_vx_kk_cxkk` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `drw_vx_vy_n_Dxyn` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:328:8 [INFO] [stdout] | [INFO] [stdout] 328 | fn drw_vx_vy_n_Dxyn(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `drw_vx_vy_n_dxyn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `skp_vx_Ex9E` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:343:8 [INFO] [stdout] | [INFO] [stdout] 343 | fn skp_vx_Ex9E(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `skp_vx_ex9_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sknp_vx_ExA1` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:352:8 [INFO] [stdout] | [INFO] [stdout] 352 | fn sknp_vx_ExA1(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `sknp_vx_ex_a1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_vx_dt_Fx07` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:361:8 [INFO] [stdout] | [INFO] [stdout] 361 | fn ld_vx_dt_Fx07(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_vx_dt_fx07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_vx_k_Fx0A` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:366:8 [INFO] [stdout] | [INFO] [stdout] 366 | fn ld_vx_k_Fx0A(&mut self, op: Opcode, input: [bool; 16]) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `ld_vx_k_fx0_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_dt_vx_Fx15` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:375:8 [INFO] [stdout] | [INFO] [stdout] 375 | fn ld_dt_vx_Fx15(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_dt_vx_fx15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_st_vx_Fx18` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:380:8 [INFO] [stdout] | [INFO] [stdout] 380 | fn ld_st_vx_Fx18(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_st_vx_fx18` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_i_vx_Fx1E` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:385:8 [INFO] [stdout] | [INFO] [stdout] 385 | fn add_i_vx_Fx1E(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `add_i_vx_fx1_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_f_vx_Fx29` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:391:8 [INFO] [stdout] | [INFO] [stdout] 391 | fn ld_f_vx_Fx29(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_f_vx_fx29` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_b_vx_Fx33` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | fn ld_b_vx_Fx33(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_b_vx_fx33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_i_vx_Fx55` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:403:8 [INFO] [stdout] | [INFO] [stdout] 403 | fn ld_i_vx_Fx55(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_i_vx_fx55` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `ld_vx_i_Fx65` should have a snake case name [INFO] [stdout] --> src/cpu/cpu.rs:410:8 [INFO] [stdout] | [INFO] [stdout] 410 | fn ld_vx_i_Fx65(&mut self, op: Opcode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ld_vx_i_fx65` [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/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.8.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.chip8.73f4071f-cgu.9.rcgu.o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c.2x0al9l43jl43xty.rcgu.o" "-Wl,--as-needed" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/libsdl2-32466d6cd7816b28.rlib" "/opt/rustwide/target/debug/deps/librand-ca343cada674f19b.rlib" "/opt/rustwide/target/debug/deps/librand_xorshift-cf1c6e10b01f7775.rlib" "/opt/rustwide/target/debug/deps/librand_pcg-c718e33501c3074a.rlib" "/opt/rustwide/target/debug/deps/librand_hc-f47d2efa7fbfb522.rlib" "/opt/rustwide/target/debug/deps/librand_chacha-34c13b180a7d116c.rlib" "/opt/rustwide/target/debug/deps/librand_isaac-25cebe047f165eba.rlib" "/opt/rustwide/target/debug/deps/librand_core-0a725dfaecf66c67.rlib" "/opt/rustwide/target/debug/deps/librand_os-8b9db07430694703.rlib" "/opt/rustwide/target/debug/deps/librand_jitter-40dd517d98a6b249.rlib" "/opt/rustwide/target/debug/deps/librand_core-e3f7b5ee9401667b.rlib" "/opt/rustwide/target/debug/deps/libc_vec-64adc4f640d38272.rlib" "/opt/rustwide/target/debug/deps/libsdl2_sys-d172d89260ecf1a6.rlib" "/opt/rustwide/target/debug/deps/libnum-eaef6497caa2be76.rlib" "/opt/rustwide/target/debug/deps/libnum_iter-9d6c649272c3c9ae.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-c33960f16add0863.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-aed51b72bd57c4b3.rlib" "/opt/rustwide/target/debug/deps/librand_pcg-61b8caeb1c60a9d4.rlib" "/opt/rustwide/target/debug/deps/librand-51635314564b8c6c.rlib" "/opt/rustwide/target/debug/deps/librand_chacha-6e01ec22b76a3775.rlib" "/opt/rustwide/target/debug/deps/libc2_chacha-69969dbc427fe6fc.rlib" "/opt/rustwide/target/debug/deps/libppv_lite86-2a5eab3a540db3c7.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-48ae5990e2528ae1.rlib" "/opt/rustwide/target/debug/deps/librand_core-830b89e86963465d.rlib" "/opt/rustwide/target/debug/deps/libgetrandom-6130231ac158eddb.rlib" "/opt/rustwide/target/debug/deps/libcfg_if-ff15ca4418a0fa04.rlib" "/opt/rustwide/target/debug/deps/libfps_clock-0523292d0c13004c.rlib" "/opt/rustwide/target/debug/deps/libclap-32b2094fc7ad76b5.rlib" "/opt/rustwide/target/debug/deps/libvec_map-6dd515bac74e9212.rlib" "/opt/rustwide/target/debug/deps/libtextwrap-40570afc47c379d8.rlib" "/opt/rustwide/target/debug/deps/libunicode_width-d258e95b9deb3cd8.rlib" "/opt/rustwide/target/debug/deps/libstrsim-4124e514b7a4f703.rlib" "/opt/rustwide/target/debug/deps/libbitflags-20c5c28231f4058e.rlib" "/opt/rustwide/target/debug/deps/libatty-d4536dca73b6ace2.rlib" "/opt/rustwide/target/debug/deps/liblibc-6df1c31eea31b39e.rlib" "/opt/rustwide/target/debug/deps/libansi_term-bd7b8ca88b2cc3f8.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-37fdd654777c296f.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-d883bf2137e9181a.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-22ab8f3db88b586e.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-0167c9242d0931d5.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-361790a1a5505fc5.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-01c2ffe1ecd05a67.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-ec79e29a889fe805.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-001a3456e8a8331b.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-e8f1404290f0f040.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-76f46d0f23360a60.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-baf0bdc5eb131895.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-3a6a4ee6592d9370.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-1cc90d9dd57195f8.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-0e91863ffbec5148.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-69528f2eac185ac9.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-52d5241975807511.rlib" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-9924c22ae1efcf66.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-d1241f7bd234a268.rlib" "-Wl,-Bdynamic" "-lSDL2" "-lSDL2_gfx" "-lutil" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-znoexecstack" "-L" "/opt/rustwide/rustup-home/toolchains/432e145bd5a974c5b6f4dd9b352891bd7502b69d/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/chip8-8ea5aa062fb23a3c" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" [INFO] [stdout] = note: /usr/bin/ld: cannot find -lSDL2_gfx [INFO] [stdout] collect2: error: ld returned 1 exit status [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 20 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `chip8` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `Command { std: "docker" "inspect" "d1ad42a00e65a2c52b42649c8f68b103b486524e412f2f2bbd63461e08c5eb47", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d1ad42a00e65a2c52b42649c8f68b103b486524e412f2f2bbd63461e08c5eb47", kill_on_drop: false }` [INFO] [stdout] d1ad42a00e65a2c52b42649c8f68b103b486524e412f2f2bbd63461e08c5eb47