[INFO] cloning repository MichaelBurge/nes-emulator [INFO] running `"git" "clone" "--bare" "git://github.com/MichaelBurge/nes-emulator.git" "work/cache/sources/gh/MichaelBurge/nes-emulator"` [INFO] [stderr] Cloning into bare repository 'work/cache/sources/gh/MichaelBurge/nes-emulator'... [INFO] running `"git" "clone" "work/cache/sources/gh/MichaelBurge/nes-emulator" "work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/gh/MichaelBurge/nes-emulator"` [INFO] [stderr] Cloning into 'work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/gh/MichaelBurge/nes-emulator'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/MichaelBurge/nes-emulator" "work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/MichaelBurge/nes-emulator"` [INFO] [stderr] Cloning into 'work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/MichaelBurge/nes-emulator'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] c0d47f0a7285c4305c5f578b87fb90103cfdb5e8 [INFO] sha for GitHub repo MichaelBurge/nes-emulator: c0d47f0a7285c4305c5f578b87fb90103cfdb5e8 [INFO] validating manifest of MichaelBurge/nes-emulator on toolchain master#c8865d8e195813ade6b84434ac9f8850e7112d1a [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c8865d8e195813ade6b84434ac9f8850e7112d1a-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of MichaelBurge/nes-emulator on toolchain try#e212b7d492c96d3837691ba29d32d5f468933fb8 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing MichaelBurge/nes-emulator [INFO] finished frobbing MichaelBurge/nes-emulator [INFO] frobbed toml for MichaelBurge/nes-emulator written to work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/gh/MichaelBurge/nes-emulator/Cargo.toml [INFO] started frobbing MichaelBurge/nes-emulator [INFO] finished frobbing MichaelBurge/nes-emulator [INFO] frobbed toml for MichaelBurge/nes-emulator written to work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/MichaelBurge/nes-emulator/Cargo.toml [INFO] crate MichaelBurge/nes-emulator already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c8865d8e195813ade6b84434ac9f8850e7112d1a-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing MichaelBurge/nes-emulator against master#c8865d8e195813ade6b84434ac9f8850e7112d1a for pr-61629 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-61629/worker-3/master#c8865d8e195813ade6b84434ac9f8850e7112d1a:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/gh/MichaelBurge/nes-emulator:/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=forbid" "-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" "+c8865d8e195813ade6b84434ac9f8850e7112d1a-alt" "build" "--frozen"` [INFO] [stdout] 038f2036f834b719bc4cfc7a4ea5d1fd631c4f0065a832390b276be92c97a50e [INFO] running `"docker" "start" "-a" "038f2036f834b719bc4cfc7a4ea5d1fd631c4f0065a832390b276be92c97a50e"` [INFO] [stderr] Compiling sdl2-sys v0.32.5 [INFO] [stderr] Compiling sdl2 v0.32.1 [INFO] [stderr] Compiling nes-emulator v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/common.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn run_clocks(x: &mut Clocked, num_clocks: u32) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Clocked` [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/c6502.rs:39:21 [INFO] [stderr] | [INFO] [stderr] 39 | pub mapper: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:66:33 [INFO] [stderr] | [INFO] [stderr] 66 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:87:28 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn new(mapper: Box) -> C6502 { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:87:29 [INFO] [stderr] | [INFO] [stderr] 87 | fn save(&self, fh: &mut Write) { [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:124:33 [INFO] [stderr] | [INFO] [stderr] 124 | fn load(&mut self, fh: &mut Read) { [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:189:29 [INFO] [stderr] | [INFO] [stderr] 189 | fn save(&self, fh: &mut Write) { [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:205:33 [INFO] [stderr] | [INFO] [stderr] 205 | fn load(&mut self, fh: &mut Read) { [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:458:29 [INFO] [stderr] | [INFO] [stderr] 458 | fn save(&self, fh: &mut Write) { [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:462:33 [INFO] [stderr] | [INFO] [stderr] 462 | fn load(&mut self, fh: &mut Read) { [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:555:28 [INFO] [stderr] | [INFO] [stderr] 555 | fn save(&self, fh:&mut Write) { [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:558:32 [INFO] [stderr] | [INFO] [stderr] 558 | fn load(&mut self, fh:&mut Read) { [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:134:29 [INFO] [stderr] | [INFO] [stderr] 134 | fn save(&self, fh: &mut Write) { [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:137:33 [INFO] [stderr] | [INFO] [stderr] 137 | fn load(&mut self, fh: &mut Read) { [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:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | fn save(&self, fh: &mut Write) { [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:51:33 [INFO] [stderr] | [INFO] [stderr] 51 | fn load(&mut self, fh: &mut Read) { [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:78:27 [INFO] [stderr] | [INFO] [stderr] 78 | fn save(&self, _:&mut Write) { } [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:79:31 [INFO] [stderr] | [INFO] [stderr] 79 | fn load(&mut self, _:&mut Read) { } [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:93:29 [INFO] [stderr] | [INFO] [stderr] 93 | fn save(&self, fh: &mut Write) { [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:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn load(&mut self, fh: &mut Read) { [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:138:29 [INFO] [stderr] | [INFO] [stderr] 138 | fn save(&self, fh: &mut Write) { [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:145:33 [INFO] [stderr] | [INFO] [stderr] 145 | fn load(&mut self, fh: &mut Read) { [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:172:30 [INFO] [stderr] | [INFO] [stderr] 172 | fn save(&self, _fh: &mut Write) {} [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:173:34 [INFO] [stderr] | [INFO] [stderr] 173 | fn load(&mut self, _fh: &mut Read) { } [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:29 [INFO] [stderr] | [INFO] [stderr] 200 | fn save(&self, fh: &mut Write) { [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:206:33 [INFO] [stderr] | [INFO] [stderr] 206 | fn load(&mut self, fh: &mut Read) { [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:219:29 [INFO] [stderr] | [INFO] [stderr] 219 | fn save(&self, fh: &mut Write) { [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:222:33 [INFO] [stderr] | [INFO] [stderr] 222 | fn load(&mut self, fh: &mut Read) { [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:20 [INFO] [stderr] | [INFO] [stderr] 303 | pub space: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:308:30 [INFO] [stderr] | [INFO] [stderr] 308 | fn save(&self, _fh: &mut Write) { panic!("save() unimplemented"); } [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:309:34 [INFO] [stderr] | [INFO] [stderr] 309 | fn load(&mut self, _fh: &mut Read) { panic!("load() unimplemented"); } [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:313:26 [INFO] [stderr] | [INFO] [stderr] 313 | pub fn new(space:Box) -> LoggedAddressSpace { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:34:28 [INFO] [stderr] | [INFO] [stderr] 34 | fn new(cpu_mapper: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:107:44 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn load_ines(rom: Ines, joystick1: Box, joystick2: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:107:74 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn load_ines(rom: Ines, joystick1: Box, joystick2: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:46 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:77 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:107 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:177:50 [INFO] [stderr] | [INFO] [stderr] 177 | fn map_nes_ppu(&mut self, cartridge_ppu: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:211:29 [INFO] [stderr] | [INFO] [stderr] 211 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:217:33 [INFO] [stderr] | [INFO] [stderr] 217 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:249:29 [INFO] [stderr] | [INFO] [stderr] 249 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:252:33 [INFO] [stderr] | [INFO] [stderr] 252 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/joystick.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/joystick.rs:23:33 [INFO] [stderr] | [INFO] [stderr] 23 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | fn save(&self, fh: &mut Write); [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:11:33 [INFO] [stderr] | [INFO] [stderr] 11 | fn load(&mut self, fh: &mut Read); [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:15:29 [INFO] [stderr] | [INFO] [stderr] 15 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:19:33 [INFO] [stderr] | [INFO] [stderr] 19 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:27:29 [INFO] [stderr] | [INFO] [stderr] 27 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:31:33 [INFO] [stderr] | [INFO] [stderr] 31 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:39:29 [INFO] [stderr] | [INFO] [stderr] 39 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:43:32 [INFO] [stderr] | [INFO] [stderr] 43 | fn load(&mut self, fh:&mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:53:29 [INFO] [stderr] | [INFO] [stderr] 53 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:62:33 [INFO] [stderr] | [INFO] [stderr] 62 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:74:29 [INFO] [stderr] | [INFO] [stderr] 74 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:87:33 [INFO] [stderr] | [INFO] [stderr] 87 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:103:29 [INFO] [stderr] | [INFO] [stderr] 103 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:106:33 [INFO] [stderr] | [INFO] [stderr] 106 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:114:29 [INFO] [stderr] | [INFO] [stderr] 114 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:121:33 [INFO] [stderr] | [INFO] [stderr] 121 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:131:29 [INFO] [stderr] | [INFO] [stderr] 131 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:138:33 [INFO] [stderr] | [INFO] [stderr] 138 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:151:50 [INFO] [stderr] | [INFO] [stderr] 151 | pub fn read_value(fh: &mut Read) -> T { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/serialization.rs:143:13 [INFO] [stderr] | [INFO] [stderr] 143 | for i in 0..len { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/common.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn run_clocks(x: &mut Clocked, num_clocks: u32) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Clocked` [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/c6502.rs:39:21 [INFO] [stderr] | [INFO] [stderr] 39 | pub mapper: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:66:33 [INFO] [stderr] | [INFO] [stderr] 66 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:87:28 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn new(mapper: Box) -> C6502 { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:87:29 [INFO] [stderr] | [INFO] [stderr] 87 | fn save(&self, fh: &mut Write) { [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:124:33 [INFO] [stderr] | [INFO] [stderr] 124 | fn load(&mut self, fh: &mut Read) { [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:189:29 [INFO] [stderr] | [INFO] [stderr] 189 | fn save(&self, fh: &mut Write) { [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:205:33 [INFO] [stderr] | [INFO] [stderr] 205 | fn load(&mut self, fh: &mut Read) { [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:458:29 [INFO] [stderr] | [INFO] [stderr] 458 | fn save(&self, fh: &mut Write) { [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:462:33 [INFO] [stderr] | [INFO] [stderr] 462 | fn load(&mut self, fh: &mut Read) { [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:555:28 [INFO] [stderr] | [INFO] [stderr] 555 | fn save(&self, fh:&mut Write) { [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:558:32 [INFO] [stderr] | [INFO] [stderr] 558 | fn load(&mut self, fh:&mut Read) { [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:134:29 [INFO] [stderr] | [INFO] [stderr] 134 | fn save(&self, fh: &mut Write) { [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:137:33 [INFO] [stderr] | [INFO] [stderr] 137 | fn load(&mut self, fh: &mut Read) { [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:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | fn save(&self, fh: &mut Write) { [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:51:33 [INFO] [stderr] | [INFO] [stderr] 51 | fn load(&mut self, fh: &mut Read) { [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:78:27 [INFO] [stderr] | [INFO] [stderr] 78 | fn save(&self, _:&mut Write) { } [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:79:31 [INFO] [stderr] | [INFO] [stderr] 79 | fn load(&mut self, _:&mut Read) { } [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:93:29 [INFO] [stderr] | [INFO] [stderr] 93 | fn save(&self, fh: &mut Write) { [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:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn load(&mut self, fh: &mut Read) { [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:138:29 [INFO] [stderr] | [INFO] [stderr] 138 | fn save(&self, fh: &mut Write) { [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:145:33 [INFO] [stderr] | [INFO] [stderr] 145 | fn load(&mut self, fh: &mut Read) { [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:172:30 [INFO] [stderr] | [INFO] [stderr] 172 | fn save(&self, _fh: &mut Write) {} [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:173:34 [INFO] [stderr] | [INFO] [stderr] 173 | fn load(&mut self, _fh: &mut Read) { } [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:29 [INFO] [stderr] | [INFO] [stderr] 200 | fn save(&self, fh: &mut Write) { [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:206:33 [INFO] [stderr] | [INFO] [stderr] 206 | fn load(&mut self, fh: &mut Read) { [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:219:29 [INFO] [stderr] | [INFO] [stderr] 219 | fn save(&self, fh: &mut Write) { [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:222:33 [INFO] [stderr] | [INFO] [stderr] 222 | fn load(&mut self, fh: &mut Read) { [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:20 [INFO] [stderr] | [INFO] [stderr] 303 | pub space: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:308:30 [INFO] [stderr] | [INFO] [stderr] 308 | fn save(&self, _fh: &mut Write) { panic!("save() unimplemented"); } [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:309:34 [INFO] [stderr] | [INFO] [stderr] 309 | fn load(&mut self, _fh: &mut Read) { panic!("load() unimplemented"); } [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:313:26 [INFO] [stderr] | [INFO] [stderr] 313 | pub fn new(space:Box) -> LoggedAddressSpace { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:34:28 [INFO] [stderr] | [INFO] [stderr] 34 | fn new(cpu_mapper: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:107:44 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn load_ines(rom: Ines, joystick1: Box, joystick2: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:107:74 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn load_ines(rom: Ines, joystick1: Box, joystick2: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:46 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:77 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:107 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:177:50 [INFO] [stderr] | [INFO] [stderr] 177 | fn map_nes_ppu(&mut self, cartridge_ppu: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:211:29 [INFO] [stderr] | [INFO] [stderr] 211 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:217:33 [INFO] [stderr] | [INFO] [stderr] 217 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:249:29 [INFO] [stderr] | [INFO] [stderr] 249 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:252:33 [INFO] [stderr] | [INFO] [stderr] 252 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/joystick.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/joystick.rs:23:33 [INFO] [stderr] | [INFO] [stderr] 23 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | fn save(&self, fh: &mut Write); [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:11:33 [INFO] [stderr] | [INFO] [stderr] 11 | fn load(&mut self, fh: &mut Read); [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:15:29 [INFO] [stderr] | [INFO] [stderr] 15 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:19:33 [INFO] [stderr] | [INFO] [stderr] 19 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:27:29 [INFO] [stderr] | [INFO] [stderr] 27 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:31:33 [INFO] [stderr] | [INFO] [stderr] 31 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:39:29 [INFO] [stderr] | [INFO] [stderr] 39 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:43:32 [INFO] [stderr] | [INFO] [stderr] 43 | fn load(&mut self, fh:&mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:53:29 [INFO] [stderr] | [INFO] [stderr] 53 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:62:33 [INFO] [stderr] | [INFO] [stderr] 62 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:74:29 [INFO] [stderr] | [INFO] [stderr] 74 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:87:33 [INFO] [stderr] | [INFO] [stderr] 87 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:103:29 [INFO] [stderr] | [INFO] [stderr] 103 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:106:33 [INFO] [stderr] | [INFO] [stderr] 106 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:114:29 [INFO] [stderr] | [INFO] [stderr] 114 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:121:33 [INFO] [stderr] | [INFO] [stderr] 121 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:131:29 [INFO] [stderr] | [INFO] [stderr] 131 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:138:33 [INFO] [stderr] | [INFO] [stderr] 138 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:151:50 [INFO] [stderr] | [INFO] [stderr] 151 | pub fn read_value(fh: &mut Read) -> T { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/headless.rs:44:16 [INFO] [stderr] | [INFO] [stderr] 44 | in_fh: Box, [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/headless.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | out_fh: Box, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/headless.rs:52:27 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn new(in_fh: Box, out_fh: Box) -> Headless { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/headless.rs:52:46 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn new(in_fh: Box, out_fh: Box) -> Headless { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/common.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn run_clocks(x: &mut Clocked, num_clocks: u32) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Clocked` [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/c6502.rs:39:21 [INFO] [stderr] | [INFO] [stderr] 39 | pub mapper: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:66:33 [INFO] [stderr] | [INFO] [stderr] 66 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:87:28 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn new(mapper: Box) -> C6502 { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:87:29 [INFO] [stderr] | [INFO] [stderr] 87 | fn save(&self, fh: &mut Write) { [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:124:33 [INFO] [stderr] | [INFO] [stderr] 124 | fn load(&mut self, fh: &mut Read) { [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:189:29 [INFO] [stderr] | [INFO] [stderr] 189 | fn save(&self, fh: &mut Write) { [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:205:33 [INFO] [stderr] | [INFO] [stderr] 205 | fn load(&mut self, fh: &mut Read) { [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:458:29 [INFO] [stderr] | [INFO] [stderr] 458 | fn save(&self, fh: &mut Write) { [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:462:33 [INFO] [stderr] | [INFO] [stderr] 462 | fn load(&mut self, fh: &mut Read) { [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:555:28 [INFO] [stderr] | [INFO] [stderr] 555 | fn save(&self, fh:&mut Write) { [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:558:32 [INFO] [stderr] | [INFO] [stderr] 558 | fn load(&mut self, fh:&mut Read) { [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:134:29 [INFO] [stderr] | [INFO] [stderr] 134 | fn save(&self, fh: &mut Write) { [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:137:33 [INFO] [stderr] | [INFO] [stderr] 137 | fn load(&mut self, fh: &mut Read) { [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:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | fn save(&self, fh: &mut Write) { [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:51:33 [INFO] [stderr] | [INFO] [stderr] 51 | fn load(&mut self, fh: &mut Read) { [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:78:27 [INFO] [stderr] | [INFO] [stderr] 78 | fn save(&self, _:&mut Write) { } [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:79:31 [INFO] [stderr] | [INFO] [stderr] 79 | fn load(&mut self, _:&mut Read) { } [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:93:29 [INFO] [stderr] | [INFO] [stderr] 93 | fn save(&self, fh: &mut Write) { [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:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn load(&mut self, fh: &mut Read) { [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:138:29 [INFO] [stderr] | [INFO] [stderr] 138 | fn save(&self, fh: &mut Write) { [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:145:33 [INFO] [stderr] | [INFO] [stderr] 145 | fn load(&mut self, fh: &mut Read) { [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:172:30 [INFO] [stderr] | [INFO] [stderr] 172 | fn save(&self, _fh: &mut Write) {} [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:173:34 [INFO] [stderr] | [INFO] [stderr] 173 | fn load(&mut self, _fh: &mut Read) { } [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:29 [INFO] [stderr] | [INFO] [stderr] 200 | fn save(&self, fh: &mut Write) { [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:206:33 [INFO] [stderr] | [INFO] [stderr] 206 | fn load(&mut self, fh: &mut Read) { [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:219:29 [INFO] [stderr] | [INFO] [stderr] 219 | fn save(&self, fh: &mut Write) { [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:222:33 [INFO] [stderr] | [INFO] [stderr] 222 | fn load(&mut self, fh: &mut Read) { [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:20 [INFO] [stderr] | [INFO] [stderr] 303 | pub space: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:308:30 [INFO] [stderr] | [INFO] [stderr] 308 | fn save(&self, _fh: &mut Write) { panic!("save() unimplemented"); } [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:309:34 [INFO] [stderr] | [INFO] [stderr] 309 | fn load(&mut self, _fh: &mut Read) { panic!("load() unimplemented"); } [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:313:26 [INFO] [stderr] | [INFO] [stderr] 313 | pub fn new(space:Box) -> LoggedAddressSpace { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:34:28 [INFO] [stderr] | [INFO] [stderr] 34 | fn new(cpu_mapper: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:107:44 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn load_ines(rom: Ines, joystick1: Box, joystick2: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:107:74 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn load_ines(rom: Ines, joystick1: Box, joystick2: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:46 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:77 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:107 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:177:50 [INFO] [stderr] | [INFO] [stderr] 177 | fn map_nes_ppu(&mut self, cartridge_ppu: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:211:29 [INFO] [stderr] | [INFO] [stderr] 211 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:217:33 [INFO] [stderr] | [INFO] [stderr] 217 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:249:29 [INFO] [stderr] | [INFO] [stderr] 249 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:252:33 [INFO] [stderr] | [INFO] [stderr] 252 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/joystick.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/joystick.rs:23:33 [INFO] [stderr] | [INFO] [stderr] 23 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | fn save(&self, fh: &mut Write); [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:11:33 [INFO] [stderr] | [INFO] [stderr] 11 | fn load(&mut self, fh: &mut Read); [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:15:29 [INFO] [stderr] | [INFO] [stderr] 15 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:19:33 [INFO] [stderr] | [INFO] [stderr] 19 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:27:29 [INFO] [stderr] | [INFO] [stderr] 27 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:31:33 [INFO] [stderr] | [INFO] [stderr] 31 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:39:29 [INFO] [stderr] | [INFO] [stderr] 39 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:43:32 [INFO] [stderr] | [INFO] [stderr] 43 | fn load(&mut self, fh:&mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:53:29 [INFO] [stderr] | [INFO] [stderr] 53 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:62:33 [INFO] [stderr] | [INFO] [stderr] 62 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:74:29 [INFO] [stderr] | [INFO] [stderr] 74 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:87:33 [INFO] [stderr] | [INFO] [stderr] 87 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:103:29 [INFO] [stderr] | [INFO] [stderr] 103 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:106:33 [INFO] [stderr] | [INFO] [stderr] 106 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:114:29 [INFO] [stderr] | [INFO] [stderr] 114 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:121:33 [INFO] [stderr] | [INFO] [stderr] 121 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:131:29 [INFO] [stderr] | [INFO] [stderr] 131 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:138:33 [INFO] [stderr] | [INFO] [stderr] 138 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:151:50 [INFO] [stderr] | [INFO] [stderr] 151 | pub fn read_value(fh: &mut Read) -> T { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:360:29 [INFO] [stderr] | [INFO] [stderr] 360 | fn create_nes(joystick1:Box, joystick2:Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:360:58 [INFO] [stderr] | [INFO] [stderr] 360 | fn create_nes(joystick1:Box, joystick2:Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/common.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn run_clocks(x: &mut Clocked, num_clocks: u32) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Clocked` [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/c6502.rs:39:21 [INFO] [stderr] | [INFO] [stderr] 39 | pub mapper: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:66:33 [INFO] [stderr] | [INFO] [stderr] 66 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/c6502.rs:87:28 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn new(mapper: Box) -> C6502 { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ppu.rs:87:29 [INFO] [stderr] | [INFO] [stderr] 87 | fn save(&self, fh: &mut Write) { [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:124:33 [INFO] [stderr] | [INFO] [stderr] 124 | fn load(&mut self, fh: &mut Read) { [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:189:29 [INFO] [stderr] | [INFO] [stderr] 189 | fn save(&self, fh: &mut Write) { [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:205:33 [INFO] [stderr] | [INFO] [stderr] 205 | fn load(&mut self, fh: &mut Read) { [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:458:29 [INFO] [stderr] | [INFO] [stderr] 458 | fn save(&self, fh: &mut Write) { [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:462:33 [INFO] [stderr] | [INFO] [stderr] 462 | fn load(&mut self, fh: &mut Read) { [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:555:28 [INFO] [stderr] | [INFO] [stderr] 555 | fn save(&self, fh:&mut Write) { [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:558:32 [INFO] [stderr] | [INFO] [stderr] 558 | fn load(&mut self, fh:&mut Read) { [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:134:29 [INFO] [stderr] | [INFO] [stderr] 134 | fn save(&self, fh: &mut Write) { [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:137:33 [INFO] [stderr] | [INFO] [stderr] 137 | fn load(&mut self, fh: &mut Read) { [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:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | fn save(&self, fh: &mut Write) { [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:51:33 [INFO] [stderr] | [INFO] [stderr] 51 | fn load(&mut self, fh: &mut Read) { [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:78:27 [INFO] [stderr] | [INFO] [stderr] 78 | fn save(&self, _:&mut Write) { } [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:79:31 [INFO] [stderr] | [INFO] [stderr] 79 | fn load(&mut self, _:&mut Read) { } [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:93:29 [INFO] [stderr] | [INFO] [stderr] 93 | fn save(&self, fh: &mut Write) { [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:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn load(&mut self, fh: &mut Read) { [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:138:29 [INFO] [stderr] | [INFO] [stderr] 138 | fn save(&self, fh: &mut Write) { [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:145:33 [INFO] [stderr] | [INFO] [stderr] 145 | fn load(&mut self, fh: &mut Read) { [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:172:30 [INFO] [stderr] | [INFO] [stderr] 172 | fn save(&self, _fh: &mut Write) {} [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:173:34 [INFO] [stderr] | [INFO] [stderr] 173 | fn load(&mut self, _fh: &mut Read) { } [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:29 [INFO] [stderr] | [INFO] [stderr] 200 | fn save(&self, fh: &mut Write) { [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:206:33 [INFO] [stderr] | [INFO] [stderr] 206 | fn load(&mut self, fh: &mut Read) { [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:219:29 [INFO] [stderr] | [INFO] [stderr] 219 | fn save(&self, fh: &mut Write) { [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:222:33 [INFO] [stderr] | [INFO] [stderr] 222 | fn load(&mut self, fh: &mut Read) { [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:20 [INFO] [stderr] | [INFO] [stderr] 303 | pub space: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mapper.rs:308:30 [INFO] [stderr] | [INFO] [stderr] 308 | fn save(&self, _fh: &mut Write) { panic!("save() unimplemented"); } [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:309:34 [INFO] [stderr] | [INFO] [stderr] 309 | fn load(&mut self, _fh: &mut Read) { panic!("load() unimplemented"); } [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:313:26 [INFO] [stderr] | [INFO] [stderr] 313 | pub fn new(space:Box) -> LoggedAddressSpace { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:34:28 [INFO] [stderr] | [INFO] [stderr] 34 | fn new(cpu_mapper: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:107:44 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn load_ines(rom: Ines, joystick1: Box, joystick2: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:107:74 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn load_ines(rom: Ines, joystick1: Box, joystick2: Box) -> Nes { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:46 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:77 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:156:107 [INFO] [stderr] | [INFO] [stderr] 156 | fn map_nes_cpu(&mut self, joystick1: Box, _joystick2: Box, cartridge: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:177:50 [INFO] [stderr] | [INFO] [stderr] 177 | fn map_nes_ppu(&mut self, cartridge_ppu: Box) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn AddressSpace` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:211:29 [INFO] [stderr] | [INFO] [stderr] 211 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:217:33 [INFO] [stderr] | [INFO] [stderr] 217 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:249:29 [INFO] [stderr] | [INFO] [stderr] 249 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/nes.rs:252:33 [INFO] [stderr] | [INFO] [stderr] 252 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/joystick.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/joystick.rs:23:33 [INFO] [stderr] | [INFO] [stderr] 23 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | fn save(&self, fh: &mut Write); [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:11:33 [INFO] [stderr] | [INFO] [stderr] 11 | fn load(&mut self, fh: &mut Read); [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:15:29 [INFO] [stderr] | [INFO] [stderr] 15 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:19:33 [INFO] [stderr] | [INFO] [stderr] 19 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:27:29 [INFO] [stderr] | [INFO] [stderr] 27 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:31:33 [INFO] [stderr] | [INFO] [stderr] 31 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:39:29 [INFO] [stderr] | [INFO] [stderr] 39 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:43:32 [INFO] [stderr] | [INFO] [stderr] 43 | fn load(&mut self, fh:&mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:53:29 [INFO] [stderr] | [INFO] [stderr] 53 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:62:33 [INFO] [stderr] | [INFO] [stderr] 62 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:74:29 [INFO] [stderr] | [INFO] [stderr] 74 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:87:33 [INFO] [stderr] | [INFO] [stderr] 87 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:103:29 [INFO] [stderr] | [INFO] [stderr] 103 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:106:33 [INFO] [stderr] | [INFO] [stderr] 106 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:114:29 [INFO] [stderr] | [INFO] [stderr] 114 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:121:33 [INFO] [stderr] | [INFO] [stderr] 121 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:131:29 [INFO] [stderr] | [INFO] [stderr] 131 | fn save(&self, fh: &mut Write) { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:138:33 [INFO] [stderr] | [INFO] [stderr] 138 | fn load(&mut self, fh: &mut Read) { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialization.rs:151:50 [INFO] [stderr] | [INFO] [stderr] 151 | pub fn read_value(fh: &mut Read) -> T { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `record_tas` [INFO] [stderr] --> src/headless.rs:91:17 [INFO] [stderr] | [INFO] [stderr] 91 | let mut record_tas = self.read_byte(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_record_tas` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/serialization.rs:143:13 [INFO] [stderr] | [INFO] [stderr] 143 | for i in 0..len { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/headless.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | let mut nes = None; [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/headless.rs:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | let mut record_tas = self.read_byte(); [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/serialization.rs:143:13 [INFO] [stderr] | [INFO] [stderr] 143 | for i in 0..len { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/serialization.rs:143:13 [INFO] [stderr] | [INFO] [stderr] 143 | for i in 0..len { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] error: linking with `cc` failed: exit code: 1 [INFO] [stderr] | [INFO] [stderr] = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.0.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.1.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.10.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.11.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.12.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.13.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.14.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.15.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.2.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.3.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.4.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.5.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.6.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.7.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.8.rcgu.o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.9.rcgu.o" "-o" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53" "/opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.5wla8edrw8tzarw.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "/opt/crater/target/debug/deps" "-L" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/crater/target/debug/deps/libsdl2-38ec9b12658e3db3.rlib" "/opt/crater/target/debug/deps/librand-f9db8e868ff21de3.rlib" "/opt/crater/target/debug/deps/librand_xorshift-d080cc8ec1ae59bd.rlib" "/opt/crater/target/debug/deps/librand_pcg-65d443689c99145f.rlib" "/opt/crater/target/debug/deps/librand_hc-69e1c68d172b69f5.rlib" "/opt/crater/target/debug/deps/librand_chacha-d360c231c282f625.rlib" "/opt/crater/target/debug/deps/librand_isaac-2264ac2807e16d27.rlib" "/opt/crater/target/debug/deps/librand_core-c3a3ab401d39eca6.rlib" "/opt/crater/target/debug/deps/librand_os-585d41c0ccb410b4.rlib" "/opt/crater/target/debug/deps/librand_jitter-c53bec14524ae7b8.rlib" "/opt/crater/target/debug/deps/librand_core-161e0a90fc629c56.rlib" "/opt/crater/target/debug/deps/libsdl2_sys-71a9f4a7e3b0df0a.rlib" "/opt/crater/target/debug/deps/libbitflags-7486021306c0f32a.rlib" "/opt/crater/target/debug/deps/liblazy_static-6b264ec86ae8595d.rlib" "/opt/crater/target/debug/deps/liblibc-86cf23b4bb24a03d.rlib" "/opt/crater/target/debug/deps/libnum-c4fc78eed60b4b37.rlib" "/opt/crater/target/debug/deps/libnum_iter-ff12e8054460057d.rlib" "/opt/crater/target/debug/deps/libnum_integer-fcee9245478e8a9a.rlib" "/opt/crater/target/debug/deps/libnum_traits-fd24e5c1ffb9b482.rlib" "-Wl,--start-group" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-5eb7072357e3f704.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-be57a0a20ef83edc.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-53ea5c4d1e8787c5.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-90a03fea645d1ca0.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-d0be8ec5eb12a622.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-c9bd1ed65ad5f9b5.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-232a620458cbc142.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-378c2daa95643520.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-b1ad0e3b0cafff9a.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-bd92551ef79ec0f7.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-6f92150ede6dcf89.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-5d5836de4a922af7.rlib" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-0bd990bd23dec0da.rlib" "-Wl,--end-group" "/opt/crater/rustup-home/toolchains/c8865d8e195813ade6b84434ac9f8850e7112d1a-alt/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-f5a50a9afbc6d167.rlib" "-Wl,-Bdynamic" "-lSDL2" "-lutil" "-lutil" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-lutil" [INFO] [stderr] = note: /opt/crater/target/debug/deps/nes_emulator-c21f10c33c56be53.nes_emulator.e1scdnfo-cgu.5.rcgu.o: In function `nes_emulator::main': [INFO] [stderr] /opt/crater/workdir/src/main.rs:168: undefined reference to `emscripten_set_main_loop' [INFO] [stderr] collect2: error: ld returned 1 exit status [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `nes-emulator`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "038f2036f834b719bc4cfc7a4ea5d1fd631c4f0065a832390b276be92c97a50e"` [INFO] running `"docker" "rm" "-f" "038f2036f834b719bc4cfc7a4ea5d1fd631c4f0065a832390b276be92c97a50e"` [INFO] [stdout] 038f2036f834b719bc4cfc7a4ea5d1fd631c4f0065a832390b276be92c97a50e