[INFO] updating cached repository https://github.com/Determinant/runes [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 3efaca6f95c4ee5dc81ee5088440879139e16897 [INFO] checking Determinant/runes against try#e4dba30b9b475d8750370c4dfb49b6541990904d for pr-71393 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDeterminant%2Frunes" "/workspace/builds/worker-8/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-8/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Determinant/runes on toolchain e4dba30b9b475d8750370c4dfb49b6541990904d [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/Determinant/runes [INFO] removed 0 missing examples [INFO] finished tweaking git repo https://github.com/Determinant/runes [INFO] tweaked toml for git repo https://github.com/Determinant/runes written to /workspace/builds/worker-8/source/Cargo.toml [INFO] crate git repo https://github.com/Determinant/runes already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] error: the lock file /workspace/builds/worker-8/source/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag. [INFO] the lockfile is outdated, regenerating it [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 90bb1bbc8e2dda1d017a8b2db6a4283aef54b762ad24099087cb743836010eef [INFO] running `"docker" "start" "-a" "90bb1bbc8e2dda1d017a8b2db6a4283aef54b762ad24099087cb743836010eef"` [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Checking lazy_static v0.2.11 [INFO] [stderr] Checking bitflags v0.7.0 [INFO] [stderr] Checking runes v0.2.4 (/opt/rustwide/workdir) [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Compiling num-iter v0.1.40 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling sdl2-sys v0.31.0 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/utils.rs:27:41 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/utils.rs:31:37 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/utils.rs:65:65 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn load_prefix(obj: &mut T, ignored: usize, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/utils.rs:77:61 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn save_prefix(obj: &T, ignored: usize, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:46:41 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:50:37 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:115:22 [INFO] [stderr] | [INFO] [stderr] 115 | ctl1: Option<&'a Controller>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:116:22 [INFO] [stderr] | [INFO] [stderr] 116 | ctl2: Option<&'a Controller> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:128:33 [INFO] [stderr] | [INFO] [stderr] 128 | ctl1: Option<&'a Controller>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:129:33 [INFO] [stderr] | [INFO] [stderr] 129 | ctl2: Option<&'a Controller>) -> Self { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:135:41 [INFO] [stderr] | [INFO] [stderr] 135 | pub fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:122:31 [INFO] [stderr] | [INFO] [stderr] 122 | size_of::>() + [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] ... [INFO] [stderr] 136 | load_prefix(self, CPUMEM_IGNORED_SIZE!(), reader) && [INFO] [stderr] | ---------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:123:31 [INFO] [stderr] | [INFO] [stderr] 123 | size_of::>()) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] ... [INFO] [stderr] 136 | load_prefix(self, CPUMEM_IGNORED_SIZE!(), reader) && [INFO] [stderr] | ---------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:140:37 [INFO] [stderr] | [INFO] [stderr] 140 | pub fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:122:31 [INFO] [stderr] | [INFO] [stderr] 122 | size_of::>() + [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] ... [INFO] [stderr] 141 | save_prefix(self, CPUMEM_IGNORED_SIZE!(), writer) && [INFO] [stderr] | ---------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:123:31 [INFO] [stderr] | [INFO] [stderr] 123 | size_of::>()) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] ... [INFO] [stderr] 141 | save_prefix(self, CPUMEM_IGNORED_SIZE!(), writer) && [INFO] [stderr] | ---------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:289:41 [INFO] [stderr] | [INFO] [stderr] 289 | pub fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:293:37 [INFO] [stderr] | [INFO] [stderr] 293 | pub fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mos6502.rs:672:41 [INFO] [stderr] | [INFO] [stderr] 672 | pub fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mos6502.rs:677:37 [INFO] [stderr] | [INFO] [stderr] 677 | pub fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:60:22 [INFO] [stderr] | [INFO] [stderr] 60 | pub scr: &'a mut Screen, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Screen` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:444:49 [INFO] [stderr] | [INFO] [stderr] 444 | pub fn new(mem: PPUMemory<'a>, scr: &'a mut Screen) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Screen` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:474:41 [INFO] [stderr] | [INFO] [stderr] 474 | pub fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:65:28 [INFO] [stderr] | [INFO] [stderr] 65 | size_of::<&mut Screen>()) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Screen` [INFO] [stderr] ... [INFO] [stderr] 475 | load_prefix(self, PPU_IGNORED_SIZE!(), reader) && [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:479:37 [INFO] [stderr] | [INFO] [stderr] 479 | pub fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:65:28 [INFO] [stderr] | [INFO] [stderr] 65 | size_of::<&mut Screen>()) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Screen` [INFO] [stderr] ... [INFO] [stderr] 480 | save_prefix(self, PPU_IGNORED_SIZE!(), writer) && [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:32:37 [INFO] [stderr] | [INFO] [stderr] 32 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:36:33 [INFO] [stderr] | [INFO] [stderr] 36 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:65:37 [INFO] [stderr] | [INFO] [stderr] 65 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:69:33 [INFO] [stderr] | [INFO] [stderr] 69 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:202:37 [INFO] [stderr] | [INFO] [stderr] 202 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:206:33 [INFO] [stderr] | [INFO] [stderr] 206 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:365:37 [INFO] [stderr] | [INFO] [stderr] 365 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:369:33 [INFO] [stderr] | [INFO] [stderr] 369 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:479:37 [INFO] [stderr] | [INFO] [stderr] 479 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:483:33 [INFO] [stderr] | [INFO] [stderr] 483 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:597:37 [INFO] [stderr] | [INFO] [stderr] 597 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:601:33 [INFO] [stderr] | [INFO] [stderr] 601 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:720:19 [INFO] [stderr] | [INFO] [stderr] 720 | spkr: &'a mut Speaker, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Speaker` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:738:30 [INFO] [stderr] | [INFO] [stderr] 738 | pub fn new(spkr: &'a mut Speaker) -> Self { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Speaker` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:755:41 [INFO] [stderr] | [INFO] [stderr] 755 | pub fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:734:20 [INFO] [stderr] | [INFO] [stderr] 734 | size_of::<&Speaker>()) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Speaker` [INFO] [stderr] ... [INFO] [stderr] 756 | load_prefix(self, APU_IGNORED_SIZE!(), reader) && [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:769:37 [INFO] [stderr] | [INFO] [stderr] 769 | pub fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/apu.rs:734:20 [INFO] [stderr] | [INFO] [stderr] 734 | size_of::<&Speaker>()) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Speaker` [INFO] [stderr] ... [INFO] [stderr] 770 | save_prefix(self, APU_IGNORED_SIZE!(), writer) && [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cartridge.rs:25:37 [INFO] [stderr] | [INFO] [stderr] 25 | fn load(&mut self, reader: &mut Read) -> bool; [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cartridge.rs:26:33 [INFO] [stderr] | [INFO] [stderr] 26 | fn save(&self, writer: &mut Write) -> bool; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cartridge.rs:27:42 [INFO] [stderr] | [INFO] [stderr] 27 | fn load_sram(&mut self, reader: &mut Read) -> bool; [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cartridge.rs:28:38 [INFO] [stderr] | [INFO] [stderr] 28 | fn save_sram(&self, writer: &mut Write) -> bool; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:9:28 [INFO] [stderr] | [INFO] [stderr] 9 | fn get_cart(&self) -> &Cartridge; [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Cartridge` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:10:40 [INFO] [stderr] | [INFO] [stderr] 10 | fn get_cart_mut(&mut self) -> &mut Cartridge; [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Cartridge` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:12:37 [INFO] [stderr] | [INFO] [stderr] 12 | fn load(&mut self, reader: &mut Read) -> bool; [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:13:33 [INFO] [stderr] | [INFO] [stderr] 13 | fn save(&self, writer: &mut Write) -> bool; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:17:32 [INFO] [stderr] | [INFO] [stderr] 17 | mapper: UnsafeCell<&'a mut Mapper> [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:21:32 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn new(mapper: &'a mut Mapper) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:26:38 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn get_mut(&self) -> &'a mut Mapper { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:32:27 [INFO] [stderr] | [INFO] [stderr] 32 | type Target = &'a mut Mapper; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:34:33 [INFO] [stderr] | [INFO] [stderr] 34 | fn deref(&self) -> &&'a mut Mapper { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:181:28 [INFO] [stderr] | [INFO] [stderr] 181 | fn get_cart(&self) -> &Cartridge {&self.cart} [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Cartridge` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:182:40 [INFO] [stderr] | [INFO] [stderr] 182 | fn get_cart_mut(&mut self) -> &mut Cartridge {&mut self.cart} [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Cartridge` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:184:37 [INFO] [stderr] | [INFO] [stderr] 184 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:200:33 [INFO] [stderr] | [INFO] [stderr] 200 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:288:28 [INFO] [stderr] | [INFO] [stderr] 288 | fn get_cart(&self) -> &Cartridge {&self.cart} [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Cartridge` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:289:40 [INFO] [stderr] | [INFO] [stderr] 289 | fn get_cart_mut(&mut self) -> &mut Cartridge {&mut self.cart} [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Cartridge` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:291:37 [INFO] [stderr] | [INFO] [stderr] 291 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:303:33 [INFO] [stderr] | [INFO] [stderr] 303 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:508:28 [INFO] [stderr] | [INFO] [stderr] 508 | fn get_cart(&self) -> &Cartridge {&self.cart} [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Cartridge` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:509:40 [INFO] [stderr] | [INFO] [stderr] 509 | fn get_cart_mut(&mut self) -> &mut Cartridge {&mut self.cart} [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Cartridge` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:532:37 [INFO] [stderr] | [INFO] [stderr] 532 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:553:33 [INFO] [stderr] | [INFO] [stderr] 553 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controller.rs:7:37 [INFO] [stderr] | [INFO] [stderr] 7 | fn load(&mut self, reader: &mut Read) -> bool; [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controller.rs:8:33 [INFO] [stderr] | [INFO] [stderr] 8 | fn save(&self, writer: &mut Write) -> bool; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controller.rs:33:21 [INFO] [stderr] | [INFO] [stderr] 33 | poller: &'a InputPoller, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn InputPoller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controller.rs:37:32 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new(poller: &'a InputPoller) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn InputPoller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controller.rs:65:41 [INFO] [stderr] | [INFO] [stderr] 65 | fn load(&mut self, reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controller.rs:69:37 [INFO] [stderr] | [INFO] [stderr] 69 | fn save(&self, writer: &mut Write) -> bool { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/cartridge.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | #[inline(always)] fn get_mirror_type(&self) -> MirrorType; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/cartridge.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | #[inline(always)] fn set_mirror_type(&mut self, mt: MirrorType); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:91:36 [INFO] [stderr] | [INFO] [stderr] 91 | prg_banks: core::mem::uninitialized(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:92:36 [INFO] [stderr] | [INFO] [stderr] 92 | chr_banks: core::mem::uninitialized(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:93:31 [INFO] [stderr] | [INFO] [stderr] 93 | sram: core::mem::uninitialized()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:270:36 [INFO] [stderr] | [INFO] [stderr] 270 | prg_banks: core::mem::uninitialized(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:271:35 [INFO] [stderr] | [INFO] [stderr] 271 | chr_bank: core::mem::uninitialized(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:272:31 [INFO] [stderr] | [INFO] [stderr] 272 | sram: core::mem::uninitialized()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:477:28 [INFO] [stderr] | [INFO] [stderr] 477 | prg_banks: core::mem::uninitialized(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:478:28 [INFO] [stderr] | [INFO] [stderr] 478 | chr_banks: core::mem::uninitialized(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/mapper.rs:479:23 [INFO] [stderr] | [INFO] [stderr] 479 | sram: core::mem::uninitialized(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0606]: casting `f32` as `i32` is invalid [INFO] [stderr] --> src/apu.rs:14:24 [INFO] [stderr] | [INFO] [stderr] 14 | const LP_FACTOR: i32 = (0.815686 * AUDIO_LEVEL_MAX as f32) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0606]: casting `f32` as `i32` is invalid [INFO] [stderr] --> src/apu.rs:15:25 [INFO] [stderr] | [INFO] [stderr] 15 | const HP_FACTOR1: i32 = (0.996039 * AUDIO_LEVEL_MAX as f32) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0606]: casting `f32` as `i32` is invalid [INFO] [stderr] --> src/apu.rs:16:25 [INFO] [stderr] | [INFO] [stderr] 16 | const HP_FACTOR2: i32 = (0.999835 * AUDIO_LEVEL_MAX as f32) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors; 86 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0606`. [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] error: could not compile `runes`. [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] [stderr] error: build failed [INFO] running `"docker" "inspect" "90bb1bbc8e2dda1d017a8b2db6a4283aef54b762ad24099087cb743836010eef"` [INFO] running `"docker" "rm" "-f" "90bb1bbc8e2dda1d017a8b2db6a4283aef54b762ad24099087cb743836010eef"` [INFO] [stdout] 90bb1bbc8e2dda1d017a8b2db6a4283aef54b762ad24099087cb743836010eef