[INFO] updating cached repository https://github.com/kyren/rsgb [INFO] running `Command { std: "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", kill_on_drop: false }` [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 265788bae175ca52fbfdba1c8ca6b8cb48db044f [INFO] testing kyren/rsgb against master#8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e for pr-74409 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkyren%2Frsgb" "/workspace/builds/worker-6/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/kyren/rsgb on toolchain 8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/kyren/rsgb [INFO] finished tweaking git repo https://github.com/kyren/rsgb [INFO] tweaked toml for git repo https://github.com/kyren/rsgb written to /workspace/builds/worker-6/source/Cargo.toml [INFO] crate git repo https://github.com/kyren/rsgb already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cbe374556c20c3305d9cdcaeccdf9c285e47adc7f543078347682374a00ece43 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "cbe374556c20c3305d9cdcaeccdf9c285e47adc7f543078347682374a00ece43", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cbe374556c20c3305d9cdcaeccdf9c285e47adc7f543078347682374a00ece43", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cbe374556c20c3305d9cdcaeccdf9c285e47adc7f543078347682374a00ece43", kill_on_drop: false }` [INFO] [stdout] cbe374556c20c3305d9cdcaeccdf9c285e47adc7f543078347682374a00ece43 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d7f7bb6af84a78e626e2867e9977035be850c7302689f3ab83de343422c8f93b [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "d7f7bb6af84a78e626e2867e9977035be850c7302689f3ab83de343422c8f93b", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.21 [INFO] [stderr] Compiling num-traits v0.1.37 [INFO] [stderr] Compiling rayon-core v1.0.0 [INFO] [stderr] Compiling lazy_static v0.2.8 [INFO] [stderr] Compiling byteorder v1.0.0 [INFO] [stderr] Compiling adler32 v1.0.0 [INFO] [stderr] Compiling color_quant v1.0.0 [INFO] [stderr] Compiling lzw v0.10.0 [INFO] [stderr] Compiling inflate v0.1.1 [INFO] [stderr] Compiling bitflags v0.7.0 [INFO] [stderr] Compiling scoped_threadpool v0.1.7 [INFO] [stderr] Compiling deflate v0.7.6 [INFO] [stderr] Compiling gif v0.9.1 [INFO] [stderr] Compiling rand v0.3.15 [INFO] [stderr] Compiling num_cpus v1.3.0 [INFO] [stderr] Compiling num-integer v0.1.34 [INFO] [stderr] Compiling enum_primitive v0.1.1 [INFO] [stderr] Compiling num-iter v0.1.33 [INFO] [stderr] Compiling num-rational v0.1.36 [INFO] [stderr] Compiling deque v0.3.1 [INFO] [stderr] Compiling png v0.6.2 [INFO] [stderr] Compiling rayon v0.7.0 [INFO] [stderr] Compiling jpeg-decoder v0.1.12 [INFO] [stderr] Compiling image v0.12.4 [INFO] [stderr] Compiling rsgb v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/util.rs:5:22 [INFO] [stdout] | [INFO] [stdout] 5 | pub type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:186:14 [INFO] [stdout] | [INFO] [stdout] 186 | 0...0x3fff => Ok(self.cartridge_rom_bank0[addr as usize]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:187:19 [INFO] [stdout] | [INFO] [stdout] 187 | 0x4000...0x7fff => Ok(self.cartridge_rom_bank1[addr as usize - 0x4000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:188:19 [INFO] [stdout] | [INFO] [stdout] 188 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:189:19 [INFO] [stdout] | [INFO] [stdout] 189 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:190:19 [INFO] [stdout] | [INFO] [stdout] 190 | 0xa000...0xbfff => Err(format!("Illegal read from cartridge ram bank {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:191:19 [INFO] [stdout] | [INFO] [stdout] 191 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:193:19 [INFO] [stdout] | [INFO] [stdout] 193 | 0xe000...0xfdff => self.get_memory(addr - 0x2000), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:194:19 [INFO] [stdout] | [INFO] [stdout] 194 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:195:19 [INFO] [stdout] | [INFO] [stdout] 195 | 0xfea0...0xfeff => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:198:19 [INFO] [stdout] | [INFO] [stdout] 198 | 0xff00...0xff7f => Ok(0x0), // TODO: Implement hardware registers [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:199:19 [INFO] [stdout] | [INFO] [stdout] 199 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:209:14 [INFO] [stdout] | [INFO] [stdout] 209 | 0...0x3fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:210:19 [INFO] [stdout] | [INFO] [stdout] 210 | 0x4000...0x7fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:211:19 [INFO] [stdout] | [INFO] [stdout] 211 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:212:19 [INFO] [stdout] | [INFO] [stdout] 212 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:213:19 [INFO] [stdout] | [INFO] [stdout] 213 | 0xa000...0xbfff => Err(format!("Illegal write to cartridge ram bank {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:214:19 [INFO] [stdout] | [INFO] [stdout] 214 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:215:19 [INFO] [stdout] | [INFO] [stdout] 215 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:216:19 [INFO] [stdout] | [INFO] [stdout] 216 | 0xe000...0xfdff => self.set_memory(addr - 0x2000, n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:217:19 [INFO] [stdout] | [INFO] [stdout] 217 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:218:19 [INFO] [stdout] | [INFO] [stdout] 218 | 0xfea0...0xfeff => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:221:19 [INFO] [stdout] | [INFO] [stdout] 221 | 0xff00...0xff7f => Ok(()), // TODO: Implement hardware registers [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:222:19 [INFO] [stdout] | [INFO] [stdout] 222 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/decoding.rs:598:17 [INFO] [stdout] | [INFO] [stdout] 598 | b => Err(format!("Improper instruction byte {:x} following 0xcb", b).into()), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 26 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [optimized + debuginfo] target(s) in 1m 18s [INFO] running `Command { std: "docker" "inspect" "d7f7bb6af84a78e626e2867e9977035be850c7302689f3ab83de343422c8f93b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d7f7bb6af84a78e626e2867e9977035be850c7302689f3ab83de343422c8f93b", kill_on_drop: false }` [INFO] [stdout] d7f7bb6af84a78e626e2867e9977035be850c7302689f3ab83de343422c8f93b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] ec47b34c0e6d3653f0aea7c404f4b733e37b484b2eef6a8cb85dbca53c2f9d99 [INFO] running `Command { std: "docker" "start" "-a" "ec47b34c0e6d3653f0aea7c404f4b733e37b484b2eef6a8cb85dbca53c2f9d99", kill_on_drop: false }` [INFO] [stderr] Compiling rsgb v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/util.rs:5:22 [INFO] [stdout] | [INFO] [stdout] 5 | pub type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:186:14 [INFO] [stdout] | [INFO] [stdout] 186 | 0...0x3fff => Ok(self.cartridge_rom_bank0[addr as usize]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:187:19 [INFO] [stdout] | [INFO] [stdout] 187 | 0x4000...0x7fff => Ok(self.cartridge_rom_bank1[addr as usize - 0x4000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:188:19 [INFO] [stdout] | [INFO] [stdout] 188 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:189:19 [INFO] [stdout] | [INFO] [stdout] 189 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:190:19 [INFO] [stdout] | [INFO] [stdout] 190 | 0xa000...0xbfff => Err(format!("Illegal read from cartridge ram bank {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:191:19 [INFO] [stdout] | [INFO] [stdout] 191 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:193:19 [INFO] [stdout] | [INFO] [stdout] 193 | 0xe000...0xfdff => self.get_memory(addr - 0x2000), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:194:19 [INFO] [stdout] | [INFO] [stdout] 194 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:195:19 [INFO] [stdout] | [INFO] [stdout] 195 | 0xfea0...0xfeff => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:198:19 [INFO] [stdout] | [INFO] [stdout] 198 | 0xff00...0xff7f => Ok(0x0), // TODO: Implement hardware registers [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:199:19 [INFO] [stdout] | [INFO] [stdout] 199 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:209:14 [INFO] [stdout] | [INFO] [stdout] 209 | 0...0x3fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:210:19 [INFO] [stdout] | [INFO] [stdout] 210 | 0x4000...0x7fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:211:19 [INFO] [stdout] | [INFO] [stdout] 211 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:212:19 [INFO] [stdout] | [INFO] [stdout] 212 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:213:19 [INFO] [stdout] | [INFO] [stdout] 213 | 0xa000...0xbfff => Err(format!("Illegal write to cartridge ram bank {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:214:19 [INFO] [stdout] | [INFO] [stdout] 214 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:215:19 [INFO] [stdout] | [INFO] [stdout] 215 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:216:19 [INFO] [stdout] | [INFO] [stdout] 216 | 0xe000...0xfdff => self.set_memory(addr - 0x2000, n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:217:19 [INFO] [stdout] | [INFO] [stdout] 217 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:218:19 [INFO] [stdout] | [INFO] [stdout] 218 | 0xfea0...0xfeff => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:221:19 [INFO] [stdout] | [INFO] [stdout] 221 | 0xff00...0xff7f => Ok(()), // TODO: Implement hardware registers [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:222:19 [INFO] [stdout] | [INFO] [stdout] 222 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/decoding.rs:598:17 [INFO] [stdout] | [INFO] [stdout] 598 | b => Err(format!("Improper instruction byte {:x} following 0xcb", b).into()), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 26 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/util.rs:5:22 [INFO] [stdout] | [INFO] [stdout] 5 | pub type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:186:14 [INFO] [stdout] | [INFO] [stdout] 186 | 0...0x3fff => Ok(self.cartridge_rom_bank0[addr as usize]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:187:19 [INFO] [stdout] | [INFO] [stdout] 187 | 0x4000...0x7fff => Ok(self.cartridge_rom_bank1[addr as usize - 0x4000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:188:19 [INFO] [stdout] | [INFO] [stdout] 188 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:189:19 [INFO] [stdout] | [INFO] [stdout] 189 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:190:19 [INFO] [stdout] | [INFO] [stdout] 190 | 0xa000...0xbfff => Err(format!("Illegal read from cartridge ram bank {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:191:19 [INFO] [stdout] | [INFO] [stdout] 191 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:193:19 [INFO] [stdout] | [INFO] [stdout] 193 | 0xe000...0xfdff => self.get_memory(addr - 0x2000), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:194:19 [INFO] [stdout] | [INFO] [stdout] 194 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:195:19 [INFO] [stdout] | [INFO] [stdout] 195 | 0xfea0...0xfeff => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:198:19 [INFO] [stdout] | [INFO] [stdout] 198 | 0xff00...0xff7f => Ok(0x0), // TODO: Implement hardware registers [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:199:19 [INFO] [stdout] | [INFO] [stdout] 199 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:209:14 [INFO] [stdout] | [INFO] [stdout] 209 | 0...0x3fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:210:19 [INFO] [stdout] | [INFO] [stdout] 210 | 0x4000...0x7fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:211:19 [INFO] [stdout] | [INFO] [stdout] 211 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:212:19 [INFO] [stdout] | [INFO] [stdout] 212 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:213:19 [INFO] [stdout] | [INFO] [stdout] 213 | 0xa000...0xbfff => Err(format!("Illegal write to cartridge ram bank {}", addr).into()), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:214:19 [INFO] [stdout] | [INFO] [stdout] 214 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:215:19 [INFO] [stdout] | [INFO] [stdout] 215 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:216:19 [INFO] [stdout] | [INFO] [stdout] 216 | 0xe000...0xfdff => self.set_memory(addr - 0x2000, n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:217:19 [INFO] [stdout] | [INFO] [stdout] 217 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:218:19 [INFO] [stdout] | [INFO] [stdout] 218 | 0xfea0...0xfeff => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:221:19 [INFO] [stdout] | [INFO] [stdout] 221 | 0xff00...0xff7f => Ok(()), // TODO: Implement hardware registers [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/emulator.rs:222:19 [INFO] [stdout] | [INFO] [stdout] 222 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80] = n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/decoding.rs:598:17 [INFO] [stdout] | [INFO] [stdout] 598 | b => Err(format!("Improper instruction byte {:x} following 0xcb", b).into()), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 26 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [optimized + debuginfo] target(s) in 1.71s [INFO] running `Command { std: "docker" "inspect" "ec47b34c0e6d3653f0aea7c404f4b733e37b484b2eef6a8cb85dbca53c2f9d99", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ec47b34c0e6d3653f0aea7c404f4b733e37b484b2eef6a8cb85dbca53c2f9d99", kill_on_drop: false }` [INFO] [stdout] ec47b34c0e6d3653f0aea7c404f4b733e37b484b2eef6a8cb85dbca53c2f9d99 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c3191b0a4899042bc9647458e44c8588005b716fe6f81c7157ea3bf9c2e0169d [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "c3191b0a4899042bc9647458e44c8588005b716fe6f81c7157ea3bf9c2e0169d", kill_on_drop: false }` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/util.rs:5:22 [INFO] [stderr] | [INFO] [stderr] 5 | pub type Error = Box; [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:186:14 [INFO] [stderr] | [INFO] [stderr] 186 | 0...0x3fff => Ok(self.cartridge_rom_bank0[addr as usize]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:187:19 [INFO] [stderr] | [INFO] [stderr] 187 | 0x4000...0x7fff => Ok(self.cartridge_rom_bank1[addr as usize - 0x4000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:188:19 [INFO] [stderr] | [INFO] [stderr] 188 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:189:19 [INFO] [stderr] | [INFO] [stderr] 189 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:190:19 [INFO] [stderr] | [INFO] [stderr] 190 | 0xa000...0xbfff => Err(format!("Illegal read from cartridge ram bank {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:191:19 [INFO] [stderr] | [INFO] [stderr] 191 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:192:19 [INFO] [stderr] | [INFO] [stderr] 192 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:193:19 [INFO] [stderr] | [INFO] [stderr] 193 | 0xe000...0xfdff => self.get_memory(addr - 0x2000), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:194:19 [INFO] [stderr] | [INFO] [stderr] 194 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:195:19 [INFO] [stderr] | [INFO] [stderr] 195 | 0xfea0...0xfeff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:198:19 [INFO] [stderr] | [INFO] [stderr] 198 | 0xff00...0xff7f => Ok(0x0), // TODO: Implement hardware registers [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:199:19 [INFO] [stderr] | [INFO] [stderr] 199 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:209:14 [INFO] [stderr] | [INFO] [stderr] 209 | 0...0x3fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:210:19 [INFO] [stderr] | [INFO] [stderr] 210 | 0x4000...0x7fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:211:19 [INFO] [stderr] | [INFO] [stderr] 211 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:212:19 [INFO] [stderr] | [INFO] [stderr] 212 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:213:19 [INFO] [stderr] | [INFO] [stderr] 213 | 0xa000...0xbfff => Err(format!("Illegal write to cartridge ram bank {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:214:19 [INFO] [stderr] | [INFO] [stderr] 214 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:215:19 [INFO] [stderr] | [INFO] [stderr] 215 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:216:19 [INFO] [stderr] | [INFO] [stderr] 216 | 0xe000...0xfdff => self.set_memory(addr - 0x2000, n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:217:19 [INFO] [stderr] | [INFO] [stderr] 217 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:218:19 [INFO] [stderr] | [INFO] [stderr] 218 | 0xfea0...0xfeff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:221:19 [INFO] [stderr] | [INFO] [stderr] 221 | 0xff00...0xff7f => Ok(()), // TODO: Implement hardware registers [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:222:19 [INFO] [stderr] | [INFO] [stderr] 222 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/decoding.rs:598:17 [INFO] [stderr] | [INFO] [stderr] 598 | b => Err(format!("Improper instruction byte {:x} following 0xcb", b).into()), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/util.rs:5:22 [INFO] [stderr] | [INFO] [stderr] 5 | pub type Error = Box; [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:186:14 [INFO] [stderr] | [INFO] [stderr] 186 | 0...0x3fff => Ok(self.cartridge_rom_bank0[addr as usize]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:187:19 [INFO] [stderr] | [INFO] [stderr] 187 | 0x4000...0x7fff => Ok(self.cartridge_rom_bank1[addr as usize - 0x4000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:188:19 [INFO] [stderr] | [INFO] [stderr] 188 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:189:19 [INFO] [stderr] | [INFO] [stderr] 189 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:190:19 [INFO] [stderr] | [INFO] [stderr] 190 | 0xa000...0xbfff => Err(format!("Illegal read from cartridge ram bank {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:191:19 [INFO] [stderr] | [INFO] [stderr] 191 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:192:19 [INFO] [stderr] | [INFO] [stderr] 192 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:193:19 [INFO] [stderr] | [INFO] [stderr] 193 | 0xe000...0xfdff => self.get_memory(addr - 0x2000), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:194:19 [INFO] [stderr] | [INFO] [stderr] 194 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:195:19 [INFO] [stderr] | [INFO] [stderr] 195 | 0xfea0...0xfeff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:198:19 [INFO] [stderr] | [INFO] [stderr] 198 | 0xff00...0xff7f => Ok(0x0), // TODO: Implement hardware registers [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:199:19 [INFO] [stderr] | [INFO] [stderr] 199 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:209:14 [INFO] [stderr] | [INFO] [stderr] 209 | 0...0x3fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:210:19 [INFO] [stderr] | [INFO] [stderr] 210 | 0x4000...0x7fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:211:19 [INFO] [stderr] | [INFO] [stderr] 211 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:212:19 [INFO] [stderr] | [INFO] [stderr] 212 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:213:19 [INFO] [stderr] | [INFO] [stderr] 213 | 0xa000...0xbfff => Err(format!("Illegal write to cartridge ram bank {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:214:19 [INFO] [stderr] | [INFO] [stderr] 214 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:215:19 [INFO] [stderr] | [INFO] [stderr] 215 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:216:19 [INFO] [stderr] | [INFO] [stderr] 216 | 0xe000...0xfdff => self.set_memory(addr - 0x2000, n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:217:19 [INFO] [stderr] | [INFO] [stderr] 217 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:218:19 [INFO] [stderr] | [INFO] [stderr] 218 | 0xfea0...0xfeff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:221:19 [INFO] [stderr] | [INFO] [stderr] 221 | 0xff00...0xff7f => Ok(()), // TODO: Implement hardware registers [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/emulator.rs:222:19 [INFO] [stderr] | [INFO] [stderr] 222 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/decoding.rs:598:17 [INFO] [stderr] | [INFO] [stderr] 598 | b => Err(format!("Improper instruction byte {:x} following 0xcb", b).into()), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [optimized + debuginfo] target(s) in 0.16s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/rsgb-3c808a890c481c69 [INFO] [stderr] Running /opt/rustwide/target/debug/deps/test_rom-a868e982d34823fa [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests rsgb [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:186:14 [INFO] [stderr] | [INFO] [stderr] 186 | 0...0x3fff => Ok(self.cartridge_rom_bank0[addr as usize]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:187:19 [INFO] [stderr] | [INFO] [stderr] 187 | 0x4000...0x7fff => Ok(self.cartridge_rom_bank1[addr as usize - 0x4000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:188:19 [INFO] [stderr] | [INFO] [stderr] 188 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:189:19 [INFO] [stderr] | [INFO] [stderr] 189 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:190:19 [INFO] [stderr] | [INFO] [stderr] 190 | 0xa000...0xbfff => Err(format!("Illegal read from cartridge ram bank {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:191:19 [INFO] [stderr] | [INFO] [stderr] 191 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:192:19 [INFO] [stderr] | [INFO] [stderr] 192 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:193:19 [INFO] [stderr] | [INFO] [stderr] 193 | 0xe000...0xfdff => self.get_memory(addr - 0x2000), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:194:19 [INFO] [stderr] | [INFO] [stderr] 194 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:195:19 [INFO] [stderr] | [INFO] [stderr] 195 | 0xfea0...0xfeff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:198:19 [INFO] [stderr] | [INFO] [stderr] 198 | 0xff00...0xff7f => Ok(0x0), // TODO: Implement hardware registers [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:199:19 [INFO] [stderr] | [INFO] [stderr] 199 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80]), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:209:14 [INFO] [stderr] | [INFO] [stderr] 209 | 0...0x3fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:210:19 [INFO] [stderr] | [INFO] [stderr] 210 | 0x4000...0x7fff => Err(format!("Illegal write to cartridge rom {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:211:19 [INFO] [stderr] | [INFO] [stderr] 211 | 0x8000...0x97ff => Ok(self.character_ram[addr as usize - 0x8000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:212:19 [INFO] [stderr] | [INFO] [stderr] 212 | 0x9800...0x9fff => Ok(self.bg_map_data[addr as usize - 0x9800] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:213:19 [INFO] [stderr] | [INFO] [stderr] 213 | 0xa000...0xbfff => Err(format!("Illegal write to cartridge ram bank {}", addr).into()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:214:19 [INFO] [stderr] | [INFO] [stderr] 214 | 0xc000...0xcfff => Ok(self.internal_ram_bank0[addr as usize - 0xc000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:215:19 [INFO] [stderr] | [INFO] [stderr] 215 | 0xd000...0xdfff => Ok(self.internal_ram_bank1[addr as usize - 0xd000] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:216:19 [INFO] [stderr] | [INFO] [stderr] 216 | 0xe000...0xfdff => self.set_memory(addr - 0x2000, n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:217:19 [INFO] [stderr] | [INFO] [stderr] 217 | 0xfe00...0xfe99 => Ok(self.sprite_attribute_data[addr as usize - 0xfe00] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:218:19 [INFO] [stderr] | [INFO] [stderr] 218 | 0xfea0...0xfeff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:221:19 [INFO] [stderr] | [INFO] [stderr] 221 | 0xff00...0xff7f => Ok(()), // TODO: Implement hardware registers [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/emulator.rs:222:19 [INFO] [stderr] | [INFO] [stderr] 222 | 0xff80...0xfffe => Ok(self.zero_page[addr as usize - 0xff80] = n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: 24 warnings emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c3191b0a4899042bc9647458e44c8588005b716fe6f81c7157ea3bf9c2e0169d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3191b0a4899042bc9647458e44c8588005b716fe6f81c7157ea3bf9c2e0169d", kill_on_drop: false }` [INFO] [stdout] c3191b0a4899042bc9647458e44c8588005b716fe6f81c7157ea3bf9c2e0169d