[INFO] fetching crate swamp-vm 0.2.26...
[INFO] testing swamp-vm-0.2.26 against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739-1
[INFO] extracting crate swamp-vm 0.2.26 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate swamp-vm 0.2.26
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate swamp-vm 0.2.26
[INFO] tweaked toml for crates.io crate swamp-vm 0.2.26 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate swamp-vm 0.2.26 on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate swamp-vm 0.2.26 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bac5fceac7ed1b00fc31540f6750f13a6bf45ae3117d1d49664cff5f9ead8762
[INFO] running `Command { std: "docker" "start" "-a" "bac5fceac7ed1b00fc31540f6750f13a6bf45ae3117d1d49664cff5f9ead8762", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bac5fceac7ed1b00fc31540f6750f13a6bf45ae3117d1d49664cff5f9ead8762", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bac5fceac7ed1b00fc31540f6750f13a6bf45ae3117d1d49664cff5f9ead8762", kill_on_drop: false }`
[INFO] [stdout] bac5fceac7ed1b00fc31540f6750f13a6bf45ae3117d1d49664cff5f9ead8762
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 425ea33bf08514f689c88d9d9fb91473ab0a90fd772b0c47a68f287b66348154
[INFO] running `Command { std: "docker" "start" "-a" "425ea33bf08514f689c88d9d9fb91473ab0a90fd772b0c47a68f287b66348154", kill_on_drop: false }`
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling sparse-mem v0.2.0
[INFO] [stderr]    Compiling squirrel-prng v0.0.1
[INFO] [stderr]    Compiling fixed32 v0.0.18
[INFO] [stderr]    Compiling tinter v0.1.0
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling hashmap-mem v0.2.0
[INFO] [stderr]    Compiling swamp-vm-isa v0.2.26
[INFO] [stderr]    Compiling swamp-vm v0.2.26 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::memory::ExecutionMode`
[INFO] [stdout]  --> src/string.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::memory::ExecutionMode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/string.rs:513:21
[INFO] [stdout]     |
[INFO] [stdout] 512 |                     panic!("ERROR: Invalid UTF-8 string data at 0x{heap_addr:X}: {e}");
[INFO] [stdout]     |                     ------------------------------------------------------------------ any code following this expression is unreachable
[INFO] [stdout] 513 |                     ""
[INFO] [stdout]     |                     ^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bucket_layout`
[INFO] [stdout]    --> src/map_open.rs:115:14
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let (bucket_layout, map_init) = hashmap_mem::layout(
[INFO] [stdout]     |              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bucket_layout`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/map_open.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `alignment`
[INFO] [stdout]    --> src/memory.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         alignment: &MemoryAlignment,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_alignment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 325 |         unsafe { self.get_heap_ptr(offset as usize + self.frame_offset) as *mut u32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         unsafe { self.get_frame_ptr(offset) as *mut u16 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:352:9
[INFO] [stdout]     |
[INFO] [stdout] 352 |         unsafe { self.get_heap_ptr(fp_offset as usize + self.frame_offset) }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:363:9
[INFO] [stdout]     |
[INFO] [stdout] 363 |         unsafe { self.get_heap_ptr(fp_offset as usize + self.frame_offset) }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         unsafe { self.get_frame_ptr(some_addressing) as *mut i32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:400:9
[INFO] [stdout]     |
[INFO] [stdout] 400 |         unsafe { self.get_frame_const_ptr(addressing) as *const i32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:422:9
[INFO] [stdout]     |
[INFO] [stdout] 422 |         unsafe { self.get_frame_const_ptr(offset) as *const u32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |         unsafe { self.get_frame_const_ptr(addressing) as *const u16 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/string.rs:65:21
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 let s = std::str::from_utf8(bytes).unwrap_or("INVALID_UTF8");
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:127:39
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let converted_string_result = unsafe { str::from_utf8(&*raw_bytes) };
[INFO] [stdout]     |                                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:161:39
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let converted_string_result = unsafe { str::from_utf8(&*raw_bytes) };
[INFO] [stdout]     |                                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `final_reg_value`
[INFO] [stdout]    --> src/string.rs:228:13
[INFO] [stdout]     |
[INFO] [stdout] 228 |         let final_reg_value = get_reg!(self, target_string_reg);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_reg_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg_a_value`
[INFO] [stdout]    --> src/string.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let reg_a_value = get_reg!(self, string_a);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reg_a_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg_b_value`
[INFO] [stdout]    --> src/string.rs:304:13
[INFO] [stdout]     |
[INFO] [stdout] 304 |         let reg_b_value = get_reg!(self, string_b);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reg_b_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `final_reg_value`
[INFO] [stdout]    --> src/string.rs:462:13
[INFO] [stdout]     |
[INFO] [stdout] 462 |         let final_reg_value = get_reg!(self, dest_reg);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_reg_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:503:31
[INFO] [stdout]     |
[INFO] [stdout] 503 |         let string_data_ptr = unsafe {
[INFO] [stdout]     |                               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vec_header_ptr_reg`
[INFO] [stdout]    --> src/vec.rs:533:39
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vec_header_ptr_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `int_index_reg`
[INFO] [stdout]    --> src/vec.rs:533:63
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                                               ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_int_index_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item_ptr_reg`
[INFO] [stdout]    --> src/vec.rs:533:82
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_ptr_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/vec.rs:573:16
[INFO] [stdout]     |
[INFO] [stdout] 561 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 573 |             if unsafe { (*src_vec_ptr).padding } != VEC_HEADER_MAGIC_CODE {
[INFO] [stdout]     |                ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALIGNMENT_REST` is never used
[INFO] [stdout]    --> src/lib.rs:287:7
[INFO] [stdout]     |
[INFO] [stdout] 287 | const ALIGNMENT_REST: usize = ALIGNMENT - 1;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALIGNMENT_MASK` is never used
[INFO] [stdout]    --> src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | const ALIGNMENT_MASK: usize = !ALIGNMENT_REST;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stack_offset` is never read
[INFO] [stdout]   --> src/host.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct HostArgs {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 31 |     stack_offset: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_debug_stack_slice`, `read_frame_debug_slice`, and `read_debug_slice` are never used
[INFO] [stdout]    --> src/memory.rs:298:19
[INFO] [stdout]     |
[INFO] [stdout]  63 | impl Memory {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub(crate) fn read_debug_stack_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 365 |     pub(crate) fn read_frame_debug_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 484 |     pub(crate) fn read_debug_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.79s
[INFO] running `Command { std: "docker" "inspect" "425ea33bf08514f689c88d9d9fb91473ab0a90fd772b0c47a68f287b66348154", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "425ea33bf08514f689c88d9d9fb91473ab0a90fd772b0c47a68f287b66348154", kill_on_drop: false }`
[INFO] [stdout] 425ea33bf08514f689c88d9d9fb91473ab0a90fd772b0c47a68f287b66348154
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ee3147fc483b7ff6e314af0ace5a8a9d285a32cbef909f4562b6e97594362649
[INFO] running `Command { std: "docker" "start" "-a" "ee3147fc483b7ff6e314af0ace5a8a9d285a32cbef909f4562b6e97594362649", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `crate::memory::ExecutionMode`
[INFO] [stdout]  --> src/string.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::memory::ExecutionMode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/string.rs:513:21
[INFO] [stdout]     |
[INFO] [stdout] 512 |                     panic!("ERROR: Invalid UTF-8 string data at 0x{heap_addr:X}: {e}");
[INFO] [stdout]     |                     ------------------------------------------------------------------ any code following this expression is unreachable
[INFO] [stdout] 513 |                     ""
[INFO] [stdout]     |                     ^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bucket_layout`
[INFO] [stdout]    --> src/map_open.rs:115:14
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let (bucket_layout, map_init) = hashmap_mem::layout(
[INFO] [stdout]     |              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bucket_layout`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/map_open.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `alignment`
[INFO] [stdout]    --> src/memory.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         alignment: &MemoryAlignment,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_alignment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 325 |         unsafe { self.get_heap_ptr(offset as usize + self.frame_offset) as *mut u32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         unsafe { self.get_frame_ptr(offset) as *mut u16 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:352:9
[INFO] [stdout]     |
[INFO] [stdout] 352 |         unsafe { self.get_heap_ptr(fp_offset as usize + self.frame_offset) }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:363:9
[INFO] [stdout]     |
[INFO] [stdout] 363 |         unsafe { self.get_heap_ptr(fp_offset as usize + self.frame_offset) }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         unsafe { self.get_frame_ptr(some_addressing) as *mut i32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:400:9
[INFO] [stdout]     |
[INFO] [stdout] 400 |         unsafe { self.get_frame_const_ptr(addressing) as *const i32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:422:9
[INFO] [stdout]     |
[INFO] [stdout] 422 |         unsafe { self.get_frame_const_ptr(offset) as *const u32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling swamp-vm v0.2.26 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |         unsafe { self.get_frame_const_ptr(addressing) as *const u16 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/string.rs:65:21
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 let s = std::str::from_utf8(bytes).unwrap_or("INVALID_UTF8");
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:127:39
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let converted_string_result = unsafe { str::from_utf8(&*raw_bytes) };
[INFO] [stdout]     |                                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:161:39
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let converted_string_result = unsafe { str::from_utf8(&*raw_bytes) };
[INFO] [stdout]     |                                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `final_reg_value`
[INFO] [stdout]    --> src/string.rs:228:13
[INFO] [stdout]     |
[INFO] [stdout] 228 |         let final_reg_value = get_reg!(self, target_string_reg);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_reg_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg_a_value`
[INFO] [stdout]    --> src/string.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let reg_a_value = get_reg!(self, string_a);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reg_a_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg_b_value`
[INFO] [stdout]    --> src/string.rs:304:13
[INFO] [stdout]     |
[INFO] [stdout] 304 |         let reg_b_value = get_reg!(self, string_b);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reg_b_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `final_reg_value`
[INFO] [stdout]    --> src/string.rs:462:13
[INFO] [stdout]     |
[INFO] [stdout] 462 |         let final_reg_value = get_reg!(self, dest_reg);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_reg_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:503:31
[INFO] [stdout]     |
[INFO] [stdout] 503 |         let string_data_ptr = unsafe {
[INFO] [stdout]     |                               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vec_header_ptr_reg`
[INFO] [stdout]    --> src/vec.rs:533:39
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vec_header_ptr_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `int_index_reg`
[INFO] [stdout]    --> src/vec.rs:533:63
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                                               ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_int_index_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item_ptr_reg`
[INFO] [stdout]    --> src/vec.rs:533:82
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_ptr_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/vec.rs:573:16
[INFO] [stdout]     |
[INFO] [stdout] 561 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 573 |             if unsafe { (*src_vec_ptr).padding } != VEC_HEADER_MAGIC_CODE {
[INFO] [stdout]     |                ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALIGNMENT_REST` is never used
[INFO] [stdout]    --> src/lib.rs:287:7
[INFO] [stdout]     |
[INFO] [stdout] 287 | const ALIGNMENT_REST: usize = ALIGNMENT - 1;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALIGNMENT_MASK` is never used
[INFO] [stdout]    --> src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | const ALIGNMENT_MASK: usize = !ALIGNMENT_REST;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stack_offset` is never read
[INFO] [stdout]   --> src/host.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct HostArgs {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 31 |     stack_offset: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_debug_stack_slice`, `read_frame_debug_slice`, and `read_debug_slice` are never used
[INFO] [stdout]    --> src/memory.rs:298:19
[INFO] [stdout]     |
[INFO] [stdout]  63 | impl Memory {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub(crate) fn read_debug_stack_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 365 |     pub(crate) fn read_frame_debug_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 484 |     pub(crate) fn read_debug_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::memory::ExecutionMode`
[INFO] [stdout]  --> src/string.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::memory::ExecutionMode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vm`
[INFO] [stdout]   --> tests/tests.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let vm = Vm::new(vec![], setup);
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_vm`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/string.rs:513:21
[INFO] [stdout]     |
[INFO] [stdout] 512 |                     panic!("ERROR: Invalid UTF-8 string data at 0x{heap_addr:X}: {e}");
[INFO] [stdout]     |                     ------------------------------------------------------------------ any code following this expression is unreachable
[INFO] [stdout] 513 |                     ""
[INFO] [stdout]     |                     ^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bucket_layout`
[INFO] [stdout]    --> src/map_open.rs:115:14
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let (bucket_layout, map_init) = hashmap_mem::layout(
[INFO] [stdout]     |              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bucket_layout`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/map_open.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `alignment`
[INFO] [stdout]    --> src/memory.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         alignment: &MemoryAlignment,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_alignment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 325 |         unsafe { self.get_heap_ptr(offset as usize + self.frame_offset) as *mut u32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         unsafe { self.get_frame_ptr(offset) as *mut u16 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:352:9
[INFO] [stdout]     |
[INFO] [stdout] 352 |         unsafe { self.get_heap_ptr(fp_offset as usize + self.frame_offset) }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:363:9
[INFO] [stdout]     |
[INFO] [stdout] 363 |         unsafe { self.get_heap_ptr(fp_offset as usize + self.frame_offset) }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         unsafe { self.get_frame_ptr(some_addressing) as *mut i32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:400:9
[INFO] [stdout]     |
[INFO] [stdout] 400 |         unsafe { self.get_frame_const_ptr(addressing) as *const i32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:422:9
[INFO] [stdout]     |
[INFO] [stdout] 422 |         unsafe { self.get_frame_const_ptr(offset) as *const u32 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/memory.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |         unsafe { self.get_frame_const_ptr(addressing) as *const u16 }
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/string.rs:65:21
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 let s = std::str::from_utf8(bytes).unwrap_or("INVALID_UTF8");
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:127:39
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let converted_string_result = unsafe { str::from_utf8(&*raw_bytes) };
[INFO] [stdout]     |                                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:161:39
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let converted_string_result = unsafe { str::from_utf8(&*raw_bytes) };
[INFO] [stdout]     |                                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `final_reg_value`
[INFO] [stdout]    --> src/string.rs:228:13
[INFO] [stdout]     |
[INFO] [stdout] 228 |         let final_reg_value = get_reg!(self, target_string_reg);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_reg_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg_a_value`
[INFO] [stdout]    --> src/string.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let reg_a_value = get_reg!(self, string_a);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reg_a_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg_b_value`
[INFO] [stdout]    --> src/string.rs:304:13
[INFO] [stdout]     |
[INFO] [stdout] 304 |         let reg_b_value = get_reg!(self, string_b);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reg_b_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `final_reg_value`
[INFO] [stdout]    --> src/string.rs:462:13
[INFO] [stdout]     |
[INFO] [stdout] 462 |         let final_reg_value = get_reg!(self, dest_reg);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_reg_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/string.rs:503:31
[INFO] [stdout]     |
[INFO] [stdout] 503 |         let string_data_ptr = unsafe {
[INFO] [stdout]     |                               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vec_header_ptr_reg`
[INFO] [stdout]    --> src/vec.rs:533:39
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vec_header_ptr_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `int_index_reg`
[INFO] [stdout]    --> src/vec.rs:533:63
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                                               ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_int_index_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item_ptr_reg`
[INFO] [stdout]    --> src/vec.rs:533:82
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_ptr_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/vec.rs:573:16
[INFO] [stdout]     |
[INFO] [stdout] 561 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 573 |             if unsafe { (*src_vec_ptr).padding } != VEC_HEADER_MAGIC_CODE {
[INFO] [stdout]     |                ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALIGNMENT_REST` is never used
[INFO] [stdout]    --> src/lib.rs:287:7
[INFO] [stdout]     |
[INFO] [stdout] 287 | const ALIGNMENT_REST: usize = ALIGNMENT - 1;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALIGNMENT_MASK` is never used
[INFO] [stdout]    --> src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | const ALIGNMENT_MASK: usize = !ALIGNMENT_REST;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stack_offset` is never read
[INFO] [stdout]   --> src/host.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct HostArgs {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 31 |     stack_offset: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_debug_stack_slice`, `read_frame_debug_slice`, and `read_debug_slice` are never used
[INFO] [stdout]    --> src/memory.rs:298:19
[INFO] [stdout]     |
[INFO] [stdout]  63 | impl Memory {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub(crate) fn read_debug_stack_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 365 |     pub(crate) fn read_frame_debug_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 484 |     pub(crate) fn read_debug_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.47s
[INFO] running `Command { std: "docker" "inspect" "ee3147fc483b7ff6e314af0ace5a8a9d285a32cbef909f4562b6e97594362649", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ee3147fc483b7ff6e314af0ace5a8a9d285a32cbef909f4562b6e97594362649", kill_on_drop: false }`
[INFO] [stdout] ee3147fc483b7ff6e314af0ace5a8a9d285a32cbef909f4562b6e97594362649
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1b9903790e84933bb74da46b5a0fddb74163cf3a5454200a13a8e5dd79301bb7
[INFO] running `Command { std: "docker" "start" "-a" "1b9903790e84933bb74da46b5a0fddb74163cf3a5454200a13a8e5dd79301bb7", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `crate::memory::ExecutionMode`
[INFO] [stderr]  --> src/string.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::memory::ExecutionMode;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> src/string.rs:513:21
[INFO] [stderr]     |
[INFO] [stderr] 512 |                     panic!("ERROR: Invalid UTF-8 string data at 0x{heap_addr:X}: {e}");
[INFO] [stderr]     |                     ------------------------------------------------------------------ any code following this expression is unreachable
[INFO] [stderr] 513 |                     ""
[INFO] [stderr]     |                     ^^ unreachable expression
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bucket_layout`
[INFO] [stderr]    --> src/map_open.rs:115:14
[INFO] [stderr]     |
[INFO] [stderr] 115 |         let (bucket_layout, map_init) = hashmap_mem::layout(
[INFO] [stderr]     |              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bucket_layout`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/map_open.rs:167:9
[INFO] [stderr]     |
[INFO] [stderr] 167 |         unsafe {
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `alignment`
[INFO] [stderr]    --> src/memory.rs:170:9
[INFO] [stderr]     |
[INFO] [stderr] 170 |         alignment: &MemoryAlignment,
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_alignment`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/memory.rs:325:9
[INFO] [stderr]     |
[INFO] [stderr] 325 |         unsafe { self.get_heap_ptr(offset as usize + self.frame_offset) as *mut u32 }
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/memory.rs:341:9
[INFO] [stderr]     |
[INFO] [stderr] 341 |         unsafe { self.get_frame_ptr(offset) as *mut u16 }
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stdout] running 0 tests
[INFO] [stderr]    --> src/memory.rs:352:9
[INFO] [stdout] 
[INFO] [stderr]     |
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr] 352 |         unsafe { self.get_heap_ptr(fp_offset as usize + self.frame_offset) }
[INFO] [stdout] 
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] running 1 test
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/memory.rs:363:9
[INFO] [stderr]     |
[INFO] [stderr] 363 |         unsafe { self.get_heap_ptr(fp_offset as usize + self.frame_offset) }
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stdout] test create ... ok
[INFO] [stderr]    --> src/memory.rs:383:9
[INFO] [stdout] 
[INFO] [stderr]     |
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr] 383 |         unsafe { self.get_frame_ptr(some_addressing) as *mut i32 }
[INFO] [stdout] 
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/memory.rs:400:9
[INFO] [stderr]     |
[INFO] [stderr] 400 |         unsafe { self.get_frame_const_ptr(addressing) as *const i32 }
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/memory.rs:422:9
[INFO] [stderr]     |
[INFO] [stderr] 422 |         unsafe { self.get_frame_const_ptr(offset) as *const u32 }
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/memory.rs:444:9
[INFO] [stderr]     |
[INFO] [stderr] 444 |         unsafe { self.get_frame_const_ptr(addressing) as *const u16 }
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `s`
[INFO] [stderr]   --> src/string.rs:65:21
[INFO] [stderr]    |
[INFO] [stderr] 65 |                 let s = std::str::from_utf8(bytes).unwrap_or("INVALID_UTF8");
[INFO] [stderr]    |                     ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/string.rs:127:39
[INFO] [stderr]     |
[INFO] [stderr] 127 |         let converted_string_result = unsafe { str::from_utf8(&*raw_bytes) };
[INFO] [stderr]     |                                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/string.rs:161:39
[INFO] [stderr]     |
[INFO] [stderr] 161 |         let converted_string_result = unsafe { str::from_utf8(&*raw_bytes) };
[INFO] [stderr]     |                                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `final_reg_value`
[INFO] [stderr]    --> src/string.rs:228:13
[INFO] [stderr]     |
[INFO] [stderr] 228 |         let final_reg_value = get_reg!(self, target_string_reg);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_reg_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `reg_a_value`
[INFO] [stderr]    --> src/string.rs:303:13
[INFO] [stderr]     |
[INFO] [stderr] 303 |         let reg_a_value = get_reg!(self, string_a);
[INFO] [stderr]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reg_a_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `reg_b_value`
[INFO] [stderr]    --> src/string.rs:304:13
[INFO] [stderr]     |
[INFO] [stderr] 304 |         let reg_b_value = get_reg!(self, string_b);
[INFO] [stderr]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reg_b_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `final_reg_value`
[INFO] [stderr]    --> src/string.rs:462:13
[INFO] [stderr]     |
[INFO] [stderr] 462 |         let final_reg_value = get_reg!(self, dest_reg);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_reg_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/string.rs:503:31
[INFO] [stderr]     |
[INFO] [stderr] 503 |         let string_data_ptr = unsafe {
[INFO] [stderr]     |                               ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `vec_header_ptr_reg`
[INFO] [stderr]    --> src/vec.rs:533:39
[INFO] [stderr]     |
[INFO] [stderr] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vec_header_ptr_reg`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `int_index_reg`
[INFO] [stderr]    --> src/vec.rs:533:63
[INFO] [stderr]     |
[INFO] [stderr] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_int_index_reg`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `item_ptr_reg`
[INFO] [stderr]    --> src/vec.rs:533:82
[INFO] [stderr]     |
[INFO] [stderr] 533 |     pub fn execute_vec_set(&mut self, vec_header_ptr_reg: u8, int_index_reg: u8, item_ptr_reg: u8) {
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_ptr_reg`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/vec.rs:573:16
[INFO] [stderr]     |
[INFO] [stderr] 561 |         unsafe {
[INFO] [stderr]     |         ------ because it's nested under this `unsafe` block
[INFO] [stderr] ...
[INFO] [stderr] 573 |             if unsafe { (*src_vec_ptr).padding } != VEC_HEADER_MAGIC_CODE {
[INFO] [stderr]     |                ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ALIGNMENT_REST` is never used
[INFO] [stderr]    --> src/lib.rs:287:7
[INFO] [stderr]     |
[INFO] [stderr] 287 | const ALIGNMENT_REST: usize = ALIGNMENT - 1;
[INFO] [stderr]     |       ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ALIGNMENT_MASK` is never used
[INFO] [stderr]    --> src/lib.rs:288:7
[INFO] [stderr]     |
[INFO] [stderr] 288 | const ALIGNMENT_MASK: usize = !ALIGNMENT_REST;
[INFO] [stderr]     |       ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `stack_offset` is never read
[INFO] [stderr]   --> src/host.rs:31:5
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub struct HostArgs {
[INFO] [stderr]    |            -------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 31 |     stack_offset: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `read_debug_stack_slice`, `read_frame_debug_slice`, and `read_debug_slice` are never used
[INFO] [stderr]    --> src/memory.rs:298:19
[INFO] [stderr]     |
[INFO] [stderr]  63 | impl Memory {
[INFO] [stderr]     | ----------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 298 |     pub(crate) fn read_debug_stack_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 365 |     pub(crate) fn read_frame_debug_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 484 |     pub(crate) fn read_debug_slice(&self, start_offset: u32, size: u16) -> Vec<u8> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `swamp-vm` (lib) generated 29 warnings (run `cargo fix --lib -p swamp-vm` to apply 11 suggestions)
[INFO] [stderr] warning: unused variable: `vm`
[INFO] [stderr]   --> tests/tests.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let vm = Vm::new(vec![], setup);
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_vm`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `swamp-vm` (test "tests") generated 1 warning (run `cargo fix --test "tests" -p swamp-vm` to apply 1 suggestion)
[INFO] [stderr] warning: `swamp-vm` (lib test) generated 29 warnings (29 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/swamp_vm-c6d13ed3c93c0ccb)
[INFO] [stderr]      Running tests/tests.rs (/opt/rustwide/target/debug/deps/tests-a408c061df7bac86)
[INFO] [stderr]    Doc-tests swamp_vm
[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; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1b9903790e84933bb74da46b5a0fddb74163cf3a5454200a13a8e5dd79301bb7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1b9903790e84933bb74da46b5a0fddb74163cf3a5454200a13a8e5dd79301bb7", kill_on_drop: false }`
[INFO] [stdout] 1b9903790e84933bb74da46b5a0fddb74163cf3a5454200a13a8e5dd79301bb7
