[INFO] cloning repository https://github.com/ducharmemp/RustBoyAdvance [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ducharmemp/RustBoyAdvance" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fducharmemp%2FRustBoyAdvance", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fducharmemp%2FRustBoyAdvance'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dc1039d369fa12d4009a518cf6cca35e16e71c53 [INFO] checking ducharmemp/RustBoyAdvance against master#a609fb45efad59dfd459c76e50899be9f0583b5a for pr-80579 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fducharmemp%2FRustBoyAdvance" "/workspace/builds/worker-4/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ducharmemp/RustBoyAdvance on toolchain a609fb45efad59dfd459c76e50899be9f0583b5a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ducharmemp/RustBoyAdvance [INFO] finished tweaking git repo https://github.com/ducharmemp/RustBoyAdvance [INFO] tweaked toml for git repo https://github.com/ducharmemp/RustBoyAdvance written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/ducharmemp/RustBoyAdvance already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9aaab612619af93b919910faef9840fef07d1f30677c8e045bc6df226ff3bcee [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" "9aaab612619af93b919910faef9840fef07d1f30677c8e045bc6df226ff3bcee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9aaab612619af93b919910faef9840fef07d1f30677c8e045bc6df226ff3bcee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9aaab612619af93b919910faef9840fef07d1f30677c8e045bc6df226ff3bcee", kill_on_drop: false }` [INFO] [stdout] 9aaab612619af93b919910faef9840fef07d1f30677c8e045bc6df226ff3bcee [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 45ebb66b420bce0e82684d064578756e87bc08608794274ce208608245c5925a [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" "45ebb66b420bce0e82684d064578756e87bc08608794274ce208608245c5925a", kill_on_drop: false }` [INFO] [stderr] Checking byteorder v0.4.2 [INFO] [stderr] Checking bit-vec v0.4.3 [INFO] [stderr] Checking rust_boy_advance v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `FIQ_DISABLE`, `IRQ_DISABLE`, `STATE_BIT` [INFO] [stdout] --> src/gameboy/cpu.rs:30:27 [INFO] [stdout] | [INFO] [stdout] 30 | use super::cpsr::{C_FLAG, FIQ_DISABLE, IRQ_DISABLE, N_FLAG, STATE_BIT, V_FLAG, Z_FLAG}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/gameboy/cpu.rs:991:14 [INFO] [stdout] | [INFO] [stdout] 991 | 0...7 => self.gen_registers[register_num as usize] = val as u32, [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/gameboy/cpu.rs:1014:14 [INFO] [stdout] | [INFO] [stdout] 1014 | 0...7 => self.gen_registers[register_num as usize], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/gameboy/cpu.rs:1033:14 [INFO] [stdout] | [INFO] [stdout] 1033 | 0...7 => self.gen_registers[register_num as usize] = val, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/gameboy/cpu.rs:1049:14 [INFO] [stdout] | [INFO] [stdout] 1049 | 0...7 => self.gen_registers[register_num as usize], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FIQ_DISABLE`, `IRQ_DISABLE`, `STATE_BIT` [INFO] [stdout] --> src/gameboy/cpu.rs:30:27 [INFO] [stdout] | [INFO] [stdout] 30 | use super::cpsr::{C_FLAG, FIQ_DISABLE, IRQ_DISABLE, N_FLAG, STATE_BIT, V_FLAG, Z_FLAG}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/gameboy/cpu.rs:991:14 [INFO] [stdout] | [INFO] [stdout] 991 | 0...7 => self.gen_registers[register_num as usize] = val as u32, [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/gameboy/cpu.rs:1014:14 [INFO] [stdout] | [INFO] [stdout] 1014 | 0...7 => self.gen_registers[register_num as usize], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/gameboy/cpu.rs:1033:14 [INFO] [stdout] | [INFO] [stdout] 1033 | 0...7 => self.gen_registers[register_num as usize] = val, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/gameboy/cpu.rs:1049:14 [INFO] [stdout] | [INFO] [stdout] 1049 | 0...7 => self.gen_registers[register_num as usize], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:373:41 [INFO] [stdout] | [INFO] [stdout] 373 | fn thumb_handle_movshift(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:404:36 [INFO] [stdout] | [INFO] [stdout] 404 | fn thumb_handle_mul(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `op` [INFO] [stdout] --> src/gameboy/cpu.rs:480:13 [INFO] [stdout] | [INFO] [stdout] 480 | let op = ((0x3 << 8) & instruction) >> 8; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_op` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h1` [INFO] [stdout] --> src/gameboy/cpu.rs:481:13 [INFO] [stdout] | [INFO] [stdout] 481 | let h1 = (0x1 << 7) & instruction != 0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_h1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h2` [INFO] [stdout] --> src/gameboy/cpu.rs:482:13 [INFO] [stdout] | [INFO] [stdout] 482 | let h2 = (0x1 << 6) & instruction != 0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_h2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rs` [INFO] [stdout] --> src/gameboy/cpu.rs:483:13 [INFO] [stdout] | [INFO] [stdout] 483 | let rs = ((0x7 << 3) & instruction) >> 3; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rd` [INFO] [stdout] --> src/gameboy/cpu.rs:484:13 [INFO] [stdout] | [INFO] [stdout] 484 | let rd = 0x7 & instruction; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:487:41 [INFO] [stdout] | [INFO] [stdout] 487 | fn thumb_handle_ldrpcimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:489:42 [INFO] [stdout] | [INFO] [stdout] 489 | fn thumb_handle_ldrstrreg(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:491:44 [INFO] [stdout] | [INFO] [stdout] 491 | fn thumb_handle_ldrhstrhreg(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:493:42 [INFO] [stdout] | [INFO] [stdout] 493 | fn thumb_handle_ldrstrimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:495:44 [INFO] [stdout] | [INFO] [stdout] 495 | fn thumb_handle_ldrhstrhimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:497:44 [INFO] [stdout] | [INFO] [stdout] 497 | fn thumb_handle_ldrstrspimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:499:40 [INFO] [stdout] | [INFO] [stdout] 499 | fn thumb_handle_addrimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:501:44 [INFO] [stdout] | [INFO] [stdout] 501 | fn thumb_handle_addspoffset(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:503:33 [INFO] [stdout] | [INFO] [stdout] 503 | fn thumb_pushpop(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:505:43 [INFO] [stdout] | [INFO] [stdout] 505 | fn thumb_handle_ldmstmregs(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:507:36 [INFO] [stdout] | [INFO] [stdout] 507 | fn thumb_handle_swi(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:509:47 [INFO] [stdout] | [INFO] [stdout] 509 | fn thumb_handle_branchcondoffs(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:511:43 [INFO] [stdout] | [INFO] [stdout] 511 | fn thumb_handle_branchoffs(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:513:47 [INFO] [stdout] | [INFO] [stdout] 513 | fn thumb_handle_branchlongoffs(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `accumulate` [INFO] [stdout] --> src/gameboy/cpu.rs:568:13 [INFO] [stdout] | [INFO] [stdout] 568 | let accumulate = ((1 << 21) & instruction) >> 21 != 0; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_accumulate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rm` [INFO] [stdout] --> src/gameboy/cpu.rs:615:13 [INFO] [stdout] | [INFO] [stdout] 615 | let rm = self.get_register_arm(0xf & instruction); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `second_operand` is never read [INFO] [stdout] --> src/gameboy/cpu.rs:675:13 [INFO] [stdout] | [INFO] [stdout] 675 | let mut second_operand: u32 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `psr_force_user` [INFO] [stdout] --> src/gameboy/cpu.rs:882:13 [INFO] [stdout] | [INFO] [stdout] 882 | let psr_force_user = (1 << 22) & instruction != 0; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_psr_force_user` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gameboy/mmu.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | let mut ram = vec![0; ram_size]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `IRQ_DISABLE` [INFO] [stdout] --> src/gameboy/cpsr.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub const IRQ_DISABLE: usize = 7; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `FIQ_DISABLE` [INFO] [stdout] --> src/gameboy/cpsr.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | pub const FIQ_DISABLE: usize = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `STATE_BIT` [INFO] [stdout] --> src/gameboy/cpsr.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | pub const STATE_BIT: usize = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `MODE_BITS` [INFO] [stdout] --> src/gameboy/cpsr.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | pub const MODE_BITS: u32 = 0xF; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bios_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:38:4 [INFO] [stdout] | [INFO] [stdout] 38 | fn bios_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wramb_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn wramb_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wramc_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn wramc_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `io_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn io_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `obj_pallet_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:52:4 [INFO] [stdout] | [INFO] [stdout] 52 | fn obj_pallet_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `vram_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:55:4 [INFO] [stdout] | [INFO] [stdout] 55 | fn vram_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `obj_attr_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:58:4 [INFO] [stdout] | [INFO] [stdout] 58 | fn obj_attr_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wait_0_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn wait_0_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wait_1_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn wait_1_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wait_2_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:69:4 [INFO] [stdout] | [INFO] [stdout] 69 | fn wait_2_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gp_sram_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn gp_sram_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `status` [INFO] [stdout] --> src/gameboy/cpu.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | status: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `write_16` [INFO] [stdout] --> src/gameboy/mmu.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn write_16(&mut self, address: u32, val: u16) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/gameboy/cpu.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | 0x00000000 <= x && x <= 0x00003FFF [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:373:41 [INFO] [stdout] | [INFO] [stdout] 373 | fn thumb_handle_movshift(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:404:36 [INFO] [stdout] | [INFO] [stdout] 404 | fn thumb_handle_mul(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `op` [INFO] [stdout] --> src/gameboy/cpu.rs:480:13 [INFO] [stdout] | [INFO] [stdout] 480 | let op = ((0x3 << 8) & instruction) >> 8; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_op` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h1` [INFO] [stdout] --> src/gameboy/cpu.rs:481:13 [INFO] [stdout] | [INFO] [stdout] 481 | let h1 = (0x1 << 7) & instruction != 0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_h1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h2` [INFO] [stdout] --> src/gameboy/cpu.rs:482:13 [INFO] [stdout] | [INFO] [stdout] 482 | let h2 = (0x1 << 6) & instruction != 0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_h2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rs` [INFO] [stdout] --> src/gameboy/cpu.rs:483:13 [INFO] [stdout] | [INFO] [stdout] 483 | let rs = ((0x7 << 3) & instruction) >> 3; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rd` [INFO] [stdout] --> src/gameboy/cpu.rs:484:13 [INFO] [stdout] | [INFO] [stdout] 484 | let rd = 0x7 & instruction; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:487:41 [INFO] [stdout] | [INFO] [stdout] 487 | fn thumb_handle_ldrpcimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:489:42 [INFO] [stdout] | [INFO] [stdout] 489 | fn thumb_handle_ldrstrreg(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:491:44 [INFO] [stdout] | [INFO] [stdout] 491 | fn thumb_handle_ldrhstrhreg(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:493:42 [INFO] [stdout] | [INFO] [stdout] 493 | fn thumb_handle_ldrstrimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:495:44 [INFO] [stdout] | [INFO] [stdout] 495 | fn thumb_handle_ldrhstrhimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:497:44 [INFO] [stdout] | [INFO] [stdout] 497 | fn thumb_handle_ldrstrspimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:499:40 [INFO] [stdout] | [INFO] [stdout] 499 | fn thumb_handle_addrimm(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:501:44 [INFO] [stdout] | [INFO] [stdout] 501 | fn thumb_handle_addspoffset(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:503:33 [INFO] [stdout] | [INFO] [stdout] 503 | fn thumb_pushpop(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:505:43 [INFO] [stdout] | [INFO] [stdout] 505 | fn thumb_handle_ldmstmregs(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:507:36 [INFO] [stdout] | [INFO] [stdout] 507 | fn thumb_handle_swi(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:509:47 [INFO] [stdout] | [INFO] [stdout] 509 | fn thumb_handle_branchcondoffs(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:511:43 [INFO] [stdout] | [INFO] [stdout] 511 | fn thumb_handle_branchoffs(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instruction` [INFO] [stdout] --> src/gameboy/cpu.rs:513:47 [INFO] [stdout] | [INFO] [stdout] 513 | fn thumb_handle_branchlongoffs(&mut self, instruction: u16) {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `accumulate` [INFO] [stdout] --> src/gameboy/cpu.rs:568:13 [INFO] [stdout] | [INFO] [stdout] 568 | let accumulate = ((1 << 21) & instruction) >> 21 != 0; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_accumulate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rm` [INFO] [stdout] --> src/gameboy/cpu.rs:615:13 [INFO] [stdout] | [INFO] [stdout] 615 | let rm = self.get_register_arm(0xf & instruction); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `second_operand` is never read [INFO] [stdout] --> src/gameboy/cpu.rs:675:13 [INFO] [stdout] | [INFO] [stdout] 675 | let mut second_operand: u32 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `psr_force_user` [INFO] [stdout] --> src/gameboy/cpu.rs:882:13 [INFO] [stdout] | [INFO] [stdout] 882 | let psr_force_user = (1 << 22) & instruction != 0; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_psr_force_user` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/gameboy/mmu.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | writer.seek(SeekFrom::Start(0x08000000)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/gameboy/mmu.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | self.cursor.write(&[val]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 51 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gameboy/mmu.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | let mut ram = vec![0; ram_size]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `IRQ_DISABLE` [INFO] [stdout] --> src/gameboy/cpsr.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub const IRQ_DISABLE: usize = 7; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `FIQ_DISABLE` [INFO] [stdout] --> src/gameboy/cpsr.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | pub const FIQ_DISABLE: usize = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `STATE_BIT` [INFO] [stdout] --> src/gameboy/cpsr.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | pub const STATE_BIT: usize = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `MODE_BITS` [INFO] [stdout] --> src/gameboy/cpsr.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | pub const MODE_BITS: u32 = 0xF; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bios_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:38:4 [INFO] [stdout] | [INFO] [stdout] 38 | fn bios_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wramb_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn wramb_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wramc_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn wramc_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `io_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn io_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `obj_pallet_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:52:4 [INFO] [stdout] | [INFO] [stdout] 52 | fn obj_pallet_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `vram_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:55:4 [INFO] [stdout] | [INFO] [stdout] 55 | fn vram_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `obj_attr_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:58:4 [INFO] [stdout] | [INFO] [stdout] 58 | fn obj_attr_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wait_0_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn wait_0_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wait_1_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn wait_1_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wait_2_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:69:4 [INFO] [stdout] | [INFO] [stdout] 69 | fn wait_2_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gp_sram_memory` [INFO] [stdout] --> src/gameboy/cpu.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn gp_sram_memory(x: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `status` [INFO] [stdout] --> src/gameboy/cpu.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | status: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `write_16` [INFO] [stdout] --> src/gameboy/mmu.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn write_16(&mut self, address: u32, val: u16) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/gameboy/cpu.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | 0x00000000 <= x && x <= 0x00003FFF [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/gameboy/mmu.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | writer.seek(SeekFrom::Start(0x08000000)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/gameboy/mmu.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | self.cursor.write(&[val]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 51 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.67s [INFO] running `Command { std: "docker" "inspect" "45ebb66b420bce0e82684d064578756e87bc08608794274ce208608245c5925a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "45ebb66b420bce0e82684d064578756e87bc08608794274ce208608245c5925a", kill_on_drop: false }` [INFO] [stdout] 45ebb66b420bce0e82684d064578756e87bc08608794274ce208608245c5925a