[INFO] updating cached repository nathanj/rustboy [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/nathanj/rustboy [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/nathanj/rustboy" "work/ex/beta-1.38-1/sources/1.37.0/gh/nathanj/rustboy"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/1.37.0/gh/nathanj/rustboy'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/nathanj/rustboy" "work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nathanj/rustboy"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nathanj/rustboy'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 030fc1ecd5b03292280bddbbff4d7503d60661e4 [INFO] sha for GitHub repo nathanj/rustboy: 030fc1ecd5b03292280bddbbff4d7503d60661e4 [INFO] validating manifest of nathanj/rustboy on toolchain 1.37.0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of nathanj/rustboy on toolchain beta-2019-08-13 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing nathanj/rustboy [INFO] finished frobbing nathanj/rustboy [INFO] frobbed toml for nathanj/rustboy written to work/ex/beta-1.38-1/sources/1.37.0/gh/nathanj/rustboy/Cargo.toml [INFO] started frobbing nathanj/rustboy [INFO] finished frobbing nathanj/rustboy [INFO] frobbed toml for nathanj/rustboy written to work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nathanj/rustboy/Cargo.toml [INFO] crate nathanj/rustboy already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] error: the lock file /mnt/big/crater/work/ex/beta-1.38-1/sources/1.37.0/gh/nathanj/rustboy/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] the lockfile is outdated, regenerating it [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing nathanj/rustboy against beta-2019-08-13 for beta-1.38-1 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-5/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nathanj/rustboy:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "build" "--frozen"` [INFO] [stdout] b410271ea413f1dd06be135ce7ac10da48895f329b1999a5cb66cf16c93fd81c [INFO] running `"docker" "start" "-a" "b410271ea413f1dd06be135ce7ac10da48895f329b1999a5cb66cf16c93fd81c"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling sdl2-sys v0.7.0 [INFO] [stderr] Compiling rustboy v0.1.0 (/opt/crater/workdir) [INFO] [stderr] Compiling sdl2 v0.12.1 [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:58:20 [INFO] [stderr] | [INFO] [stderr] 58 | 0xff10 ... 0xff3f => { self.sound.write().unwrap().handle_addr(addr, write, val) } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:87:15 [INFO] [stderr] | [INFO] [stderr] 87 | 0 ... 0x1fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:104:20 [INFO] [stderr] | [INFO] [stderr] 104 | 0x2000 ... 0x3fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:116:20 [INFO] [stderr] | [INFO] [stderr] 116 | 0x4000 ... 0x5fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:122:20 [INFO] [stderr] | [INFO] [stderr] 122 | 0x6000 ... 0x7fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:129:20 [INFO] [stderr] | [INFO] [stderr] 129 | 0x8000 ... 0x9fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:136:20 [INFO] [stderr] | [INFO] [stderr] 136 | 0xa000 ... 0xbfff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:143:20 [INFO] [stderr] | [INFO] [stderr] 143 | 0xc000 ... 0xdfff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:150:20 [INFO] [stderr] | [INFO] [stderr] 150 | 0xe000 ... 0xfdff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:157:20 [INFO] [stderr] | [INFO] [stderr] 157 | 0xfe00 ... 0xfe9f => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:164:20 [INFO] [stderr] | [INFO] [stderr] 164 | 0xfea0 ... 0xfeff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:169:20 [INFO] [stderr] | [INFO] [stderr] 169 | 0xff00 ... 0xff7f => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:173:20 [INFO] [stderr] | [INFO] [stderr] 173 | 0xff80 ... 0xfffe => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/sound.rs:476:20 [INFO] [stderr] | [INFO] [stderr] 476 | 0xff30 ... 0xff3f => { if write { self.wave_ram[addr as usize - 0xff30 as usize] = val; } self.wave_ram[addr as usize - 0xff30 as usize] } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/cpu.rs:699:13 [INFO] [stderr] | [INFO] [stderr] 699 | _ => { panic!("bad cb opcode {:02x}", opcode); } [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/mem.rs:186:13 [INFO] [stderr] | [INFO] [stderr] 186 | _ => { [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/sound.rs:149:13 [INFO] [stderr] | [INFO] [stderr] 149 | let mut s = self.sound.write().unwrap(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/sound.rs:175:13 [INFO] [stderr] | [INFO] [stderr] 175 | let mut s = self.sound.write().unwrap(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/sound.rs:237:13 [INFO] [stderr] | [INFO] [stderr] 237 | let mut sound = self.sound.write().unwrap(); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:215:5 [INFO] [stderr] | [INFO] [stderr] 215 | gb.mm.load_eram(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/mem.rs:98:29 [INFO] [stderr] | [INFO] [stderr] 98 | self.save_eram(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 9.17s [INFO] running `"docker" "inspect" "b410271ea413f1dd06be135ce7ac10da48895f329b1999a5cb66cf16c93fd81c"` [INFO] running `"docker" "rm" "-f" "b410271ea413f1dd06be135ce7ac10da48895f329b1999a5cb66cf16c93fd81c"` [INFO] [stdout] b410271ea413f1dd06be135ce7ac10da48895f329b1999a5cb66cf16c93fd81c [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-5/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nathanj/rustboy:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "test" "--frozen" "--no-run"` [INFO] [stdout] 9ca2a2ed82e2ece78be6f664933cfd41d75a27dc5ef3c9d641978edd2073ed4f [INFO] running `"docker" "start" "-a" "9ca2a2ed82e2ece78be6f664933cfd41d75a27dc5ef3c9d641978edd2073ed4f"` [INFO] [stderr] Compiling rustboy v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:58:20 [INFO] [stderr] | [INFO] [stderr] 58 | 0xff10 ... 0xff3f => { self.sound.write().unwrap().handle_addr(addr, write, val) } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:87:15 [INFO] [stderr] | [INFO] [stderr] 87 | 0 ... 0x1fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:104:20 [INFO] [stderr] | [INFO] [stderr] 104 | 0x2000 ... 0x3fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:116:20 [INFO] [stderr] | [INFO] [stderr] 116 | 0x4000 ... 0x5fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:122:20 [INFO] [stderr] | [INFO] [stderr] 122 | 0x6000 ... 0x7fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:129:20 [INFO] [stderr] | [INFO] [stderr] 129 | 0x8000 ... 0x9fff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:136:20 [INFO] [stderr] | [INFO] [stderr] 136 | 0xa000 ... 0xbfff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:143:20 [INFO] [stderr] | [INFO] [stderr] 143 | 0xc000 ... 0xdfff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:150:20 [INFO] [stderr] | [INFO] [stderr] 150 | 0xe000 ... 0xfdff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:157:20 [INFO] [stderr] | [INFO] [stderr] 157 | 0xfe00 ... 0xfe9f => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:164:20 [INFO] [stderr] | [INFO] [stderr] 164 | 0xfea0 ... 0xfeff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:169:20 [INFO] [stderr] | [INFO] [stderr] 169 | 0xff00 ... 0xff7f => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/mem.rs:173:20 [INFO] [stderr] | [INFO] [stderr] 173 | 0xff80 ... 0xfffe => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/sound.rs:476:20 [INFO] [stderr] | [INFO] [stderr] 476 | 0xff30 ... 0xff3f => { if write { self.wave_ram[addr as usize - 0xff30 as usize] = val; } self.wave_ram[addr as usize - 0xff30 as usize] } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] error[E0063]: missing fields `eram`, `eram_enabled`, `rom_bank` and 1 other field in initializer of `mem::MemoryMap` [INFO] [stderr] --> src/cpu.rs:2539:18 [INFO] [stderr] | [INFO] [stderr] 2539 | let mut mm = mem::MemoryMap { rom: rom, vram: vram, wram: wram, hram: hram, [INFO] [stderr] | ^^^^^^^^^^^^^^ missing `eram`, `eram_enabled`, `rom_bank` and 1 other field [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0063`. [INFO] [stderr] error: Could not compile `rustboy`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "9ca2a2ed82e2ece78be6f664933cfd41d75a27dc5ef3c9d641978edd2073ed4f"` [INFO] running `"docker" "rm" "-f" "9ca2a2ed82e2ece78be6f664933cfd41d75a27dc5ef3c9d641978edd2073ed4f"` [INFO] [stdout] 9ca2a2ed82e2ece78be6f664933cfd41d75a27dc5ef3c9d641978edd2073ed4f