[INFO] cloning repository https://github.com/jkorinth/rusm64
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jkorinth/rusm64" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjkorinth%2Frusm64", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjkorinth%2Frusm64'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 25e74d6b139c5072319c5fb625fe91107e00ff75
[INFO] testing jkorinth/rusm64 against 1.98.0-beta.8+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjkorinth%2Frusm64" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jkorinth/rusm64
[INFO] finished tweaking git repo https://github.com/jkorinth/rusm64
[INFO] tweaked toml for git repo https://github.com/jkorinth/rusm64 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jkorinth/rusm64 on toolchain 1.98.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jkorinth/rusm64 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" "+1.98.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded once_cell_polyfill v1.70.0
[INFO] [stderr]   Downloaded rhai_codegen v2.2.0
[INFO] [stderr]   Downloaded rand_xorshift v0.3.0
[INFO] [stderr]   Downloaded smartstring v1.0.1
[INFO] [stderr]   Downloaded rusty-fork v0.3.0
[INFO] [stderr]   Downloaded thin-vec v0.2.14
[INFO] [stderr]   Downloaded clap v4.5.38
[INFO] [stderr]   Downloaded proptest v1.6.0
[INFO] [stderr]   Downloaded clap_builder v4.5.38
[INFO] [stderr]   Downloaded rhai v1.21.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c
[INFO] running `Command { std: "docker" "start" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling crunchy v0.2.3
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling portable-atomic v1.11.0
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling zerocopy v0.8.25
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling clap_lex v0.7.4
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling bitflags v2.9.1
[INFO] [stderr]    Compiling smallvec v1.15.0
[INFO] [stderr]    Compiling thin-vec v0.2.14
[INFO] [stderr]    Compiling convert_case v0.7.1
[INFO] [stderr]    Compiling clap_builder v4.5.38
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling smartstring v1.0.1
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]    Compiling const-random v0.1.18
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling rhai_codegen v2.2.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling rhai v1.21.0
[INFO] [stderr]    Compiling pest v2.8.0
[INFO] [stderr]    Compiling pest_meta v2.8.0
[INFO] [stderr]    Compiling clap v4.5.38
[INFO] [stderr]    Compiling pest_generator v2.8.0
[INFO] [stderr]    Compiling derive_more v2.0.1
[INFO] [stderr]    Compiling pest_derive v2.8.0
[INFO] [stderr]    Compiling rusm64 v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/assembler/mod.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn generate_code(state: &AssemblerState) -> Result<AssemblerState, AssembleError> {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/assembler/mod.rs:47:27
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn resolve_references(state: &AssemblerState) -> Result<AssemblerState, AssembleError> {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `byte` and `cycles` are never read
[INFO] [stdout]   --> src/assembler/opcodes.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct OpcodeEntry {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 10 |     /// The opcode byte
[INFO] [stdout] 11 |     pub byte: u8,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub cycles: u8,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OpcodeEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/assembler/pass.rs:53:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl Pass {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  53 |     pub fn with_visit_ast(self, f: Box<dyn VisitFn<State, Ast>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn with_visit_line(self, f: Box<dyn VisitFn<State, Line>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn with_visit_instruction(self, f: Box<dyn VisitFn<State, Instruction>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_visit_directive(self, f: Box<dyn VisitFn<State, Directive>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub fn with_visit_op(self, f: Box<dyn VisitFn<State, Op>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn with_visit_opcode(self, f: Box<dyn VisitFn<State, Opcode>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn with_visit_operand(self, f: Box<dyn VisitFn<State, Operand>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_visit_addressing_mode(self, f: Box<dyn VisitFn<State, AddressingMode>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn with_visit_comment(self, f: Box<dyn VisitFn<State, Comment>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn with_visit_expr(self, f: Box<dyn VisitFn<State, Expr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_visit_rhai_expr(self, f: Box<dyn VisitFn<State, RhaiExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn with_visit_literal_expr(self, f: Box<dyn VisitFn<State, LiteralExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn with_visit_ref_expr(self, f: Box<dyn VisitFn<State, RefExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn with_visit_lower_expr(self, f: Box<dyn VisitFn<State, LowerExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn with_visit_upper_expr(self, f: Box<dyn VisitFn<State, UpperExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn with_visit_number_literal(self, f: Box<dyn VisitFn<State, NumberLiteral>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn with_visit_char_literal(self, f: Box<dyn VisitFn<State, CharLiteral>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `resolve_constants_pass` and `expand_directives_pass` are never used
[INFO] [stdout]    --> src/assembler/pass.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 305 | impl Pass {
[INFO] [stdout]     | --------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn resolve_constants_pass(state: State) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn expand_directives_pass(state: State) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RefVisitorFn` is never constructed
[INFO] [stdout]   --> src/ast/visitors/refvisitor.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct RefVisitorFn;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_path`
[INFO] [stdout]   --> src/main.rs:80:18
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_path`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_path`
[INFO] [stdout]   --> src/main.rs:80:40
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verbose`
[INFO] [stdout]   --> src/main.rs:80:63
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                                                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_path`
[INFO] [stdout]    --> src/main.rs:137:15
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn parse_file(input_path: &PathBuf) -> Result<()> {
[INFO] [stdout]     |               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_binary_dump` is never used
[INFO] [stdout]    --> src/main.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn print_binary_dump(data: &[u8], bytes_per_line: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 14s
[INFO] running `Command { std: "docker" "inspect" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling bitflags v2.9.1
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rhai v1.21.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling tempfile v3.20.0
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling proptest v1.6.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling rusm64 v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/assembler/mod.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn generate_code(state: &AssemblerState) -> Result<AssemblerState, AssembleError> {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/assembler/mod.rs:47:27
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn resolve_references(state: &AssemblerState) -> Result<AssemblerState, AssembleError> {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `byte` and `cycles` are never read
[INFO] [stdout]   --> src/assembler/opcodes.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct OpcodeEntry {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 10 |     /// The opcode byte
[INFO] [stdout] 11 |     pub byte: u8,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub cycles: u8,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OpcodeEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/assembler/pass.rs:53:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl Pass {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  53 |     pub fn with_visit_ast(self, f: Box<dyn VisitFn<State, Ast>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn with_visit_line(self, f: Box<dyn VisitFn<State, Line>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn with_visit_instruction(self, f: Box<dyn VisitFn<State, Instruction>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_visit_directive(self, f: Box<dyn VisitFn<State, Directive>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub fn with_visit_op(self, f: Box<dyn VisitFn<State, Op>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn with_visit_opcode(self, f: Box<dyn VisitFn<State, Opcode>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn with_visit_operand(self, f: Box<dyn VisitFn<State, Operand>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_visit_addressing_mode(self, f: Box<dyn VisitFn<State, AddressingMode>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn with_visit_comment(self, f: Box<dyn VisitFn<State, Comment>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn with_visit_expr(self, f: Box<dyn VisitFn<State, Expr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_visit_rhai_expr(self, f: Box<dyn VisitFn<State, RhaiExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn with_visit_literal_expr(self, f: Box<dyn VisitFn<State, LiteralExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn with_visit_ref_expr(self, f: Box<dyn VisitFn<State, RefExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn with_visit_lower_expr(self, f: Box<dyn VisitFn<State, LowerExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn with_visit_upper_expr(self, f: Box<dyn VisitFn<State, UpperExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn with_visit_number_literal(self, f: Box<dyn VisitFn<State, NumberLiteral>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn with_visit_char_literal(self, f: Box<dyn VisitFn<State, CharLiteral>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `resolve_constants_pass` and `expand_directives_pass` are never used
[INFO] [stdout]    --> src/assembler/pass.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 305 | impl Pass {
[INFO] [stdout]     | --------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn resolve_constants_pass(state: State) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn expand_directives_pass(state: State) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RefVisitorFn` is never constructed
[INFO] [stdout]   --> src/ast/visitors/refvisitor.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct RefVisitorFn;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ast`
[INFO] [stdout]   --> tests/parser.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let ast = RusmParser::parse_directive(
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_ast`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_path`
[INFO] [stdout]   --> src/main.rs:80:18
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_path`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_path`
[INFO] [stdout]   --> src/main.rs:80:40
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verbose`
[INFO] [stdout]   --> src/main.rs:80:63
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                                                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_path`
[INFO] [stdout]    --> src/main.rs:137:15
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn parse_file(input_path: &PathBuf) -> Result<()> {
[INFO] [stdout]     |               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_binary_dump` is never used
[INFO] [stdout]    --> src/main.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn print_binary_dump(data: &[u8], bytes_per_line: usize) {
[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 variable: `input_path`
[INFO] [stdout]   --> src/main.rs:80:18
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_path`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_path`
[INFO] [stdout]   --> src/main.rs:80:40
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verbose`
[INFO] [stdout]   --> src/main.rs:80:63
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stdout]    |                                                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_path`
[INFO] [stdout]    --> src/main.rs:137:15
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn parse_file(input_path: &PathBuf) -> Result<()> {
[INFO] [stdout]     |               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_binary_dump` is never used
[INFO] [stdout]    --> src/main.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn print_binary_dump(data: &[u8], bytes_per_line: usize) {
[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 variable: `state`
[INFO] [stdout]   --> src/assembler/mod.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn generate_code(state: &AssemblerState) -> Result<AssemblerState, AssembleError> {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/assembler/mod.rs:47:27
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn resolve_references(state: &AssemblerState) -> Result<AssemblerState, AssembleError> {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `byte` and `cycles` are never read
[INFO] [stdout]   --> src/assembler/opcodes.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct OpcodeEntry {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 10 |     /// The opcode byte
[INFO] [stdout] 11 |     pub byte: u8,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub cycles: u8,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OpcodeEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/assembler/pass.rs:53:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl Pass {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  53 |     pub fn with_visit_ast(self, f: Box<dyn VisitFn<State, Ast>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn with_visit_line(self, f: Box<dyn VisitFn<State, Line>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn with_visit_instruction(self, f: Box<dyn VisitFn<State, Instruction>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_visit_directive(self, f: Box<dyn VisitFn<State, Directive>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub fn with_visit_op(self, f: Box<dyn VisitFn<State, Op>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn with_visit_opcode(self, f: Box<dyn VisitFn<State, Opcode>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn with_visit_operand(self, f: Box<dyn VisitFn<State, Operand>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_visit_addressing_mode(self, f: Box<dyn VisitFn<State, AddressingMode>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn with_visit_comment(self, f: Box<dyn VisitFn<State, Comment>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn with_visit_expr(self, f: Box<dyn VisitFn<State, Expr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_visit_rhai_expr(self, f: Box<dyn VisitFn<State, RhaiExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn with_visit_literal_expr(self, f: Box<dyn VisitFn<State, LiteralExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn with_visit_ref_expr(self, f: Box<dyn VisitFn<State, RefExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn with_visit_lower_expr(self, f: Box<dyn VisitFn<State, LowerExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn with_visit_upper_expr(self, f: Box<dyn VisitFn<State, UpperExpr>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn with_visit_number_literal(self, f: Box<dyn VisitFn<State, NumberLiteral>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn with_visit_char_literal(self, f: Box<dyn VisitFn<State, CharLiteral>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `resolve_constants_pass` and `expand_directives_pass` are never used
[INFO] [stdout]    --> src/assembler/pass.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 305 | impl Pass {
[INFO] [stdout]     | --------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn resolve_constants_pass(state: State) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn expand_directives_pass(state: State) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/ast/tests/mod.rs:99:22
[INFO] [stdout]    |
[INFO] [stdout] 99 |         prop_assert!(refs.len() >= 0); // Always true
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 23s
[INFO] running `Command { std: "docker" "inspect" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unused variable: `state`
[INFO] [stderr]   --> src/assembler/mod.rs:43:22
[INFO] [stderr]    |
[INFO] [stderr] 43 |     fn generate_code(state: &AssemblerState) -> Result<AssemblerState, AssembleError> {
[INFO] [stderr]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `state`
[INFO] [stderr]   --> src/assembler/mod.rs:47:27
[INFO] [stderr]    |
[INFO] [stderr] 47 |     fn resolve_references(state: &AssemblerState) -> Result<AssemblerState, AssembleError> {
[INFO] [stderr]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `byte` and `cycles` are never read
[INFO] [stderr]   --> src/assembler/opcodes.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr]  9 | pub struct OpcodeEntry {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] 10 |     /// The opcode byte
[INFO] [stderr] 11 |     pub byte: u8,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 17 |     pub cycles: u8,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `OpcodeEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/assembler/pass.rs:53:12
[INFO] [stderr]     |
[INFO] [stderr]  39 | impl Pass {
[INFO] [stderr]     | --------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  53 |     pub fn with_visit_ast(self, f: Box<dyn VisitFn<State, Ast>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  59 |     pub fn with_visit_line(self, f: Box<dyn VisitFn<State, Line>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  71 |     pub fn with_visit_instruction(self, f: Box<dyn VisitFn<State, Instruction>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  77 |     pub fn with_visit_directive(self, f: Box<dyn VisitFn<State, Directive>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  83 |     pub fn with_visit_op(self, f: Box<dyn VisitFn<State, Op>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  89 |     pub fn with_visit_opcode(self, f: Box<dyn VisitFn<State, Opcode>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  95 |     pub fn with_visit_operand(self, f: Box<dyn VisitFn<State, Operand>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 101 |     pub fn with_visit_addressing_mode(self, f: Box<dyn VisitFn<State, AddressingMode>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 107 |     pub fn with_visit_comment(self, f: Box<dyn VisitFn<State, Comment>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 113 |     pub fn with_visit_expr(self, f: Box<dyn VisitFn<State, Expr>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 119 |     pub fn with_visit_rhai_expr(self, f: Box<dyn VisitFn<State, RhaiExpr>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 125 |     pub fn with_visit_literal_expr(self, f: Box<dyn VisitFn<State, LiteralExpr>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 131 |     pub fn with_visit_ref_expr(self, f: Box<dyn VisitFn<State, RefExpr>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 137 |     pub fn with_visit_lower_expr(self, f: Box<dyn VisitFn<State, LowerExpr>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 143 |     pub fn with_visit_upper_expr(self, f: Box<dyn VisitFn<State, UpperExpr>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 150 |     pub fn with_visit_number_literal(self, f: Box<dyn VisitFn<State, NumberLiteral>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 156 |     pub fn with_visit_char_literal(self, f: Box<dyn VisitFn<State, CharLiteral>>) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `resolve_constants_pass` and `expand_directives_pass` are never used
[INFO] [stderr]    --> src/assembler/pass.rs:315:12
[INFO] [stderr]     |
[INFO] [stderr] 305 | impl Pass {
[INFO] [stderr]     | --------- associated functions in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 315 |     pub fn resolve_constants_pass(state: State) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 325 |     pub fn expand_directives_pass(state: State) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `RefVisitorFn` is never constructed
[INFO] [stderr]   --> src/ast/visitors/refvisitor.rs:24:12
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct RefVisitorFn;
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]   --> src/ast/tests/mod.rs:99:22
[INFO] [stderr]    |
[INFO] [stderr] 99 |         prop_assert!(refs.len() >= 0); // Always true
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `rusm64` (lib) generated 6 warnings (run `cargo fix --lib -p rusm64` to apply 2 suggestions)
[INFO] [stderr] warning: `rusm64` (lib test) generated 6 warnings (5 duplicates)
[INFO] [stderr] warning: unused variable: `ast`
[INFO] [stderr]   --> tests/parser.rs:66:13
[INFO] [stderr]    |
[INFO] [stderr] 66 |         let ast = RusmParser::parse_directive(
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_ast`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `input_path`
[INFO] [stderr]   --> src/main.rs:80:18
[INFO] [stderr]    |
[INFO] [stderr] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stderr]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_path`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output_path`
[INFO] [stderr]   --> src/main.rs:80:40
[INFO] [stderr]    |
[INFO] [stderr] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stderr]    |                                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `verbose`
[INFO] [stderr]   --> src/main.rs:80:63
[INFO] [stderr]    |
[INFO] [stderr] 80 | fn assemble_file(input_path: &PathBuf, output_path: &PathBuf, verbose: bool) -> Result<()> {
[INFO] [stderr]    |                                                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `input_path`
[INFO] [stderr]    --> src/main.rs:137:15
[INFO] [stderr]     |
[INFO] [stderr] 137 | fn parse_file(input_path: &PathBuf) -> Result<()> {
[INFO] [stderr]     |               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_path`
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_binary_dump` is never used
[INFO] [stderr]    --> src/main.rs:106:4
[INFO] [stderr]     |
[INFO] [stderr] 106 | fn print_binary_dump(data: &[u8], bytes_per_line: usize) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `rusm64` (test "parser") generated 1 warning (run `cargo fix --test "parser" -p rusm64` to apply 1 suggestion)
[INFO] [stderr] warning: `rusm64` (bin "rusm64" test) generated 5 warnings (run `cargo fix --bin "rusm64" -p rusm64 --tests` to apply 4 suggestions)
[INFO] [stderr] warning: `rusm64` (bin "rusm64") generated 5 warnings (5 duplicates)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/rusm-40fd3e6e30bf8577)
[INFO] [stdout] 
[INFO] [stdout] running 40 tests
[INFO] [stdout] test ast::expr::tests::test_references_visitor ... ok
[INFO] [stdout] test assembler::tests::test_resolve_labels_pass ... ok
[INFO] [stdout] test assembler::tests::test_duplicate_labels_are_found ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_number_literals ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_refs ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_literals ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_label ... ok
[INFO] [stdout] test ast::tests::visitor_tests::test_known_edge_cases ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_rhai ... ok
[INFO] [stdout] test ast::tests::test_op_as_opaddr_consistency ... ok
[INFO] [stdout] test ast::tests::visitor_tests::test_validation_visitor ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_char_literals ... ok
[INFO] [stdout] test ast::tests::visitor_tests::test_numeric_collector ... ok
[INFO] [stdout] test parser::grammar::tests::rule_directive ... ok
[INFO] [stdout] test parser::grammar::tests::rule_label ... ok
[INFO] [stdout] test parser::grammar::tests::rule_instruction ... ok
[INFO] [stdout] test ast::tests::visitor_tests::test_visitor_consistency_across_multiple_visits ... ok
[INFO] [stdout] test parser::grammar::tests::rule_op ... ok
[INFO] [stdout] test ast::tests::test_char_literal_str_consistency ... ok
[INFO] [stdout] test parser::grammar::tests::rule_line ... ok
[INFO] [stdout] test ast::tests::test_expr_references_are_consistent ... ok
[INFO] [stdout] test parser::grammar::tests::rule_operand ... ok
[INFO] [stdout] test parser::grammar::tests::rule_rhai ... ok
[INFO] [stdout] test parser::tests::parse_example_minimal ... ok
[INFO] [stdout] test ast::tests::visitor_tests::test_visitor_order_independence ... ok
[INFO] [stdout] test parser::tests::parse_example_simple ... ok
[INFO] [stdout] test ast::tests::visitor_tests::test_counting_visitor_counts ... ok
[INFO] [stdout] test parser::tests::simple_program ... ok
[INFO] [stdout] test parser::tests::parse_example_advanced ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_upper ... ok
[INFO] [stdout] test parser::grammar::tests::rule_op_expr ... ok
[INFO] [stdout] test parser::tests::parse_empty_cornercases ... ok
[INFO] [stdout] test ast::tests::test_number_literal_str_consistency ... ok
[INFO] [stdout] test ast::tests::test_proptest_shrinking_example ... ok
[INFO] [stdout] test ast::tests::test_ref_visitor_finds_all_references ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_lower ... ok
[INFO] [stdout] test ast::tests::test_line_accessors_consistency ... ok
[INFO] [stdout] test ast::tests::number_of_lines_matches_source ... ok
[INFO] [stdout] test ast::visitors::refvisitor::tests::refvisitor_variants_agree ... ok
[INFO] [stdout] test ast::tests::formatting::fmt_full ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 40 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/rusm64-61626f889fa541c8)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/parser.rs (/opt/rustwide/target/release/deps/parser-d5b1da3fbcb3d4a6)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test parse_comments ... ok
[INFO] [stdout] test parse_minimal_asm ... ok
[INFO] [stdout] test parse_minimal ... ok
[INFO] [stdout] test parse_labels ... ok
[INFO] [stdout] test parse_simple_asm ... ok
[INFO] [stdout] test parse_single_instructions ... ok
[INFO] [stdout] test parse_simple_directives ... ok
[INFO] [stdout] test parse_advanced_asm ... ok
[INFO] [stdout] test parse_instructions ... ok
[INFO] [stdout] test parse_number_literals ... ok
[INFO] [stdout] test parse_instruction ... ok
[INFO] [stdout] test parse_problematic_directives ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rusm
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c", kill_on_drop: false }`
[INFO] [stdout] a5268a55122eb6ff8528b63f60b7d90683e497e90914feaad22fca987696371c
