[INFO] cloning repository https://github.com/martin-bucinskas/lumi-lang
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/martin-bucinskas/lumi-lang" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmartin-bucinskas%2Flumi-lang", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmartin-bucinskas%2Flumi-lang'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b2616856cf3080ddd38866d4a5555e9fc6d173fa
[INFO] building martin-bucinskas/lumi-lang against try#4987e9d4227139400384ab59296ffee3b0fb1183 for pr-146237-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmartin-bucinskas%2Flumi-lang" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/martin-bucinskas/lumi-lang
[INFO] finished tweaking git repo https://github.com/martin-bucinskas/lumi-lang
[INFO] tweaked toml for git repo https://github.com/martin-bucinskas/lumi-lang written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/martin-bucinskas/lumi-lang on toolchain 4987e9d4227139400384ab59296ffee3b0fb1183
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4987e9d4227139400384ab59296ffee3b0fb1183" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/martin-bucinskas/lumi-lang 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" "+4987e9d4227139400384ab59296ffee3b0fb1183" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+4987e9d4227139400384ab59296ffee3b0fb1183" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a7d93488055d471d6b283e87c0c4465f78824c705148866c4acdc71e58a2e9ec
[INFO] running `Command { std: "docker" "start" "-a" "a7d93488055d471d6b283e87c0c4465f78824c705148866c4acdc71e58a2e9ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a7d93488055d471d6b283e87c0c4465f78824c705148866c4acdc71e58a2e9ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7d93488055d471d6b283e87c0c4465f78824c705148866c4acdc71e58a2e9ec", kill_on_drop: false }`
[INFO] [stdout] a7d93488055d471d6b283e87c0c4465f78824c705148866c4acdc71e58a2e9ec
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+4987e9d4227139400384ab59296ffee3b0fb1183" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 88aaf377d0a5bbf5d9e3e1c85f374c577284dd04cc61ea1f4e6d23d0a790a01d
[INFO] running `Command { std: "docker" "start" "-a" "88aaf377d0a5bbf5d9e3e1c85f374c577284dd04cc61ea1f4e6d23d0a790a01d", kill_on_drop: false }`
[INFO] [stderr]    Compiling zeroize v1.7.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling base16ct v0.2.0
[INFO] [stderr]    Compiling ff v0.13.0
[INFO] [stderr]    Compiling thiserror v2.0.11
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling platforms v3.4.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling der v0.7.9
[INFO] [stderr]    Compiling group v0.13.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling curve25519-dalek v4.1.2
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling socket2 v0.5.7
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling anstream v0.6.14
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling syn v2.0.98
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling block-padding v0.3.3
[INFO] [stderr]    Compiling crypto-bigint v0.5.5
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling inout v0.1.3
[INFO] [stderr]    Compiling spki v0.7.3
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling pkcs8 v0.10.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling sec1 v0.7.3
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling rfc6979 v0.4.0
[INFO] [stderr]    Compiling anyhow v1.0.83
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling unicode-width v0.1.12
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling thiserror v1.0.60
[INFO] [stderr]    Compiling serde v1.0.201
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling clap_builder v4.5.2
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling num-bigint v0.4.5
[INFO] [stderr]    Compiling ed25519 v2.2.3
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling blowfish v0.9.1
[INFO] [stderr]    Compiling elliptic-curve v0.13.8
[INFO] [stderr]    Compiling pbkdf2 v0.12.2
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling password-hash v0.4.2
[INFO] [stderr]    Compiling ecdsa v0.16.9
[INFO] [stderr]    Compiling primeorder v0.13.6
[INFO] [stderr]    Compiling is-terminal v0.4.12
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling p521 v0.13.3
[INFO] [stderr]    Compiling p256 v0.13.2
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling miniz_oxide v0.7.2
[INFO] [stderr]    Compiling tempfile v3.15.0
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling pbkdf2 v0.11.0
[INFO] [stderr]    Compiling bcrypt-pbkdf v0.10.0
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling cbc v0.1.2
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling russh-cryptovec v0.7.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.11
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.60
[INFO] [stderr]    Compiling tokio v1.37.0
[INFO] [stderr]    Compiling clap_derive v4.5.4
[INFO] [stderr]    Compiling serde_derive v1.0.201
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling async-trait v0.1.80
[INFO] [stderr]    Compiling pest v2.7.15
[INFO] [stderr]    Compiling md5 v0.7.0
[INFO] [stderr]    Compiling brownstone v3.0.0
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling ed25519-dalek v2.1.1
[INFO] [stderr]    Compiling flate2 v1.0.30
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling clap v4.5.4
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling pest_meta v2.7.15
[INFO] [stderr]    Compiling lumi_vm_sdk v2.0.0 (/opt/rustwide/workdir/lumi_vm_sdk)
[INFO] [stderr]    Compiling hex-literal v0.4.1
[INFO] [stderr]    Compiling joinery v2.1.0
[INFO] [stderr]    Compiling indent_write v2.2.0
[INFO] [stderr]    Compiling iana-time-zone v0.1.60
[INFO] [stderr]    Compiling nom-supreme v0.8.0
[INFO] [stderr]    Compiling fern v0.6.2
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling uuid v1.8.0
[INFO] [stderr]    Compiling libloading v0.8.6
[INFO] [stderr]    Compiling lumi_ext_metrics v2.0.0 (/opt/rustwide/workdir/lumi_ext_metrics)
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> lumi_ext_metrics/src/lib.rs:30:26
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn on_execute(&self, code: &str) -> Result<(), String> {
[INFO] [stdout]    |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Box<dyn LumiVmPlugin>`, which is not FFI-safe
[INFO] [stdout]   --> lumi_ext_metrics/src/lib.rs:41:41
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub extern "C" fn create_extension() -> Box<dyn LumiVmPlugin> {
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = note: box cannot be represented as a single pointer
[INFO] [stdout]    = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pest_generator v2.7.15
[INFO] [stderr]    Compiling futures-executor v0.3.30
[INFO] [stderr]    Compiling futures v0.3.30
[INFO] [stderr]    Compiling tokio-stream v0.1.15
[INFO] [stderr]    Compiling tokio-util v0.7.11
[INFO] [stderr]    Compiling pest_derive v2.7.15
[INFO] [stderr]    Compiling lumi_asm v2.0.0 (/opt/rustwide/workdir/lumi_asm)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> lumi_asm/src/lib.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use]
[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 import: `nom::branch::alt`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nom::branch::alt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `eof`, `map`, and `opt`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nom::combinator::{eof, map, opt};
[INFO] [stdout]   |                       ^^^  ^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VerboseError` and `context`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::error::{context, VerboseError};
[INFO] [stdout]   |                  ^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::multi::many0`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nom::multi::many0;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::sequence::terminated`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use nom::sequence::terminated;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use nom::IResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> lumi_asm/src/parsers/program_parser.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 |       let mut opcode: Option<Token> = None;
[INFO] [stdout]    |           ----^^^^^^
[INFO] [stdout]    |           |
[INFO] [stdout]    |           help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buf` is never read
[INFO] [stdout]    --> lumi_asm/src/assembler.rs:108:3
[INFO] [stdout]     |
[INFO] [stdout]  88 | pub struct Assembler {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 108 |   buf: [u8; 4],
[INFO] [stdout]     |   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `format_nom_error` is never used
[INFO] [stdout]    --> lumi_asm/src/assembler.rs:476:6
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl Assembler {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 476 |   fn format_nom_error(&self, input: &str, error: VerboseError<&str>) -> String {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbol_type` is never read
[INFO] [stdout]   --> lumi_asm/src/symbols.rs:12:3
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Symbol {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |   symbol_type: SymbolType,
[INFO] [stdout]    |   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Symbol` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Error` is never used
[INFO] [stdout]  --> lumi_asm/src/file_assembler.rs:8:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | type Error = anyhow::Error;
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assemble_file` is never used
[INFO] [stdout]   --> lumi_asm/src/file_assembler.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn assemble_file(file_path: &str) -> Result<(), Vec<AssemblerError>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `strip_extension` is never used
[INFO] [stdout]   --> lumi_asm/src/file_assembler.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn strip_extension(input: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_binary_file` is never used
[INFO] [stdout]   --> lumi_asm/src/file_assembler.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn create_binary_file(file_name: &str, data: &[u8]) -> std::io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_file` is never used
[INFO] [stdout]   --> lumi_asm/src/file_assembler.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn read_file(tmp: &str) -> Result<String, Error> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_hex` is never used
[INFO] [stdout]   --> lumi_asm/src/file_disassembler.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn to_hex(value: usize) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_I16` is never used
[INFO] [stdout]   --> lumi_asm/src/parsers/assembler_instruction.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const MAX_I16: i32 = 32767;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_I16` is never used
[INFO] [stdout]   --> lumi_asm/src/parsers/assembler_instruction.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const MIN_I16: i32 = -32768;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_asm/src/parsers/assembler_instruction.rs:122:10
[INFO] [stdout]     |
[INFO] [stdout]  26 | impl AssemblerInstruction {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |   pub fn is_integer_needs_splitting(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |   pub fn get_integer_value(&self) -> Option<i16> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |   pub fn get_register_number(&self) -> Option<u8> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |   pub fn set_operand_two(&mut self, token: Token) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |   pub fn set_operand_three(&mut self, token: Token) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |   pub fn has_operands(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |   pub fn get_directive_name(&self) -> Option<String> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |   pub fn get_float_constant(&self) -> Option<f64> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_instruction` is never used
[INFO] [stdout]    --> lumi_asm/src/parsers/assembler_instruction.rs:447:8
[INFO] [stdout]     |
[INFO] [stdout] 447 | pub fn parse_instruction(input: &str) -> Result<AssemblerInstruction, AssemblerError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_bytes` is never used
[INFO] [stdout]    --> lumi_asm/src/parsers/program_parser.rs:143:10
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl Program {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |   pub fn to_bytes(&self, symbols: &SymbolTable) -> Vec<u8> {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling russh-keys v0.43.0
[INFO] [stderr]    Compiling russh v0.43.0
[INFO] [stdout] warning: unused import: `std::sync::mpsc::sync_channel`
[INFO] [stdout]  --> lumi_asm/src/bin/lumi_asm.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::mpsc::sync_channel;
[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 import: `pest::Parser`
[INFO] [stdout]  --> lumi_asm/src/bin/lumi_asm.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use pest::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug`
[INFO] [stdout]   --> lumi_asm/src/bin/lumi_asm.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let debug = matches.contains_id("debug");
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_debug`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_representation` is never used
[INFO] [stdout]    --> lumi_asm/src/bin/lumi_asm.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn hex_representation(bytecode: &[u8]) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling lumi2 v2.0.0 (/opt/rustwide/workdir/lumi_vm_2)
[INFO] [stdout] warning: unused import: `chrono::format`
[INFO] [stdout]  --> lumi_vm_2/src/utils/logging.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::format;
[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 import: `std::error::Error`
[INFO] [stdout]  --> lumi_vm_2/src/vm/virtual_machine.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Library` and `Symbol`
[INFO] [stdout]  --> lumi_vm_2/src/vm/virtual_machine.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use libloading::{Library, Symbol};
[INFO] [stdout]   |                  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> lumi_vm_2/src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(async_closure)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:214:11
[INFO] [stdout]     |
[INFO] [stdout] 214 |       let context = LumiVmContext {
[INFO] [stdout]     |           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 241 |     let mut in_step_mode = false;
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VMEventType` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum VMEventType {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExecutionStatus` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VMEvent` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct VMEvent {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WatchType` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum WatchType {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WatchVariable` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct WatchVariable {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `stop_code` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl VMEventType {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 53 |   pub fn stop_code(&self) -> u32 {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VirtualMachine` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct VirtualMachine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:85:10
[INFO] [stdout]     |
[INFO] [stdout]  84 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  85 |   pub fn new() -> Self {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |   pub fn initialize() -> Self {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |   fn initialize_instruction_table(&mut self) {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |   fn dump_state(&self) {
[INFO] [stdout]     |      ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |   fn detect_changes(&mut self) {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |   pub fn run(&mut self) -> Vec<VMEvent> {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 273 |   pub fn run_once(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |   pub fn execute_instruction(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 |   pub fn decode_opcode(&mut self) -> Opcode {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |   pub fn next_8_bits(&mut self) -> u8 {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |   pub fn next_16_bits(&mut self) -> u16 {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |   pub fn next_24_bits(&mut self) -> u32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |   pub fn get_starting_offset(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |   pub fn read_ro_data(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Program` is never constructed
[INFO] [stdout]  --> lumi_vm_2/src/vm/program.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Program {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `load` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/program.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Program {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 13 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn load(&mut self) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InstructionHandler` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/mod.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub type InstructionHandler = fn(&mut VirtualMachine) -> ExecutionStatus;
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/memory.rs:10:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  10 |   pub fn system_safe_memory_access_range(&mut self, start: usize, len: usize) -> Option<&mut [u8]> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  19 |   pub fn memory_execute_load(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  28 |   pub fn memory_execute_load_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |   pub fn memory_execute_allocate(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |   pub fn memory_execute_load_upper_immediate(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |   pub fn memory_execute_load_memory(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |   pub fn memory_execute_set_memory(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |   pub fn memory_execute_push_to_stack(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |   pub fn memory_execute_pop_from_stack(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/arithmetic.rs:5:10
[INFO] [stdout]     |
[INFO] [stdout]   4 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout]   5 |   pub fn arithmetic_execute_add(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  17 |   pub fn arithmetic_execute_sub(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |   pub fn arithmetic_execute_mul(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  41 |   pub fn arithmetic_execute_div(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |   pub fn arithmetic_execute_add_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |   pub fn arithmetic_execute_sub_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |   pub fn arithmetic_execute_mul_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |   pub fn arithmetic_execute_div_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |   pub fn arithmetic_execute_increment(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |   pub fn arithmetic_execute_decrement(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `bitwise_execute_shift_left` and `bitwise_execute_shift_right` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/bitwise.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn bitwise_execute_shift_left(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |   pub fn bitwise_execute_shift_right(&mut self) -> ExecutionStatus{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/comparison.rs:4:10
[INFO] [stdout]     |
[INFO] [stdout]   3 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout]   4 |   pub fn comparison_execute_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  13 |   pub fn comparison_execute_not_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  22 |   pub fn comparison_execute_greater_than(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |   pub fn comparison_execute_less_than(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |   pub fn comparison_execute_greater_than_or_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |   pub fn comparison_execute_less_than_or_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |   pub fn comparison_execute_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  67 |   pub fn comparison_execute_not_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |   pub fn comparison_execute_greater_than_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |   pub fn comparison_execute_less_than_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |   pub fn comparison_execute_greater_than_or_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |   pub fn comparison_execute_less_than_or_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/control.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn control_execute_jump(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |   pub fn control_execute_jump_forward(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |   pub fn control_execute_jump_backward(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |   pub fn control_execute_jump_if_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |   pub fn control_execute_direct_jump(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |   pub fn control_execute_direct_jump_if_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |   pub fn control_execute_loop(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |   pub fn control_execute_create_loop(&mut self) -> ExecutionStatus{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `logical_execute_and`, `logical_execute_or`, `logical_execute_xor`, and `logical_execute_not` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/logical.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn logical_execute_and(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |   pub fn logical_execute_or(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |   pub fn logical_execute_xor(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |   pub fn logical_execute_not(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/system.rs:6:10
[INFO] [stdout]    |
[INFO] [stdout]  4 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  5 |   
[INFO] [stdout]  6 |   pub fn system_halt(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |   pub fn system_breakpoint(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |   pub fn system_no_operation(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |   pub fn system_call(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |   pub fn add_watch_variable(&mut self, watch_type: WatchType) {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |   pub fn system_execute_print_string(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |   pub fn system_execute_call(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |   pub fn system_execute_return(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |   pub fn system_execute_breakpoint(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |   pub fn system_illegal_instruction(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_extensions` is never used
[INFO] [stdout]  --> lumi_vm_2/src/vm/extensions.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn load_extensions(path: &str) -> Vec<Box<dyn LumiVmPlugin>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_extension` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/extensions.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn load_extension(path: &str) -> Result<Box<dyn LumiVmPlugin>, Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> lumi_vm_2/src/bin/lumi2.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(async_closure)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 24s
[INFO] running `Command { std: "docker" "inspect" "88aaf377d0a5bbf5d9e3e1c85f374c577284dd04cc61ea1f4e6d23d0a790a01d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "88aaf377d0a5bbf5d9e3e1c85f374c577284dd04cc61ea1f4e6d23d0a790a01d", kill_on_drop: false }`
[INFO] [stdout] 88aaf377d0a5bbf5d9e3e1c85f374c577284dd04cc61ea1f4e6d23d0a790a01d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+4987e9d4227139400384ab59296ffee3b0fb1183" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 104ec72960011590e2c1a77ec769460c46c46ba95a2947a87dde6a73042a898b
[INFO] running `Command { std: "docker" "start" "-a" "104ec72960011590e2c1a77ec769460c46c46ba95a2947a87dde6a73042a898b", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.201
[INFO] [stderr]    Compiling either v1.11.0
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling plotters-backend v0.3.5
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling num-bigint v0.4.5
[INFO] [stderr]    Compiling oorandom v11.1.3
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling plotters-svg v0.3.5
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> lumi_asm/src/lib.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use]
[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 import: `nom::branch::alt`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nom::branch::alt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `eof`, `map`, and `opt`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nom::combinator::{eof, map, opt};
[INFO] [stdout]   |                       ^^^  ^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VerboseError` and `context`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::error::{context, VerboseError};
[INFO] [stdout]   |                  ^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::multi::many0`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nom::multi::many0;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::sequence::terminated`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use nom::sequence::terminated;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use nom::IResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> lumi_asm/src/parsers/program_parser.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 |       let mut opcode: Option<Token> = None;
[INFO] [stdout]    |           ----^^^^^^
[INFO] [stdout]    |           |
[INFO] [stdout]    |           help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buf` is never read
[INFO] [stdout]    --> lumi_asm/src/assembler.rs:108:3
[INFO] [stdout]     |
[INFO] [stdout]  88 | pub struct Assembler {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 108 |   buf: [u8; 4],
[INFO] [stdout]     |   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `format_nom_error` is never used
[INFO] [stdout]    --> lumi_asm/src/assembler.rs:476:6
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl Assembler {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 476 |   fn format_nom_error(&self, input: &str, error: VerboseError<&str>) -> String {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbol_type` is never read
[INFO] [stdout]   --> lumi_asm/src/symbols.rs:12:3
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Symbol {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |   symbol_type: SymbolType,
[INFO] [stdout]    |   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Symbol` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Error` is never used
[INFO] [stdout]  --> lumi_asm/src/file_assembler.rs:8:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | type Error = anyhow::Error;
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assemble_file` is never used
[INFO] [stdout]   --> lumi_asm/src/file_assembler.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn assemble_file(file_path: &str) -> Result<(), Vec<AssemblerError>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `strip_extension` is never used
[INFO] [stdout]   --> lumi_asm/src/file_assembler.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn strip_extension(input: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_binary_file` is never used
[INFO] [stdout]   --> lumi_asm/src/file_assembler.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn create_binary_file(file_name: &str, data: &[u8]) -> std::io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_file` is never used
[INFO] [stdout]   --> lumi_asm/src/file_assembler.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn read_file(tmp: &str) -> Result<String, Error> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_hex` is never used
[INFO] [stdout]   --> lumi_asm/src/file_disassembler.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn to_hex(value: usize) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_I16` is never used
[INFO] [stdout]   --> lumi_asm/src/parsers/assembler_instruction.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const MAX_I16: i32 = 32767;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_I16` is never used
[INFO] [stdout]   --> lumi_asm/src/parsers/assembler_instruction.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const MIN_I16: i32 = -32768;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_asm/src/parsers/assembler_instruction.rs:122:10
[INFO] [stdout]     |
[INFO] [stdout]  26 | impl AssemblerInstruction {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |   pub fn is_integer_needs_splitting(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |   pub fn get_integer_value(&self) -> Option<i16> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |   pub fn get_register_number(&self) -> Option<u8> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |   pub fn set_operand_two(&mut self, token: Token) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |   pub fn set_operand_three(&mut self, token: Token) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |   pub fn has_operands(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |   pub fn get_directive_name(&self) -> Option<String> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |   pub fn get_float_constant(&self) -> Option<f64> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_instruction` is never used
[INFO] [stdout]    --> lumi_asm/src/parsers/assembler_instruction.rs:447:8
[INFO] [stdout]     |
[INFO] [stdout] 447 | pub fn parse_instruction(input: &str) -> Result<AssemblerInstruction, AssemblerError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_bytes` is never used
[INFO] [stdout]    --> lumi_asm/src/parsers/program_parser.rs:143:10
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl Program {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |   pub fn to_bytes(&self, symbols: &SymbolTable) -> Vec<u8> {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling plotters v0.3.5
[INFO] [stderr]    Compiling lumi_ext_metrics v2.0.0 (/opt/rustwide/workdir/lumi_ext_metrics)
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> lumi_ext_metrics/src/lib.rs:30:26
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn on_execute(&self, code: &str) -> Result<(), String> {
[INFO] [stdout]    |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Box<dyn LumiVmPlugin>`, which is not FFI-safe
[INFO] [stdout]   --> lumi_ext_metrics/src/lib.rs:41:41
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub extern "C" fn create_extension() -> Box<dyn LumiVmPlugin> {
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = note: box cannot be represented as a single pointer
[INFO] [stdout]    = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling lumi_vm_sdk v2.0.0 (/opt/rustwide/workdir/lumi_vm_sdk)
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> lumi_ext_metrics/src/lib.rs:30:26
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn on_execute(&self, code: &str) -> Result<(), String> {
[INFO] [stdout]    |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Box<dyn LumiVmPlugin>`, which is not FFI-safe
[INFO] [stdout]   --> lumi_ext_metrics/src/lib.rs:41:41
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub extern "C" fn create_extension() -> Box<dyn LumiVmPlugin> {
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = note: box cannot be represented as a single pointer
[INFO] [stdout]    = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling serde_json v1.0.117
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling russh-keys v0.43.0
[INFO] [stderr]    Compiling russh v0.43.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling lumi2 v2.0.0 (/opt/rustwide/workdir/lumi_vm_2)
[INFO] [stdout] warning: unused import: `chrono::format`
[INFO] [stdout]  --> lumi_vm_2/src/utils/logging.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::format;
[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 import: `std::error::Error`
[INFO] [stdout]  --> lumi_vm_2/src/vm/virtual_machine.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Library` and `Symbol`
[INFO] [stdout]  --> lumi_vm_2/src/vm/virtual_machine.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use libloading::{Library, Symbol};
[INFO] [stdout]   |                  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> lumi_vm_2/src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(async_closure)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:214:11
[INFO] [stdout]     |
[INFO] [stdout] 214 |       let context = LumiVmContext {
[INFO] [stdout]     |           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 241 |     let mut in_step_mode = false;
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VMEventType` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum VMEventType {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExecutionStatus` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VMEvent` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct VMEvent {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WatchType` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum WatchType {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WatchVariable` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct WatchVariable {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `stop_code` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl VMEventType {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 53 |   pub fn stop_code(&self) -> u32 {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VirtualMachine` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct VirtualMachine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:85:10
[INFO] [stdout]     |
[INFO] [stdout]  84 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  85 |   pub fn new() -> Self {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |   pub fn initialize() -> Self {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |   fn initialize_instruction_table(&mut self) {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |   fn dump_state(&self) {
[INFO] [stdout]     |      ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |   fn detect_changes(&mut self) {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |   pub fn run(&mut self) -> Vec<VMEvent> {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 273 |   pub fn run_once(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |   pub fn execute_instruction(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 |   pub fn decode_opcode(&mut self) -> Opcode {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |   pub fn next_8_bits(&mut self) -> u8 {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |   pub fn next_16_bits(&mut self) -> u16 {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |   pub fn next_24_bits(&mut self) -> u32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |   pub fn get_starting_offset(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |   pub fn read_ro_data(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Program` is never constructed
[INFO] [stdout]  --> lumi_vm_2/src/vm/program.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Program {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `load` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/program.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Program {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 13 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn load(&mut self) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InstructionHandler` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/mod.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub type InstructionHandler = fn(&mut VirtualMachine) -> ExecutionStatus;
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/memory.rs:10:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  10 |   pub fn system_safe_memory_access_range(&mut self, start: usize, len: usize) -> Option<&mut [u8]> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  19 |   pub fn memory_execute_load(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  28 |   pub fn memory_execute_load_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |   pub fn memory_execute_allocate(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |   pub fn memory_execute_load_upper_immediate(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |   pub fn memory_execute_load_memory(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |   pub fn memory_execute_set_memory(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |   pub fn memory_execute_push_to_stack(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |   pub fn memory_execute_pop_from_stack(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/arithmetic.rs:5:10
[INFO] [stdout]     |
[INFO] [stdout]   4 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout]   5 |   pub fn arithmetic_execute_add(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  17 |   pub fn arithmetic_execute_sub(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |   pub fn arithmetic_execute_mul(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  41 |   pub fn arithmetic_execute_div(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |   pub fn arithmetic_execute_add_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |   pub fn arithmetic_execute_sub_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |   pub fn arithmetic_execute_mul_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |   pub fn arithmetic_execute_div_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |   pub fn arithmetic_execute_increment(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |   pub fn arithmetic_execute_decrement(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `bitwise_execute_shift_left` and `bitwise_execute_shift_right` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/bitwise.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn bitwise_execute_shift_left(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |   pub fn bitwise_execute_shift_right(&mut self) -> ExecutionStatus{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/comparison.rs:4:10
[INFO] [stdout]     |
[INFO] [stdout]   3 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout]   4 |   pub fn comparison_execute_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  13 |   pub fn comparison_execute_not_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  22 |   pub fn comparison_execute_greater_than(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |   pub fn comparison_execute_less_than(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |   pub fn comparison_execute_greater_than_or_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |   pub fn comparison_execute_less_than_or_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |   pub fn comparison_execute_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  67 |   pub fn comparison_execute_not_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |   pub fn comparison_execute_greater_than_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |   pub fn comparison_execute_less_than_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |   pub fn comparison_execute_greater_than_or_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |   pub fn comparison_execute_less_than_or_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/control.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn control_execute_jump(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |   pub fn control_execute_jump_forward(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |   pub fn control_execute_jump_backward(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |   pub fn control_execute_jump_if_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |   pub fn control_execute_direct_jump(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |   pub fn control_execute_direct_jump_if_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |   pub fn control_execute_loop(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |   pub fn control_execute_create_loop(&mut self) -> ExecutionStatus{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `logical_execute_and`, `logical_execute_or`, `logical_execute_xor`, and `logical_execute_not` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/logical.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn logical_execute_and(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |   pub fn logical_execute_or(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |   pub fn logical_execute_xor(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |   pub fn logical_execute_not(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/system.rs:6:10
[INFO] [stdout]    |
[INFO] [stdout]  4 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  5 |   
[INFO] [stdout]  6 |   pub fn system_halt(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |   pub fn system_breakpoint(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |   pub fn system_no_operation(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |   pub fn system_call(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |   pub fn add_watch_variable(&mut self, watch_type: WatchType) {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |   pub fn system_execute_print_string(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |   pub fn system_execute_call(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |   pub fn system_execute_return(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |   pub fn system_execute_breakpoint(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |   pub fn system_illegal_instruction(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_extensions` is never used
[INFO] [stdout]  --> lumi_vm_2/src/vm/extensions.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn load_extensions(path: &str) -> Vec<Box<dyn LumiVmPlugin>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_extension` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/extensions.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn load_extension(path: &str) -> Result<Box<dyn LumiVmPlugin>, Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling lumi_asm v2.0.0 (/opt/rustwide/workdir/lumi_asm)
[INFO] [stdout] warning: unused import: `std::sync::mpsc::sync_channel`
[INFO] [stdout]  --> lumi_asm/src/bin/lumi_asm.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::mpsc::sync_channel;
[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 import: `pest::Parser`
[INFO] [stdout]  --> lumi_asm/src/bin/lumi_asm.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use pest::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug`
[INFO] [stdout]   --> lumi_asm/src/bin/lumi_asm.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let debug = matches.contains_id("debug");
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_debug`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> lumi_vm_2/src/bin/lumi2.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(async_closure)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_representation` is never used
[INFO] [stdout]    --> lumi_asm/src/bin/lumi_asm.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn hex_representation(bytecode: &[u8]) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::format`
[INFO] [stdout]  --> lumi_vm_2/src/utils/logging.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::format;
[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 import: `std::error::Error`
[INFO] [stdout]  --> lumi_vm_2/src/vm/virtual_machine.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Library` and `Symbol`
[INFO] [stdout]  --> lumi_vm_2/src/vm/virtual_machine.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use libloading::{Library, Symbol};
[INFO] [stdout]   |                  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> lumi_vm_2/src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(async_closure)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> lumi_asm/src/lib.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use]
[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 import: `nom::branch::alt`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nom::branch::alt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `eof`, `map`, and `opt`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nom::combinator::{eof, map, opt};
[INFO] [stdout]   |                       ^^^  ^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VerboseError` and `context`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::error::{context, VerboseError};
[INFO] [stdout]   |                  ^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::multi::many0`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nom::multi::many0;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::sequence::terminated`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use nom::sequence::terminated;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult`
[INFO] [stdout]  --> lumi_asm/src/parsers/program_parser.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use nom::IResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:214:11
[INFO] [stdout]     |
[INFO] [stdout] 214 |       let context = LumiVmContext {
[INFO] [stdout]     |           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 241 |     let mut in_step_mode = false;
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VMEventType` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum VMEventType {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExecutionStatus` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VMEvent` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct VMEvent {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WatchType` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum WatchType {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WatchVariable` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct WatchVariable {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `stop_code` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl VMEventType {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 53 |   pub fn stop_code(&self) -> u32 {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VirtualMachine` is never constructed
[INFO] [stdout]   --> lumi_vm_2/src/vm/virtual_machine.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct VirtualMachine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/virtual_machine.rs:85:10
[INFO] [stdout]     |
[INFO] [stdout]  84 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  85 |   pub fn new() -> Self {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |   pub fn initialize() -> Self {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |   fn initialize_instruction_table(&mut self) {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |   fn dump_state(&self) {
[INFO] [stdout]     |      ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |   fn detect_changes(&mut self) {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |   pub fn run(&mut self) -> Vec<VMEvent> {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 273 |   pub fn run_once(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |   pub fn execute_instruction(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 |   pub fn decode_opcode(&mut self) -> Opcode {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |   pub fn next_8_bits(&mut self) -> u8 {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |   pub fn next_16_bits(&mut self) -> u16 {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |   pub fn next_24_bits(&mut self) -> u32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |   pub fn get_starting_offset(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |   pub fn read_ro_data(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Program` is never constructed
[INFO] [stdout]  --> lumi_vm_2/src/vm/program.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Program {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `load` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/program.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Program {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 13 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn load(&mut self) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InstructionHandler` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/mod.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub type InstructionHandler = fn(&mut VirtualMachine) -> ExecutionStatus;
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/memory.rs:10:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  10 |   pub fn system_safe_memory_access_range(&mut self, start: usize, len: usize) -> Option<&mut [u8]> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  19 |   pub fn memory_execute_load(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  28 |   pub fn memory_execute_load_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |   pub fn memory_execute_allocate(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |   pub fn memory_execute_load_upper_immediate(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |   pub fn memory_execute_load_memory(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |   pub fn memory_execute_set_memory(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |   pub fn memory_execute_push_to_stack(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |   pub fn memory_execute_pop_from_stack(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/arithmetic.rs:5:10
[INFO] [stdout]     |
[INFO] [stdout]   4 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout]   5 |   pub fn arithmetic_execute_add(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  17 |   pub fn arithmetic_execute_sub(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |   pub fn arithmetic_execute_mul(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  41 |   pub fn arithmetic_execute_div(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |   pub fn arithmetic_execute_add_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |   pub fn arithmetic_execute_sub_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |   pub fn arithmetic_execute_mul_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |   pub fn arithmetic_execute_div_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |   pub fn arithmetic_execute_increment(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |   pub fn arithmetic_execute_decrement(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `bitwise_execute_shift_left` and `bitwise_execute_shift_right` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/bitwise.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn bitwise_execute_shift_left(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |   pub fn bitwise_execute_shift_right(&mut self) -> ExecutionStatus{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_vm_2/src/vm/operations/comparison.rs:4:10
[INFO] [stdout]     |
[INFO] [stdout]   3 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout]   4 |   pub fn comparison_execute_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  13 |   pub fn comparison_execute_not_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  22 |   pub fn comparison_execute_greater_than(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |   pub fn comparison_execute_less_than(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |   pub fn comparison_execute_greater_than_or_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |   pub fn comparison_execute_less_than_or_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |   pub fn comparison_execute_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  67 |   pub fn comparison_execute_not_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |   pub fn comparison_execute_greater_than_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |   pub fn comparison_execute_less_than_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |   pub fn comparison_execute_greater_than_or_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |   pub fn comparison_execute_less_than_or_equal_f64(&mut self) -> ExecutionStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/control.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn control_execute_jump(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |   pub fn control_execute_jump_forward(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |   pub fn control_execute_jump_backward(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |   pub fn control_execute_jump_if_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |   pub fn control_execute_direct_jump(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |   pub fn control_execute_direct_jump_if_equal(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |   pub fn control_execute_loop(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |   pub fn control_execute_create_loop(&mut self) -> ExecutionStatus{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `logical_execute_and`, `logical_execute_or`, `logical_execute_xor`, and `logical_execute_not` are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/logical.rs:4:10
[INFO] [stdout]    |
[INFO] [stdout]  3 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  4 |   pub fn logical_execute_and(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |   pub fn logical_execute_or(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |   pub fn logical_execute_xor(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |   pub fn logical_execute_not(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/operations/system.rs:6:10
[INFO] [stdout]    |
[INFO] [stdout]  4 | impl VirtualMachine {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout]  5 |   
[INFO] [stdout]  6 |   pub fn system_halt(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |   pub fn system_breakpoint(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |   pub fn system_no_operation(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |   pub fn system_call(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |   pub fn add_watch_variable(&mut self, watch_type: WatchType) {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |   pub fn system_execute_print_string(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |   pub fn system_execute_call(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |   pub fn system_execute_return(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |   pub fn system_execute_breakpoint(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |   pub fn system_illegal_instruction(&mut self) -> ExecutionStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_extensions` is never used
[INFO] [stdout]  --> lumi_vm_2/src/vm/extensions.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn load_extensions(path: &str) -> Vec<Box<dyn LumiVmPlugin>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_extension` is never used
[INFO] [stdout]   --> lumi_vm_2/src/vm/extensions.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn load_extension(path: &str) -> Result<Box<dyn LumiVmPlugin>, Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> lumi_asm/src/parsers/program_parser.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 |       let mut opcode: Option<Token> = None;
[INFO] [stdout]    |           ----^^^^^^
[INFO] [stdout]    |           |
[INFO] [stdout]    |           help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buf` is never read
[INFO] [stdout]    --> lumi_asm/src/assembler.rs:108:3
[INFO] [stdout]     |
[INFO] [stdout]  88 | pub struct Assembler {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 108 |   buf: [u8; 4],
[INFO] [stdout]     |   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `format_nom_error` is never used
[INFO] [stdout]    --> lumi_asm/src/assembler.rs:476:6
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl Assembler {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 476 |   fn format_nom_error(&self, input: &str, error: VerboseError<&str>) -> String {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbol_type` is never read
[INFO] [stdout]   --> lumi_asm/src/symbols.rs:12:3
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Symbol {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |   symbol_type: SymbolType,
[INFO] [stdout]    |   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Symbol` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_hex` is never used
[INFO] [stdout]   --> lumi_asm/src/file_disassembler.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn to_hex(value: usize) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_I16` is never used
[INFO] [stdout]   --> lumi_asm/src/parsers/assembler_instruction.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const MAX_I16: i32 = 32767;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_I16` is never used
[INFO] [stdout]   --> lumi_asm/src/parsers/assembler_instruction.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const MIN_I16: i32 = -32768;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> lumi_asm/src/parsers/assembler_instruction.rs:122:10
[INFO] [stdout]     |
[INFO] [stdout]  26 | impl AssemblerInstruction {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |   pub fn is_integer_needs_splitting(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |   pub fn get_integer_value(&self) -> Option<i16> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |   pub fn get_register_number(&self) -> Option<u8> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |   pub fn set_operand_two(&mut self, token: Token) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |   pub fn set_operand_three(&mut self, token: Token) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |   pub fn has_operands(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |   pub fn get_directive_name(&self) -> Option<String> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |   pub fn get_float_constant(&self) -> Option<f64> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_instruction` is never used
[INFO] [stdout]    --> lumi_asm/src/parsers/assembler_instruction.rs:447:8
[INFO] [stdout]     |
[INFO] [stdout] 447 | pub fn parse_instruction(input: &str) -> Result<AssemblerInstruction, AssemblerError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_bytes` is never used
[INFO] [stdout]    --> lumi_asm/src/parsers/program_parser.rs:143:10
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl Program {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |   pub fn to_bytes(&self, symbols: &SymbolTable) -> Vec<u8> {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 24.58s
[INFO] running `Command { std: "docker" "inspect" "104ec72960011590e2c1a77ec769460c46c46ba95a2947a87dde6a73042a898b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "104ec72960011590e2c1a77ec769460c46c46ba95a2947a87dde6a73042a898b", kill_on_drop: false }`
[INFO] [stdout] 104ec72960011590e2c1a77ec769460c46c46ba95a2947a87dde6a73042a898b
