[INFO] cloning repository https://github.com/THashimov/chip-8 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/THashimov/chip-8" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTHashimov%2Fchip-8", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTHashimov%2Fchip-8'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 488fe1d0dedc89e7e4da5430d2eeb09ab50e96b0 [INFO] checking THashimov/chip-8 against try#6f12b8fe67b4eed2e838dab803ed9493b9d62c0f for pr-79073 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTHashimov%2Fchip-8" "/workspace/builds/worker-2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/THashimov/chip-8 on toolchain 6f12b8fe67b4eed2e838dab803ed9493b9d62c0f [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+6f12b8fe67b4eed2e838dab803ed9493b9d62c0f" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/THashimov/chip-8 [INFO] finished tweaking git repo https://github.com/THashimov/chip-8 [INFO] tweaked toml for git repo https://github.com/THashimov/chip-8 written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate git repo https://github.com/THashimov/chip-8 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+6f12b8fe67b4eed2e838dab803ed9493b9d62c0f" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+6f12b8fe67b4eed2e838dab803ed9493b9d62c0f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] db5748171882cf9bb507eeffa2859f37b9f60b21ccfc6ed27789b1aa2f43d9bc [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" "db5748171882cf9bb507eeffa2859f37b9f60b21ccfc6ed27789b1aa2f43d9bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "db5748171882cf9bb507eeffa2859f37b9f60b21ccfc6ed27789b1aa2f43d9bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "db5748171882cf9bb507eeffa2859f37b9f60b21ccfc6ed27789b1aa2f43d9bc", kill_on_drop: false }` [INFO] [stdout] db5748171882cf9bb507eeffa2859f37b9f60b21ccfc6ed27789b1aa2f43d9bc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+6f12b8fe67b4eed2e838dab803ed9493b9d62c0f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 58d727cba089b8f842ac8a130a8f410085082e143ecce6bf4b8d5e7cf0308228 [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" "58d727cba089b8f842ac8a130a8f410085082e143ecce6bf4b8d5e7cf0308228", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.80 [INFO] [stderr] Compiling version-compare v0.0.10 [INFO] [stderr] Compiling sdl2 v0.34.3 [INFO] [stderr] Checking rand_core v0.4.2 [INFO] [stderr] Compiling sdl2-sys v0.34.3 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking rand v0.5.6 [INFO] [stderr] Checking chip8 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: expected expression, found `]` [INFO] [stdout] --> src/cpu.rs:370:48 [INFO] [stdout] | [INFO] [stdout] 370 | self.v[operands.x()] = self.keypad[] as usize [INFO] [stdout] | ^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `load_ROMS` [INFO] [stdout] --> src/main.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | mod load_ROMS; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `load_ROMS`, create file "src/load_ROMS.rs" [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found `]` [INFO] [stdout] --> src/cpu.rs:370:48 [INFO] [stdout] | [INFO] [stdout] 370 | self.v[operands.x()] = self.keypad[] as usize [INFO] [stdout] | ^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `load_ROMS` [INFO] [stdout] --> src/main.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | mod load_ROMS; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `load_ROMS`, create file "src/load_ROMS.rs" [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `events` in this scope [INFO] [stdout] --> src/keyboard.rs:36:48 [INFO] [stdout] | [INFO] [stdout] 36 | None => println!("Invalid keycode {}", events), [INFO] [stdout] | ^^^^^^ help: you might have meant to use the available field: `self.events` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SE_IMM` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | SE_IMM, // Conditional skip 3xkk [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `SeImm` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SNE_IMM` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | SNE_IMM,// Conditional not skip [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `SneImm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LDR_IM` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | LDR_IM, // Load immediate into reg [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `LdrIm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ADD_IM` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | ADD_IM, // Add immediate to reg [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `AddIm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_I` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | LD_I, // Load I register [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case: `LdI` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JP_REG` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | JP_REG, // Jump to reg + offset [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `JpReg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LDR_DT` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | LDR_DT, // Load reg with delay timer [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `LdrDt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LDR_KP` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | LDR_KP, // Wait for keypress and load reg [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `LdrKp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_DT` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | LD_DT, // Load delay timer with reg [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `LdDt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_ST` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | LD_ST, // Load sound timer with reg [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `LdSt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ADD_I` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | ADD_I, // Add value to I reg [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `AddI` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ADD_SP` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | ADD_SP, // Add sprite [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `AddSp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_B` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | LD_B, // Load BCD value of reg into memory at I, I+1, I+2 [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case: `LdB` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_MUL` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | LD_MUL, // Load V0 to Vx into memory starting at I [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `LdMul` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LDR_MUL` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | LDR_MUL,// Load V0 to Vx with memory starting at I [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `LdrMul` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `events` in this scope [INFO] [stdout] --> src/keyboard.rs:36:48 [INFO] [stdout] | [INFO] [stdout] 36 | None => println!("Invalid keycode {}", events), [INFO] [stdout] | ^^^^^^ help: you might have meant to use the available field: `self.events` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SE_IMM` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | SE_IMM, // Conditional skip 3xkk [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `SeImm` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SNE_IMM` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | SNE_IMM,// Conditional not skip [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `SneImm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LDR_IM` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | LDR_IM, // Load immediate into reg [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `LdrIm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ADD_IM` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | ADD_IM, // Add immediate to reg [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `AddIm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_I` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | LD_I, // Load I register [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case: `LdI` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JP_REG` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | JP_REG, // Jump to reg + offset [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `JpReg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LDR_DT` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | LDR_DT, // Load reg with delay timer [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `LdrDt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LDR_KP` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | LDR_KP, // Wait for keypress and load reg [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `LdrKp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_DT` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | LD_DT, // Load delay timer with reg [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `LdDt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_ST` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | LD_ST, // Load sound timer with reg [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `LdSt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ADD_I` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | ADD_I, // Add value to I reg [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `AddI` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ADD_SP` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | ADD_SP, // Add sprite [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `AddSp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_B` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | LD_B, // Load BCD value of reg into memory at I, I+1, I+2 [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case: `LdB` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LD_MUL` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | LD_MUL, // Load V0 to Vx into memory starting at I [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `LdMul` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LDR_MUL` should have an upper camel case name [INFO] [stdout] --> src/cpu.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | LDR_MUL,// Load V0 to Vx with memory starting at I [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `LdrMul` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] 19 | Keycode::Num1 => Some(0x1), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] 19 | Keycode::Num1 => Some(0x1), [INFO] [stdout] 20 | Keycode::Num3 => Some(0x3), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 21 | Keycode::Num2 => Some(0x2), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 22 | Keycode::Num3 => Some(0x3), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 23 | Keycode::Num4 => Some(0xC), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 24 | Keycode::Q => Some(0x4), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 25 | Keycode::W => Some(0x5), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 26 | Keycode::E => Some(0x6), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 27 | Keycode::R => Some(0xD), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 28 | Keycode::A => Some(0x7), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 29 | Keycode::S => Some(0x8), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 30 | Keycode::D => Some(0x9), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 31 | Keycode::F => Some(0xE), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 32 | Keycode::Z => Some(0xA), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 33 | Keycode::X => Some(0x0), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 34 | Keycode::C => Some(0xB), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 35 | Keycode::V => Some(0xF), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 36 | None => println!("Invalid keycode {}", events), [INFO] [stdout] | ^^^^ expected struct `EventPump`, found enum `Option` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `EventPump` [INFO] [stdout] found enum `Option<_>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 21 previous errors; 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0425, E0583. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `chip8` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] 19 | Keycode::Num1 => Some(0x1), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] 19 | Keycode::Num1 => Some(0x1), [INFO] [stdout] 20 | Keycode::Num3 => Some(0x3), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 21 | Keycode::Num2 => Some(0x2), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 22 | Keycode::Num3 => Some(0x3), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 23 | Keycode::Num4 => Some(0xC), [INFO] [stdout] | ^^^^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 24 | Keycode::Q => Some(0x4), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 25 | Keycode::W => Some(0x5), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 26 | Keycode::E => Some(0x6), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 27 | Keycode::R => Some(0xD), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 28 | Keycode::A => Some(0x7), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 29 | Keycode::S => Some(0x8), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 30 | Keycode::D => Some(0x9), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 31 | Keycode::F => Some(0xE), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 32 | Keycode::Z => Some(0xA), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 33 | Keycode::X => Some(0x0), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 34 | Keycode::C => Some(0xB), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 35 | Keycode::V => Some(0xF), [INFO] [stdout] | ^^^^^^^^^^ expected struct `EventPump`, found enum `Keycode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/keyboard.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 18 | match self.events { [INFO] [stdout] | ----------- this expression has type `EventPump` [INFO] [stdout] ... [INFO] [stdout] 36 | None => println!("Invalid keycode {}", events), [INFO] [stdout] | ^^^^ expected struct `EventPump`, found enum `Option` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `EventPump` [INFO] [stdout] found enum `Option<_>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 21 previous errors; 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0425, E0583. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "58d727cba089b8f842ac8a130a8f410085082e143ecce6bf4b8d5e7cf0308228", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "58d727cba089b8f842ac8a130a8f410085082e143ecce6bf4b8d5e7cf0308228", kill_on_drop: false }` [INFO] [stdout] 58d727cba089b8f842ac8a130a8f410085082e143ecce6bf4b8d5e7cf0308228