[INFO] fetching crate jvmrs 0.1.0...
[INFO] testing jvmrs-0.1.0 against 1.94.0 for beta-1.95-1
[INFO] extracting crate jvmrs 0.1.0 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate jvmrs 0.1.0
[INFO] finished tweaking crates.io crate jvmrs 0.1.0
[INFO] tweaked toml for crates.io crate jvmrs 0.1.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate jvmrs 0.1.0 on toolchain 1.94.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate jvmrs 0.1.0 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.94.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.113
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.113
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.113
[INFO] [stderr]   Downloaded leb128 v0.2.5
[INFO] [stderr]   Downloaded cranelift-native v0.110.3
[INFO] [stderr]   Downloaded cranelift-bitset v0.110.3
[INFO] [stderr]   Downloaded env_logger v0.10.2
[INFO] [stderr]   Downloaded cranelift v0.110.3
[INFO] [stderr]   Downloaded cranelift-codegen-shared v0.110.3
[INFO] [stderr]   Downloaded slice-group-by v0.3.1
[INFO] [stderr]   Downloaded region v2.2.0
[INFO] [stderr]   Downloaded mach v0.3.2
[INFO] [stderr]   Downloaded cranelift-frontend v0.110.3
[INFO] [stderr]   Downloaded cranelift-codegen-meta v0.110.3
[INFO] [stderr]   Downloaded js-sys v0.3.90
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.113
[INFO] [stderr]   Downloaded regalloc2 v0.9.3
[INFO] [stderr]   Downloaded cranelift-isle v0.110.3
[INFO] [stderr]   Downloaded llvm-sys v180.0.0
[INFO] [stderr]   Downloaded wasm-encoder v0.25.0
[INFO] [stderr]   Downloaded wasmtime-jit-icache-coherence v23.0.3
[INFO] [stderr]   Downloaded cranelift-jit v0.110.3
[INFO] [stderr]   Downloaded cranelift-entity v0.110.3
[INFO] [stderr]   Downloaded cranelift-control v0.110.3
[INFO] [stderr]   Downloaded cranelift-module v0.110.3
[INFO] [stderr]   Downloaded cranelift-object v0.110.3
[INFO] [stderr]   Downloaded web-sys v0.3.90
[INFO] [stderr]   Downloaded cranelift-bforest v0.110.3
[INFO] [stderr]   Downloaded cranelift-codegen v0.110.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 78306e4aa756e3748472baa9419b69f9a97eea075a05ec730ef3904bb8ce2b70
[INFO] running `Command { std: "docker" "start" "-a" "78306e4aa756e3748472baa9419b69f9a97eea075a05ec730ef3904bb8ce2b70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "78306e4aa756e3748472baa9419b69f9a97eea075a05ec730ef3904bb8ce2b70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "78306e4aa756e3748472baa9419b69f9a97eea075a05ec730ef3904bb8ce2b70", kill_on_drop: false }`
[INFO] [stdout] 78306e4aa756e3748472baa9419b69f9a97eea075a05ec730ef3904bb8ce2b70
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ab513ab999a11230b9ec6fb8c106dbfd607f20c47910623ab60b07994bbb7227
[INFO] running `Command { std: "docker" "start" "-a" "ab513ab999a11230b9ec6fb8c106dbfd607f20c47910623ab60b07994bbb7227", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling cranelift-isle v0.110.3
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.110.3
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling target-lexicon v0.12.16
[INFO] [stderr]    Compiling cranelift-bitset v0.110.3
[INFO] [stderr]    Compiling slice-group-by v0.3.1
[INFO] [stderr]    Compiling arbitrary v1.4.2
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling bumpalo v3.20.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.110.3
[INFO] [stderr]    Compiling cranelift-entity v0.110.3
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling cranelift-bforest v0.110.3
[INFO] [stderr]    Compiling cranelift-control v0.110.3
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling wasmtime-jit-icache-coherence v23.0.3
[INFO] [stderr]    Compiling region v2.2.0
[INFO] [stderr]    Compiling tempfile v3.26.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling cranelift-codegen v0.110.3
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling hashbrown v0.13.2
[INFO] [stderr]    Compiling regalloc2 v0.9.3
[INFO] [stderr]    Compiling cranelift-module v0.110.3
[INFO] [stderr]    Compiling cranelift-native v0.110.3
[INFO] [stderr]    Compiling cranelift-frontend v0.110.3
[INFO] [stderr]    Compiling cranelift v0.110.3
[INFO] [stderr]    Compiling cranelift-object v0.110.3
[INFO] [stderr]    Compiling cranelift-jit v0.110.3
[INFO] [stderr]    Compiling jvmrs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `JvmError`
[INFO] [stdout]  --> src/interpreter/builtins.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::error::{to_runtime_error_enum, JvmError, RuntimeError};
[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: `Value`
[INFO] [stdout]   --> src/interpreter/mod.rs:22:41
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::memory::{Memory, StackFrame, Value};
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:527:9
[INFO] [stdout]     |
[INFO] [stdout] 527 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class_name`
[INFO] [stdout]    --> src/reflection.rs:403:32
[INFO] [stdout]     |
[INFO] [stdout] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:410:48
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stdout]     |                                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:424:9
[INFO] [stdout]     |
[INFO] [stdout] 424 |         field_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/reflection.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         value: Value,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method_name`
[INFO] [stdout]    --> src/reflection.rs:440:9
[INFO] [stdout]     |
[INFO] [stdout] 440 |         method_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_method_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:231:13
[INFO] [stdout]     |
[INFO] [stdout] 231 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `GROWTH_FACTOR` is never used
[INFO] [stdout]   --> src/allocator.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl ArenaAllocator {
[INFO] [stdout]    | ------------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, and `current_exception` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:550:5
[INFO] [stdout]     |
[INFO] [stdout] 544 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 550 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JvmError`
[INFO] [stdout]  --> src/interpreter/builtins.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::error::{to_runtime_error_enum, JvmError, RuntimeError};
[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: `Value`
[INFO] [stdout]   --> src/interpreter/mod.rs:22:41
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::memory::{Memory, StackFrame, Value};
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:527:9
[INFO] [stdout]     |
[INFO] [stdout] 527 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class_name`
[INFO] [stdout]    --> src/reflection.rs:403:32
[INFO] [stdout]     |
[INFO] [stdout] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:410:48
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stdout]     |                                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:424:9
[INFO] [stdout]     |
[INFO] [stdout] 424 |         field_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/reflection.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         value: Value,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method_name`
[INFO] [stdout]    --> src/reflection.rs:440:9
[INFO] [stdout]     |
[INFO] [stdout] 440 |         method_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_method_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:231:13
[INFO] [stdout]     |
[INFO] [stdout] 231 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_path`
[INFO] [stdout]    --> src/main.rs:468:17
[INFO] [stdout]     |
[INFO] [stdout] 468 |     if let Some(ref output_path) = wasm_output {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/class_file.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ClassFile {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 13 |     pub magic: u32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 14 |     pub minor_version: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub major_version: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 16 |     pub constant_pool: Vec<ConstantPoolEntry>,
[INFO] [stdout] 17 |     pub access_flags: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub interfaces: Vec<u16>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 21 |     pub fields: Vec<FieldInfo>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 22 |     pub methods: Vec<MethodInfo>,
[INFO] [stdout] 23 |     pub attributes: Vec<AttributeInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ClassFile` 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: fields `reference_kind` and `reference_index` are never read
[INFO] [stdout]   --> src/class_file.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     ConstantMethodHandle {
[INFO] [stdout]    |     -------------------- fields in this variant
[INFO] [stdout] 67 |         reference_kind: u8,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 68 |         reference_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `descriptor_index` is never read
[INFO] [stdout]   --> src/class_file.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     ConstantMethodType {
[INFO] [stdout]    |     ------------------ field in this variant
[INFO] [stdout] 71 |         descriptor_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `access_flags`, `name_index`, `descriptor_index`, and `attributes` are never read
[INFO] [stdout]   --> src/class_file.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct FieldInfo {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 82 |     pub access_flags: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 83 |     pub name_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 84 |     pub descriptor_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 85 |     pub attributes: Vec<AttributeInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidAttributeLength` is never constructed
[INFO] [stdout]    --> src/class_file.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum ParseError {
[INFO] [stdout]     |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 110 |     InvalidAttributeLength,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParseError` 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 `default_cache_dir` is never used
[INFO] [stdout]   --> src/class_cache.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn default_cache_dir() -> PathBuf {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/class_loader.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl ClassLoader {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  31 |     /// Create a new class loader with the given classpath
[INFO] [stdout]  32 |     pub fn new(classpath: Vec<PathBuf>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn metrics(&self) -> &ClassLoadMetrics {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn with_cache_dir(mut self, cache_dir: PathBuf) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn is_class_loaded(&self, name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn get_loaded_classes(&self) -> Vec<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub fn add_classpath(&mut self, path: PathBuf) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     pub fn get_classpath(&self) -> &[PathBuf] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn clear_cache(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn reload_class(&mut self, class_name: &str) -> Result<(), JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_classpath` is never used
[INFO] [stdout]    --> src/class_loader.rs:204:8
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub fn parse_classpath(classpath_str: &str) -> Vec<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_system_classpath` is never used
[INFO] [stdout]    --> src/class_loader.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 214 | pub fn get_system_classpath() -> Vec<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_debugger` is never used
[INFO] [stdout]   --> src/memory/mod.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl Memory {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn set_debugger(&mut self, debugger: JvmDebugger) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Boolean`, `Byte`, `Char`, `Short`, and `ReturnAddress` are never constructed
[INFO] [stdout]   --> src/memory/value.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum Value {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout]  6 |     Boolean(bool),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]  7 |     Byte(i8),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  8 |     Char(u16),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  9 |     Short(i16),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     ReturnAddress(u32),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Value` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_reference` is never used
[INFO] [stdout]   --> src/memory/value.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Value {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn is_reference(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_owned_by`, `wait`, `notify`, and `notify_all` are never used
[INFO] [stdout]    --> src/memory/monitor.rs:58:12
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl Monitor {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn is_owned_by(&self, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn wait(&mut self, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn notify(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn notify_all(&mut self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `marked` is never read
[INFO] [stdout]   --> src/memory/heap_object.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct HeapObject {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub marked: bool,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeapObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `marked` is never read
[INFO] [stdout]   --> src/memory/heap.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Heap {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     marked: HashSet<u32>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Heap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/memory/heap.rs:139:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Heap {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn unmark_all(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn memory_used(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 460 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `push_frame`, `pop_frame`, `current_frame`, `current_frame_mut`, and `depth` are never used
[INFO] [stdout]   --> src/memory/stack.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl JVMStack {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn push_frame(&mut self, frame: StackFrame) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn pop_frame(&mut self) -> Option<StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn current_frame(&self) -> Option<&StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn current_frame_mut(&mut self) -> Option<&mut StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn depth(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ArenaSlot` is never used
[INFO] [stdout]   --> src/allocator.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum ArenaSlot {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArenaAllocator` is never constructed
[INFO] [stdout]   --> src/allocator.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct ArenaAllocator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/allocator.rs:37:11
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl ArenaAllocator {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  36 |     /// Initial capacity (number of object slots)
[INFO] [stdout]  37 |     const INITIAL_CAPACITY: usize = 256;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout]  41 |
[INFO] [stdout]  42 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn allocate(&mut self, class_name: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     fn addr_to_index(&self, addr: u32) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn get_object(&self, addr: u32) -> Option<&HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn iter_objects(&self) -> impl Iterator<Item = (u32, &HeapObject)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn object_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArrayArena` is never constructed
[INFO] [stdout]    --> src/allocator.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub struct ArrayArena {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/allocator.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl ArrayArena {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 164 |     const INITIAL_CAPACITY: usize = 128;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 165 |
[INFO] [stdout] 166 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn allocate(&mut self, array: HeapArray) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn iter_arrays(&self) -> impl Iterator<Item = (u32, &HeapArray)> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn array_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Generation` is never used
[INFO] [stdout]   --> src/gc.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum Generation {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GenObject` is never constructed
[INFO] [stdout]   --> src/gc.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct GenObject {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GenerationalHeap` is never constructed
[INFO] [stdout]   --> src/gc.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct GenerationalHeap {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/gc.rs:57:15
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl GenerationalHeap {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  57 |     pub const DEFAULT_PROMOTION_THRESHOLD: u8 = 8;
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  58 |
[INFO] [stdout]  59 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn alloc_addr(&mut self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn allocate(&mut self, class_name: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn allocate_string(&mut self, data: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn allocate_array(&mut self, array_type: HeapArray) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn get_gen_object(&self, addr: u32) -> Option<&GenObject> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     fn get_gen_object_mut(&mut self, addr: u32) -> Option<&mut GenObject> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn get_object(&self, addr: u32) -> Option<&HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn get_string_data(&self, addr: u32) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     fn mark_from_roots(&mut self, addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     fn collect_references(&self, addr: u32) -> Vec<u32> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn minor_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn major_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     pub fn mark_object(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn unmark_all(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn object_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 351 |     pub fn array_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     pub fn memory_used(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn array_length(&self, addr: u32) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     pub fn array_get(&self, addr: u32, index: usize) -> Result<Value, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 441 |     pub fn array_set(&mut self, addr: u32, index: usize, value: Value) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 507 |     pub fn monitor_enter(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 525 |     pub fn monitor_exit(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ScopedRoot` is never constructed
[INFO] [stdout]    --> src/gc.rs:562:12
[INFO] [stdout]     |
[INFO] [stdout] 562 | pub struct ScopedRoot {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `addr` are never used
[INFO] [stdout]    --> src/gc.rs:568:12
[INFO] [stdout]     |
[INFO] [stdout] 567 | impl ScopedRoot {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 568 |     pub fn new(addr: u32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 575 |     pub fn addr(&self) -> u32 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_roots` is never used
[INFO] [stdout]    --> src/gc.rs:592:8
[INFO] [stdout]     |
[INFO] [stdout] 592 | pub fn get_roots() -> Vec<u32> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_root` is never used
[INFO] [stdout]    --> src/gc.rs:597:8
[INFO] [stdout]     |
[INFO] [stdout] 597 | pub fn add_root(addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_root` is never used
[INFO] [stdout]    --> src/gc.rs:604:8
[INFO] [stdout]     |
[INFO] [stdout] 604 | pub fn remove_root(addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ParseError` and `MemoryError` are never constructed
[INFO] [stdout]   --> src/error.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub enum JvmError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout]  8 |     /// Class file parsing errors
[INFO] [stdout]  9 |     ParseError(ParseError),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     MemoryError(MemoryError),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `JvmError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/error.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub enum ParseError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 49 |     /// Invalid magic number (not 0xCAFEBABE)
[INFO] [stdout] 50 |     InvalidMagic(u32),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 51 |     /// Unsupported class file version
[INFO] [stdout] 52 |     UnsupportedVersion(u16, u16),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 53 |     /// Invalid constant pool tag
[INFO] [stdout] 54 |     InvalidConstantPoolTag(u8),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 55 |     /// Invalid attribute length
[INFO] [stdout] 56 |     InvalidAttributeLength,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 57 |     /// Invalid UTF-8 string in constant pool
[INFO] [stdout] 58 |     InvalidUtf8String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 59 |     /// Invalid method descriptor
[INFO] [stdout] 60 |     InvalidMethodDescriptor(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 61 |     /// Invalid field descriptor
[INFO] [stdout] 62 |     InvalidFieldDescriptor(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 63 |     /// Invalid opcode
[INFO] [stdout] 64 |     InvalidOpcode(u8),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 65 |     /// Invalid bytecode
[INFO] [stdout] 66 |     InvalidBytecode(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub enum RuntimeError {
[INFO] [stdout]     |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 112 |     StackOverflow,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     ArrayIndexOutOfBounds(usize, usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     ClassNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     InvalidTypeConversion(String, String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     ArithmeticOverflow,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     InvalidArrayType(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 137 |     /// Invalid array length
[INFO] [stdout] 138 |     InvalidArrayLength(usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     IllegalState(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     InvalidOpcode(u8),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 151 |     /// Exception thrown
[INFO] [stdout] 152 |     ExceptionThrown(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 153 |     /// Class cast exception
[INFO] [stdout] 154 |     ClassCastException(String, String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 155 |     /// Array store exception
[INFO] [stdout] 156 |     ArrayStoreException,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     IllegalAccessException(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 161 |     /// Instantiation exception
[INFO] [stdout] 162 |     InstantiationException(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 163 |     /// String index out of bounds
[INFO] [stdout] 164 |     StringIndexOutOfBounds(usize, usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RuntimeError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub enum MemoryError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 231 |     /// Out of memory
[INFO] [stdout] 232 |     OutOfMemory,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     HeapCorruption,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 243 |     /// Garbage collection failed
[INFO] [stdout] 244 |     GcError(String),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 245 |     /// Memory limit exceeded
[INFO] [stdout] 246 |     MemoryLimitExceeded(usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     /// Invalid object header
[INFO] [stdout] 248 |     InvalidObjectHeader,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 249 |     /// Invalid array header
[INFO] [stdout] 250 |     InvalidArrayHeader,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 251 |     /// Memory allocation failed
[INFO] [stdout] 252 |     AllocationFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     ArrayIndexOutOfBounds(usize, usize), // index, length
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MemoryError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:308:5
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub enum ClassLoadingError {
[INFO] [stdout]     |          ----------------- variants in this enum
[INFO] [stdout] 307 |     /// Class file not found
[INFO] [stdout] 308 |     ClassFileNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 312 |     ClassCircularityError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 316 |     UnsupportedClassVersion(String, u16, u16),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 317 |     /// Class verification failed
[INFO] [stdout] 318 |     VerificationFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 319 |     /// Linkage error
[INFO] [stdout] 320 |     LinkageError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 321 |     /// Illegal access error
[INFO] [stdout] 322 |     IllegalAccessError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 323 |     /// Instantiation error
[INFO] [stdout] 324 |     InstantiationError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 325 |     /// Class loader constraint violation
[INFO] [stdout] 326 |     ClassLoaderConstraintViolation(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClassLoadingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NativeLibraryNotFound`, `NativeLibraryLoadFailed`, and `UnsatisfiedLinkError` are never constructed
[INFO] [stdout]    --> src/error.rs:370:5
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub enum NativeError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 370 |     NativeLibraryNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 371 |     /// Native library load failed
[INFO] [stdout] 372 |     NativeLibraryLoadFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 373 |     /// Unsatisfied link error
[INFO] [stdout] 374 |     UnsatisfiedLinkError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NativeError` 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 `JvmResult` is never used
[INFO] [stdout]    --> src/error.rs:403:10
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub type JvmResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InterpreterResult` is never used
[INFO] [stdout]    --> src/error.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | pub type InterpreterResult = Result<(), JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ClassFileResult` is never used
[INFO] [stdout]    --> src/error.rs:409:10
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub type ClassFileResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `MemoryResult` is never used
[INFO] [stdout]    --> src/error.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 | pub type MemoryResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_runtime_error` is never used
[INFO] [stdout]    --> src/error.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout] 415 | pub fn to_runtime_error<T: ToString>(msg: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_parse_error` is never used
[INFO] [stdout]    --> src/error.rs:420:8
[INFO] [stdout]     |
[INFO] [stdout] 420 | pub fn to_parse_error<T: Into<ParseError>>(err: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_memory_error` is never used
[INFO] [stdout]    --> src/error.rs:430:8
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub fn to_memory_error<T: Into<MemoryError>>(err: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, `current_exception`, and `reflection_api` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub(crate) reflection_api: ReflectionApi,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/interpreter/mod.rs:98:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl Interpreter {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn with_classpath(classpath: Vec<PathBuf>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn is_jit_enabled(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn jit_manager(&mut self) -> Option<&mut JitManager> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn load_class<P: AsRef<Path>>(&mut self, path: P) -> Result<(), JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn get_class(&self, name: &str) -> Option<&ClassFile> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub fn get_reflection_api(&self) -> &ReflectionApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |     pub fn get_class_reflection(&self, class_name: &str) -> Option<crate::reflection::ClassReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_1` is never used
[INFO] [stdout]  --> src/native.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const JNI_VERSION_1_1: i32 = 0x00010001;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_2` is never used
[INFO] [stdout]  --> src/native.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const JNI_VERSION_1_2: i32 = 0x00010002;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_4` is never used
[INFO] [stdout]  --> src/native.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const JNI_VERSION_1_4: i32 = 0x00010004;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_6` is never used
[INFO] [stdout]   --> src/native.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const JNI_VERSION_1_6: i32 = 0x00010006;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_8` is never used
[INFO] [stdout]   --> src/native.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const JNI_VERSION_1_8: i32 = 0x00010008;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNINativeInterface_` is never constructed
[INFO] [stdout]   --> src/native.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct JNINativeInterface_ {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `JNINativeMethod` is never used
[INFO] [stdout]   --> src/native.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub type JNINativeMethod = unsafe extern "C" fn(*mut c_void, *mut c_void, *mut *mut jvalue);
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: union `jvalue` is never used
[INFO] [stdout]   --> src/native.rs:34:11
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub union jvalue {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/native.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub trait NativeMethod: Send + Sync {
[INFO] [stdout]    |           ------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/native.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct SimpleNativeMethod {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 60 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_native` is never used
[INFO] [stdout]    --> src/native.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl NativeRegistry {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn is_native(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `value_to_jvalue` is never used
[INFO] [stdout]    --> src/native.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn value_to_jvalue(value: Value) -> jvalue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jvalue_to_value` is never used
[INFO] [stdout]    --> src/native.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub fn jvalue_to_value(jvalue: jvalue) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldReflection` is never constructed
[INFO] [stdout]  --> src/reflection.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct FieldReflection {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MethodReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct MethodReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConstructorReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct ConstructorReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClassReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct ClassReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `descriptor_to_type` is never used
[INFO] [stdout]   --> src/reflection.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn descriptor_to_type(descriptor: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `class_to_reflection` is never used
[INFO] [stdout]   --> src/reflection.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn class_to_reflection(class: &ClassFile) -> ClassReflection {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_method_params` is never used
[INFO] [stdout]    --> src/reflection.rs:139:4
[INFO] [stdout]     |
[INFO] [stdout] 139 | fn parse_method_params(descriptor: &str) -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_return_type` is never used
[INFO] [stdout]    --> src/reflection.rs:212:4
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn parse_return_type(descriptor: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/reflection.rs:232:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | impl ReflectionApi {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_class(&self, class_name: &str) -> Option<ClassReflection> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub fn get_fields(&self, class_name: &str) -> Vec<FieldReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn get_methods(&self, class_name: &str) -> Vec<MethodReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     pub fn get_constructors(&self, class_name: &str) -> Vec<ConstructorReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub fn get_super_class(&self, class_name: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub fn get_interfaces(&self, class_name: &str) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn get_class_modifiers(&self, class_name: &str) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn is_interface(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn is_abstract(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn is_public(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     pub fn is_field_public(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 370 |     pub fn is_field_static(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |     pub fn is_method_public(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn is_method_static(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 421 |     pub fn set_field_value(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 437 |     pub fn invoke_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 |     pub fn get_object_class(&self, obj: &Value) -> Result<String, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PUBLIC` is never used
[INFO] [stdout]    --> src/reflection.rs:466:15
[INFO] [stdout]     |
[INFO] [stdout] 466 |     pub const PUBLIC: u16 = 0x0001;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PRIVATE` is never used
[INFO] [stdout]    --> src/reflection.rs:467:15
[INFO] [stdout]     |
[INFO] [stdout] 467 |     pub const PRIVATE: u16 = 0x0002;
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROTECTED` is never used
[INFO] [stdout]    --> src/reflection.rs:468:15
[INFO] [stdout]     |
[INFO] [stdout] 468 |     pub const PROTECTED: u16 = 0x0004;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STATIC` is never used
[INFO] [stdout]    --> src/reflection.rs:469:15
[INFO] [stdout]     |
[INFO] [stdout] 469 |     pub const STATIC: u16 = 0x0008;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FINAL` is never used
[INFO] [stdout]    --> src/reflection.rs:470:15
[INFO] [stdout]     |
[INFO] [stdout] 470 |     pub const FINAL: u16 = 0x0010;
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYNCHRONIZED` is never used
[INFO] [stdout]    --> src/reflection.rs:471:15
[INFO] [stdout]     |
[INFO] [stdout] 471 |     pub const SYNCHRONIZED: u16 = 0x0020;
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VOLATILE` is never used
[INFO] [stdout]    --> src/reflection.rs:472:15
[INFO] [stdout]     |
[INFO] [stdout] 472 |     pub const VOLATILE: u16 = 0x0040;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSIENT` is never used
[INFO] [stdout]    --> src/reflection.rs:473:15
[INFO] [stdout]     |
[INFO] [stdout] 473 |     pub const TRANSIENT: u16 = 0x0080;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NATIVE` is never used
[INFO] [stdout]    --> src/reflection.rs:474:15
[INFO] [stdout]     |
[INFO] [stdout] 474 |     pub const NATIVE: u16 = 0x0100;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INTERFACE` is never used
[INFO] [stdout]    --> src/reflection.rs:475:15
[INFO] [stdout]     |
[INFO] [stdout] 475 |     pub const INTERFACE: u16 = 0x0200;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ABSTRACT` is never used
[INFO] [stdout]    --> src/reflection.rs:476:15
[INFO] [stdout]     |
[INFO] [stdout] 476 |     pub const ABSTRACT: u16 = 0x0400;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STRICTFP` is never used
[INFO] [stdout]    --> src/reflection.rs:477:15
[INFO] [stdout]     |
[INFO] [stdout] 477 |     pub const STRICTFP: u16 = 0x0800;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNIEnv` is never constructed
[INFO] [stdout]   --> src/jni.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct JNIEnv {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jobject` is never used
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jclass` is never used
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jmethodID` is never used
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jfieldID` is never used
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNINativeMethod` is never constructed
[INFO] [stdout]   --> src/jni.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct JNINativeMethod {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jni_natives` is never used
[INFO] [stdout]   --> src/jni.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn jni_natives() -> &'static RwLock<HashMap<(String, String, String), usize>> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `register_natives` is never used
[INFO] [stdout]   --> src/jni.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn register_natives(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_native` is never used
[INFO] [stdout]   --> src/jni.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn find_native(class_name: &str, name: &str, signature: &str) -> Option<*mut c_void> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unregister_natives` is never used
[INFO] [stdout]   --> src/jni.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub fn unregister_natives(class_name: &str) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Annotation` is never constructed
[INFO] [stdout]   --> src/annotations.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Annotation {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ElementValue` is never used
[INFO] [stdout]   --> src/annotations.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum ElementValue {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_attribute` is never used
[INFO] [stdout]   --> src/annotations.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn find_attribute<'a>(class: &'a ClassFile, attrs: &'a [AttributeInfo], name: &str) -> Option<&'a AttributeInfo> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_annotations` is never used
[INFO] [stdout]   --> src/annotations.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_annotations(class: &ClassFile, attr: &AttributeInfo) -> Vec<Annotation> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_element_value` is never used
[INFO] [stdout]   --> src/annotations.rs:78:4
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn parse_element_value(class: &ClassFile, data: &[u8], pos: &mut usize) -> ElementValue {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_annotations` is never used
[INFO] [stdout]    --> src/annotations.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn get_annotations(class: &ClassFile, attrs: &[AttributeInfo]) -> Vec<Annotation> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_signature` is never used
[INFO] [stdout]    --> src/annotations.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn get_signature(class: &ClassFile, attrs: &[AttributeInfo]) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_class_annotations` and `get_class_signature` are never used
[INFO] [stdout]    --> src/annotations.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl ClassFile {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 136 |     /// Get class-level annotations
[INFO] [stdout] 137 |     pub fn get_class_annotations(&self) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn get_class_signature(&self) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_annotations` and `get_signature_attr` are never used
[INFO] [stdout]    --> src/annotations.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout] 147 | impl MethodInfo {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 148 |     /// Get method-level annotations
[INFO] [stdout] 149 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn get_signature_attr(&self, class: &ClassFile) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_annotations` is never used
[INFO] [stdout]    --> src/annotations.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl FieldInfo {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 160 |     /// Get field-level annotations
[INFO] [stdout] 161 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_serializable` is never used
[INFO] [stdout]  --> src/serialization.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn is_serializable(_class_name: &str) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_object` is never used
[INFO] [stdout]   --> src/serialization.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn serialize_object(_obj: &HeapObject) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_object` is never used
[INFO] [stdout]   --> src/serialization.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn deserialize_object(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_value` is never used
[INFO] [stdout]   --> src/serialization.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn serialize_value(_v: &Value) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_html_fragment` is never used
[INFO] [stdout]   --> src/visualization.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn export_html_fragment(frames: &[StackFrame]) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `html_escape` is never used
[INFO] [stdout]   --> src/visualization.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn html_escape(s: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `instruction_count`, `total_time_ns`, and `last_compiled` are never read
[INFO] [stdout]   --> src/jit.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct MethodProfile {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub instruction_count: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 42 |     /// Time spent in this method (nanoseconds)
[INFO] [stdout] 43 |     pub total_time_ns: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub last_compiled: Option<Instant>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MethodProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `record_instructions` and `record_time` are never used
[INFO] [stdout]   --> src/jit.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl MethodProfile {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn record_instructions(&mut self, count: u64) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn record_time(&mut self, time_ns: u64) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_method_size` is never read
[INFO] [stdout]   --> src/jit.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct TieredCompilationConfig {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub max_method_size: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TieredCompilationConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IrGenerationError` is never constructed
[INFO] [stdout]    --> src/jit.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum JitError {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 123 |     IrGenerationError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JitError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `level` are never read
[INFO] [stdout]    --> src/jit.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct CompiledCode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 148 |     /// Function name
[INFO] [stdout] 149 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub level: CompilationLevel,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CompiledCode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `config` and `set_config` are never used
[INFO] [stdout]    --> src/jit.rs:313:12
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl CraneliftJitCompiler {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn config(&self) -> &TieredCompilationConfig {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 318 |     pub fn set_config(&mut self, config: TieredCompilationConfig) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `link_executable` is never used
[INFO] [stdout]    --> src/jit.rs:352:12
[INFO] [stdout]     |
[INFO] [stdout] 336 | impl AotCompiler {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 352 |     pub fn link_executable(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:550:5
[INFO] [stdout]     |
[INFO] [stdout] 544 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 550 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_or_compile_method` and `is_compiled` are never used
[INFO] [stdout]    --> src/jit.rs:573:12
[INFO] [stdout]     |
[INFO] [stdout] 553 | impl JitManager {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 573 |     pub fn get_or_compile_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 612 |     pub fn is_compiled(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LlvmIrGenerator` is never constructed
[INFO] [stdout]    --> src/jit.rs:530:16
[INFO] [stdout]     |
[INFO] [stdout] 530 |     pub struct LlvmIrGenerator {}
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/jit.rs:533:16
[INFO] [stdout]     |
[INFO] [stdout] 532 |     impl LlvmIrGenerator {
[INFO] [stdout]     |     -------------------- associated function in this implementation
[INFO] [stdout] 533 |         pub fn new(_module_name: &str) -> Result<Self, String> {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `trace_classes`, `trace_methods`, and `max_stack_frames` are never read
[INFO] [stdout]   --> src/debug.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct DebugConfig {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub trace_classes: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 14 |     /// Enable method entry/exit logging
[INFO] [stdout] 15 |     pub trace_methods: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 16 |     /// Maximum number of stack frames to log (None for all)
[INFO] [stdout] 17 |     pub max_stack_frames: Option<usize>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DebugConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/debug.rs:52:12
[INFO] [stdout]     |
[INFO] [stdout]  42 | impl JvmDebugger {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn log_method_entry(&self, class_name: &str, method_name: &str, method_descriptor: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn log_method_exit(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn log_class_loaded(&self, class_name: &str, source: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn log_memory_access(&self, address: u32, operation: &str, value: Option<&Value>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn log_exception(&self, exception: &str, handler_pc: Option<usize>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn log_gc(&self, freed_objects: usize, freed_bytes: usize) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn instruction_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn reset_instruction_count(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_max_samples`, `set_enabled`, `method_counts`, `method_time_ns`, and `hotspots` are never used
[INFO] [stdout]    --> src/profiler.rs:45:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl Profiler {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub fn with_max_samples(max_samples: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn method_counts(&self) -> HashMap<String, u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn method_time_ns(&self) -> HashMap<String, u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn hotspots(&self, top_n: usize) -> Vec<(String, u64, u64)> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_capacity`, `is_enabled`, and `clear` are never used
[INFO] [stdout]   --> src/trace.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TraceRecorder {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn with_capacity(max_steps: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn is_enabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rng_seed`, `fixed_timestamp_ns`, and `max_pause_ns` are never read
[INFO] [stdout]   --> src/deterministic.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DeterministicConfig {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 11 |     /// Fixed seed for any RNG (0 = use system time when disabled)
[INFO] [stdout] 12 |     pub rng_seed: u64,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 13 |     /// Use fixed "epoch" timestamp instead of actual time
[INFO] [stdout] 14 |     pub fixed_timestamp_ns: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     /// Target max pause time in ns (for real-time / HFT; advisory)
[INFO] [stdout] 16 |     pub max_pause_ns: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeterministicConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `blockchain`, `realtime`, and `hft` are never used
[INFO] [stdout]   --> src/deterministic.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl DeterministicConfig {
[INFO] [stdout]    | ------------------------ associated functions in this implementation
[INFO] [stdout] 30 |     /// Preset for blockchain / smart contract execution
[INFO] [stdout] 31 |     pub fn blockchain() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn realtime(max_pause_ns: u64) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn hft() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeterministicMode` is never constructed
[INFO] [stdout]   --> src/deterministic.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct DeterministicMode {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enabled`, `set_enabled`, `rng_seed`, and `timestamp_ns` are never used
[INFO] [stdout]   --> src/deterministic.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl DeterministicMode {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 61 |     pub fn new(config: DeterministicConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn enabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn rng_seed(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn timestamp_ns(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stack_overflow_check` is never read
[INFO] [stdout]   --> src/security.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct SecurityConfig {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub stack_overflow_check: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SecurityConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_stack_overflow`, `violation_count`, and `config` are never used
[INFO] [stdout]   --> src/security.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Sanitizer {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn check_stack_overflow(&self, current_depth: usize, max_depth: usize) -> Result<(), String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn violation_count(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn config(&self) -> &SecurityConfig {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Proxy` is never constructed
[INFO] [stdout]  --> src/aop.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Proxy {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AdviceKind` is never used
[INFO] [stdout]   --> src/aop.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum AdviceKind {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pointcut` is never constructed
[INFO] [stdout]   --> src/aop.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Pointcut {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AopRegistry` is never constructed
[INFO] [stdout]   --> src/aop.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct AopRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_advice`, and `matches` are never used
[INFO] [stdout]   --> src/aop.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl AopRegistry {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 35 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn add_advice(&mut self, pointcut: Pointcut, kind: AdviceKind) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn matches(&self, class_name: &str, method_name: &str) -> Option<AdviceKind> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_proxy` is never used
[INFO] [stdout]   --> src/aop.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn create_proxy(target_class: String, target_ref: u32, interceptor: Option<String>) -> Proxy {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `K8sOperatorConfig` is never constructed
[INFO] [stdout]  --> src/cloud.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct K8sOperatorConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DistributedObjectRef` is never constructed
[INFO] [stdout]   --> src/cloud.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct DistributedObjectRef {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HotReloadManager` is never constructed
[INFO] [stdout]   --> src/hot_reload.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct HotReloadManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_enabled`, `register_reloadable`, `class_file_changed`, `record_class_loaded`, and `replace_method` are never used
[INFO] [stdout]   --> src/hot_reload.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl HotReloadManager {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn register_reloadable(&mut self, class: &str, _method: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn class_file_changed(&self, path: &Path) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn record_class_loaded(&mut self, class_name: &str, path: &Path) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn replace_method(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `JavaExtension` is never used
[INFO] [stdout]   --> src/extensions.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub trait JavaExtension: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NativeCallback` is never used
[INFO] [stdout]   --> src/extensions.rs:45:6
[INFO] [stdout]    |
[INFO] [stdout] 45 | type NativeCallback = Arc<dyn Fn(&[Value]) -> Result<Value, String> + Send + Sync>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExtensionRegistry` is never constructed
[INFO] [stdout]   --> src/extensions.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct ExtensionRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `register_native`, `has_native`, `invoke_native`, `load`, and `loaded_extensions` are never used
[INFO] [stdout]    --> src/extensions.rs:54:12
[INFO] [stdout]     |
[INFO] [stdout]  53 | impl ExtensionRegistry {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout]  54 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn register_native(&self, key: &str, f: Box<dyn Fn(&[Value]) -> Result<Value, String> + Send + Sync>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub fn has_native(&self, key: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  75 |     pub fn invoke_native(&self, key: &str, args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn load(&self, ext: &dyn JavaExtension) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn loaded_extensions(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `GLOBAL_REGISTRY` is never used
[INFO] [stdout]    --> src/extensions.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | static GLOBAL_REGISTRY: OnceLock<RwLock<ExtensionRegistry>> = OnceLock::new();
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `global` is never used
[INFO] [stdout]    --> src/extensions.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl ExtensionRegistry {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 124 |     /// Global extension registry (used by Interpreter when interop is enabled)
[INFO] [stdout] 125 |     pub fn global() -> &'static RwLock<ExtensionRegistry> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 57.78s
[INFO] running `Command { std: "docker" "inspect" "ab513ab999a11230b9ec6fb8c106dbfd607f20c47910623ab60b07994bbb7227", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab513ab999a11230b9ec6fb8c106dbfd607f20c47910623ab60b07994bbb7227", kill_on_drop: false }`
[INFO] [stdout] ab513ab999a11230b9ec6fb8c106dbfd607f20c47910623ab60b07994bbb7227
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 14a842a5fce8c4dfdf250c0a006ca733d7b0608325ca3c23073e6c1431ef11f5
[INFO] running `Command { std: "docker" "start" "-a" "14a842a5fce8c4dfdf250c0a006ca733d7b0608325ca3c23073e6c1431ef11f5", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling tempfile v3.26.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling zerocopy-derive v0.8.39
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling hashbrown v0.13.2
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling regalloc2 v0.9.3
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling cranelift-codegen v0.110.3
[INFO] [stderr]    Compiling cranelift-module v0.110.3
[INFO] [stderr]    Compiling cranelift-native v0.110.3
[INFO] [stderr]    Compiling cranelift-frontend v0.110.3
[INFO] [stderr]    Compiling cranelift-object v0.110.3
[INFO] [stderr]    Compiling cranelift-jit v0.110.3
[INFO] [stderr]    Compiling cranelift v0.110.3
[INFO] [stderr]    Compiling jvmrs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `JvmError`
[INFO] [stdout]  --> src/interpreter/builtins.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::error::{to_runtime_error_enum, JvmError, RuntimeError};
[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: `Value`
[INFO] [stdout]   --> src/interpreter/mod.rs:22:41
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::memory::{Memory, StackFrame, Value};
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:527:9
[INFO] [stdout]     |
[INFO] [stdout] 527 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class_name`
[INFO] [stdout]    --> src/reflection.rs:403:32
[INFO] [stdout]     |
[INFO] [stdout] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:410:48
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stdout]     |                                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:424:9
[INFO] [stdout]     |
[INFO] [stdout] 424 |         field_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/reflection.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         value: Value,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method_name`
[INFO] [stdout]    --> src/reflection.rs:440:9
[INFO] [stdout]     |
[INFO] [stdout] 440 |         method_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_method_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:231:13
[INFO] [stdout]     |
[INFO] [stdout] 231 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `GROWTH_FACTOR` is never used
[INFO] [stdout]   --> src/allocator.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl ArenaAllocator {
[INFO] [stdout]    | ------------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, and `current_exception` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:550:5
[INFO] [stdout]     |
[INFO] [stdout] 544 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 550 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JvmError`
[INFO] [stdout]  --> src/interpreter/builtins.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::error::{to_runtime_error_enum, JvmError, RuntimeError};
[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: `Value`
[INFO] [stdout]   --> src/interpreter/mod.rs:22:41
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::memory::{Memory, StackFrame, Value};
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:527:9
[INFO] [stdout]     |
[INFO] [stdout] 527 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JvmError`
[INFO] [stdout]  --> src/interpreter/builtins.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::error::{to_runtime_error_enum, JvmError, RuntimeError};
[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: `Value`
[INFO] [stdout]   --> src/interpreter/mod.rs:22:41
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::memory::{Memory, StackFrame, Value};
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:527:9
[INFO] [stdout]     |
[INFO] [stdout] 527 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class_name`
[INFO] [stdout]    --> src/reflection.rs:403:32
[INFO] [stdout]     |
[INFO] [stdout] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:410:48
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stdout]     |                                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:424:9
[INFO] [stdout]     |
[INFO] [stdout] 424 |         field_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/reflection.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         value: Value,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method_name`
[INFO] [stdout]    --> src/reflection.rs:440:9
[INFO] [stdout]     |
[INFO] [stdout] 440 |         method_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_method_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:231:13
[INFO] [stdout]     |
[INFO] [stdout] 231 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `GROWTH_FACTOR` is never used
[INFO] [stdout]   --> src/allocator.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl ArenaAllocator {
[INFO] [stdout]    | ------------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, and `current_exception` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:550:5
[INFO] [stdout]     |
[INFO] [stdout] 544 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 550 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class_name`
[INFO] [stdout]    --> src/reflection.rs:403:32
[INFO] [stdout]     |
[INFO] [stdout] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:410:48
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stdout]     |                                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/reflection.rs:424:9
[INFO] [stdout]     |
[INFO] [stdout] 424 |         field_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/reflection.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         value: Value,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method_name`
[INFO] [stdout]    --> src/reflection.rs:440:9
[INFO] [stdout]     |
[INFO] [stdout] 440 |         method_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_method_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:231:13
[INFO] [stdout]     |
[INFO] [stdout] 231 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_path`
[INFO] [stdout]    --> src/main.rs:468:17
[INFO] [stdout]     |
[INFO] [stdout] 468 |     if let Some(ref output_path) = wasm_output {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `minor_version`, `access_flags`, `interfaces`, and `fields` are never read
[INFO] [stdout]   --> src/class_file.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ClassFile {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 13 |     pub magic: u32,
[INFO] [stdout] 14 |     pub minor_version: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub access_flags: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub interfaces: Vec<u16>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 21 |     pub fields: Vec<FieldInfo>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ClassFile` 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: fields `reference_kind` and `reference_index` are never read
[INFO] [stdout]   --> src/class_file.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     ConstantMethodHandle {
[INFO] [stdout]    |     -------------------- fields in this variant
[INFO] [stdout] 67 |         reference_kind: u8,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 68 |         reference_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `descriptor_index` is never read
[INFO] [stdout]   --> src/class_file.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     ConstantMethodType {
[INFO] [stdout]    |     ------------------ field in this variant
[INFO] [stdout] 71 |         descriptor_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `access_flags`, `name_index`, `descriptor_index`, and `attributes` are never read
[INFO] [stdout]   --> src/class_file.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct FieldInfo {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 82 |     pub access_flags: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 83 |     pub name_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 84 |     pub descriptor_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 85 |     pub attributes: Vec<AttributeInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidAttributeLength` is never constructed
[INFO] [stdout]    --> src/class_file.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum ParseError {
[INFO] [stdout]     |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 110 |     InvalidAttributeLength,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParseError` 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 `default_cache_dir` is never used
[INFO] [stdout]   --> src/class_cache.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn default_cache_dir() -> PathBuf {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `metrics`, `with_cache_dir`, `clear_cache`, and `reload_class` are never used
[INFO] [stdout]    --> src/class_loader.rs:52:12
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl ClassLoader {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn metrics(&self) -> &ClassLoadMetrics {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn with_cache_dir(mut self, cache_dir: PathBuf) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn clear_cache(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn reload_class(&mut self, class_name: &str) -> Result<(), JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_system_classpath` is never used
[INFO] [stdout]    --> src/class_loader.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 214 | pub fn get_system_classpath() -> Vec<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_debugger` is never used
[INFO] [stdout]   --> src/memory/mod.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl Memory {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn set_debugger(&mut self, debugger: JvmDebugger) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Boolean`, `Byte`, `Char`, `Short`, and `ReturnAddress` are never constructed
[INFO] [stdout]   --> src/memory/value.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum Value {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout]  6 |     Boolean(bool),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]  7 |     Byte(i8),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  8 |     Char(u16),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  9 |     Short(i16),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     ReturnAddress(u32),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Value` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `wait`, `notify`, and `notify_all` are never used
[INFO] [stdout]    --> src/memory/monitor.rs:62:12
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl Monitor {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn wait(&mut self, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn notify(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn notify_all(&mut self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `marked` is never read
[INFO] [stdout]   --> src/memory/heap.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Heap {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     marked: HashSet<u32>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Heap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_array_mut`, `mark`, `unmark_all`, `collect_garbage`, `memory_used`, and `owns_monitor` are never used
[INFO] [stdout]    --> src/memory/heap.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Heap {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn unmark_all(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn memory_used(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 460 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `pop_frame`, `current_frame`, and `current_frame_mut` are never used
[INFO] [stdout]   --> src/memory/stack.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl JVMStack {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn pop_frame(&mut self) -> Option<StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn current_frame(&self) -> Option<&StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn current_frame_mut(&mut self) -> Option<&mut StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `GROWTH_FACTOR`, `with_debugger`, `get_object_mut`, `iter_objects`, `mark`, and `object_count` are never used
[INFO] [stdout]    --> src/allocator.rs:40:11
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl ArenaAllocator {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn iter_objects(&self) -> impl Iterator<Item = (u32, &HeapObject)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn object_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArrayArena` is never constructed
[INFO] [stdout]    --> src/allocator.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub struct ArrayArena {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/allocator.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl ArrayArena {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 164 |     const INITIAL_CAPACITY: usize = 128;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 165 |
[INFO] [stdout] 166 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn allocate(&mut self, array: HeapArray) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn iter_arrays(&self) -> impl Iterator<Item = (u32, &HeapArray)> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn array_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `major_gc_count` is never read
[INFO] [stdout]   --> src/gc.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct GenerationalHeap {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 53 |     major_gc_count: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GenerationalHeap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/gc.rs:74:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl GenerationalHeap {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     fn get_gen_object_mut(&mut self, addr: u32) -> Option<&mut GenObject> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn major_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     pub fn mark_object(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn unmark_all(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn object_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 351 |     pub fn array_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     pub fn memory_used(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn array_length(&self, addr: u32) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     pub fn array_get(&self, addr: u32, index: usize) -> Result<Value, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 441 |     pub fn array_set(&mut self, addr: u32, index: usize, value: Value) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 507 |     pub fn monitor_enter(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 525 |     pub fn monitor_exit(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `addr` is never used
[INFO] [stdout]    --> src/gc.rs:575:12
[INFO] [stdout]     |
[INFO] [stdout] 567 | impl ScopedRoot {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 575 |     pub fn addr(&self) -> u32 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MemoryError` is never constructed
[INFO] [stdout]   --> src/error.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub enum JvmError {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 13 |     MemoryError(MemoryError),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `JvmError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/error.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub enum ParseError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 52 |     UnsupportedVersion(u16, u16),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 53 |     /// Invalid constant pool tag
[INFO] [stdout] 54 |     InvalidConstantPoolTag(u8),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 55 |     /// Invalid attribute length
[INFO] [stdout] 56 |     InvalidAttributeLength,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 57 |     /// Invalid UTF-8 string in constant pool
[INFO] [stdout] 58 |     InvalidUtf8String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 59 |     /// Invalid method descriptor
[INFO] [stdout] 60 |     InvalidMethodDescriptor(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 61 |     /// Invalid field descriptor
[INFO] [stdout] 62 |     InvalidFieldDescriptor(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 63 |     /// Invalid opcode
[INFO] [stdout] 64 |     InvalidOpcode(u8),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 65 |     /// Invalid bytecode
[INFO] [stdout] 66 |     InvalidBytecode(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub enum RuntimeError {
[INFO] [stdout]     |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 112 |     StackOverflow,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     ArrayIndexOutOfBounds(usize, usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     InvalidTypeConversion(String, String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     ArithmeticOverflow,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     InvalidArrayType(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 137 |     /// Invalid array length
[INFO] [stdout] 138 |     InvalidArrayLength(usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     IllegalState(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     ExceptionThrown(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 153 |     /// Class cast exception
[INFO] [stdout] 154 |     ClassCastException(String, String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 155 |     /// Array store exception
[INFO] [stdout] 156 |     ArrayStoreException,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     IllegalAccessException(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 161 |     /// Instantiation exception
[INFO] [stdout] 162 |     InstantiationException(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 163 |     /// String index out of bounds
[INFO] [stdout] 164 |     StringIndexOutOfBounds(usize, usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RuntimeError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub enum MemoryError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 242 |     HeapCorruption,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 243 |     /// Garbage collection failed
[INFO] [stdout] 244 |     GcError(String),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 245 |     /// Memory limit exceeded
[INFO] [stdout] 246 |     MemoryLimitExceeded(usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     /// Invalid object header
[INFO] [stdout] 248 |     InvalidObjectHeader,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 249 |     /// Invalid array header
[INFO] [stdout] 250 |     InvalidArrayHeader,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 251 |     /// Memory allocation failed
[INFO] [stdout] 252 |     AllocationFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     ArrayIndexOutOfBounds(usize, usize), // index, length
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MemoryError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub enum ClassLoadingError {
[INFO] [stdout]     |          ----------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 312 |     ClassCircularityError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 316 |     UnsupportedClassVersion(String, u16, u16),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 317 |     /// Class verification failed
[INFO] [stdout] 318 |     VerificationFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 319 |     /// Linkage error
[INFO] [stdout] 320 |     LinkageError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 321 |     /// Illegal access error
[INFO] [stdout] 322 |     IllegalAccessError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 323 |     /// Instantiation error
[INFO] [stdout] 324 |     InstantiationError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 325 |     /// Class loader constraint violation
[INFO] [stdout] 326 |     ClassLoaderConstraintViolation(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClassLoadingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NativeLibraryNotFound`, `NativeLibraryLoadFailed`, and `UnsatisfiedLinkError` are never constructed
[INFO] [stdout]    --> src/error.rs:370:5
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub enum NativeError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 370 |     NativeLibraryNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 371 |     /// Native library load failed
[INFO] [stdout] 372 |     NativeLibraryLoadFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 373 |     /// Unsatisfied link error
[INFO] [stdout] 374 |     UnsatisfiedLinkError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NativeError` 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 `JvmResult` is never used
[INFO] [stdout]    --> src/error.rs:403:10
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub type JvmResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InterpreterResult` is never used
[INFO] [stdout]    --> src/error.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | pub type InterpreterResult = Result<(), JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ClassFileResult` is never used
[INFO] [stdout]    --> src/error.rs:409:10
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub type ClassFileResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `MemoryResult` is never used
[INFO] [stdout]    --> src/error.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 | pub type MemoryResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_memory_error` is never used
[INFO] [stdout]    --> src/error.rs:430:8
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub fn to_memory_error<T: Into<MemoryError>>(err: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, `current_exception`, and `reflection_api` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub(crate) reflection_api: ReflectionApi,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `jit_manager`, `load_class`, `get_class`, `get_reflection_api`, and `get_class_reflection` are never used
[INFO] [stdout]    --> src/interpreter/mod.rs:218:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl Interpreter {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn jit_manager(&mut self) -> Option<&mut JitManager> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn load_class<P: AsRef<Path>>(&mut self, path: P) -> Result<(), JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn get_class(&self, name: &str) -> Option<&ClassFile> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub fn get_reflection_api(&self) -> &ReflectionApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |     pub fn get_class_reflection(&self, class_name: &str) -> Option<crate::reflection::ClassReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_1` is never used
[INFO] [stdout]  --> src/native.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const JNI_VERSION_1_1: i32 = 0x00010001;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_2` is never used
[INFO] [stdout]  --> src/native.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const JNI_VERSION_1_2: i32 = 0x00010002;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_4` is never used
[INFO] [stdout]  --> src/native.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const JNI_VERSION_1_4: i32 = 0x00010004;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_6` is never used
[INFO] [stdout]   --> src/native.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const JNI_VERSION_1_6: i32 = 0x00010006;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_8` is never used
[INFO] [stdout]   --> src/native.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const JNI_VERSION_1_8: i32 = 0x00010008;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNINativeInterface_` is never constructed
[INFO] [stdout]   --> src/native.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct JNINativeInterface_ {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `JNINativeMethod` is never used
[INFO] [stdout]   --> src/native.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub type JNINativeMethod = unsafe extern "C" fn(*mut c_void, *mut c_void, *mut *mut jvalue);
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: union `jvalue` is never used
[INFO] [stdout]   --> src/native.rs:34:11
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub union jvalue {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/native.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub trait NativeMethod: Send + Sync {
[INFO] [stdout]    |           ------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/native.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct SimpleNativeMethod {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 60 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_native` is never used
[INFO] [stdout]    --> src/native.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl NativeRegistry {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn is_native(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `value_to_jvalue` is never used
[INFO] [stdout]    --> src/native.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn value_to_jvalue(value: Value) -> jvalue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jvalue_to_value` is never used
[INFO] [stdout]    --> src/native.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub fn jvalue_to_value(jvalue: jvalue) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `field_type`, `modifiers`, and `value` are never read
[INFO] [stdout]   --> src/reflection.rs:7:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct FieldReflection {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout]  7 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]  8 |     pub field_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]  9 |     pub modifiers: u16,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 10 |     pub value: Option<Value>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldReflection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `parameter_types`, `return_type`, and `modifiers` are never read
[INFO] [stdout]   --> src/reflection.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct MethodReflection {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 16 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 17 |     pub parameter_types: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     pub return_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 19 |     pub modifiers: u16,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MethodReflection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `parameter_types` and `modifiers` are never read
[INFO] [stdout]   --> src/reflection.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct ConstructorReflection {
[INFO] [stdout]    |            --------------------- fields in this struct
[INFO] [stdout] 25 |     pub parameter_types: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub modifiers: u16,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstructorReflection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `methods`, `constructors`, `super_class`, `interfaces`, and `modifiers` are never read
[INFO] [stdout]   --> src/reflection.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct ClassReflection {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub methods: Vec<MethodReflection>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 35 |     pub constructors: Vec<ConstructorReflection>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 36 |     pub super_class: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 37 |     pub interfaces: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 38 |     pub modifiers: u16,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ClassReflection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `descriptor_to_type` is never used
[INFO] [stdout]   --> src/reflection.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn descriptor_to_type(descriptor: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `class_to_reflection` is never used
[INFO] [stdout]   --> src/reflection.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn class_to_reflection(class: &ClassFile) -> ClassReflection {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_method_params` is never used
[INFO] [stdout]    --> src/reflection.rs:139:4
[INFO] [stdout]     |
[INFO] [stdout] 139 | fn parse_method_params(descriptor: &str) -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_return_type` is never used
[INFO] [stdout]    --> src/reflection.rs:212:4
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn parse_return_type(descriptor: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/reflection.rs:261:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | impl ReflectionApi {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn get_methods(&self, class_name: &str) -> Vec<MethodReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     pub fn get_constructors(&self, class_name: &str) -> Vec<ConstructorReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub fn get_super_class(&self, class_name: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub fn get_interfaces(&self, class_name: &str) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn get_class_modifiers(&self, class_name: &str) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn is_interface(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn is_abstract(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn is_public(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     pub fn is_field_public(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 370 |     pub fn is_field_static(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |     pub fn is_method_public(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn is_method_static(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 421 |     pub fn set_field_value(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 437 |     pub fn invoke_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 |     pub fn get_object_class(&self, obj: &Value) -> Result<String, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PUBLIC` is never used
[INFO] [stdout]    --> src/reflection.rs:466:15
[INFO] [stdout]     |
[INFO] [stdout] 466 |     pub const PUBLIC: u16 = 0x0001;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PRIVATE` is never used
[INFO] [stdout]    --> src/reflection.rs:467:15
[INFO] [stdout]     |
[INFO] [stdout] 467 |     pub const PRIVATE: u16 = 0x0002;
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROTECTED` is never used
[INFO] [stdout]    --> src/reflection.rs:468:15
[INFO] [stdout]     |
[INFO] [stdout] 468 |     pub const PROTECTED: u16 = 0x0004;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STATIC` is never used
[INFO] [stdout]    --> src/reflection.rs:469:15
[INFO] [stdout]     |
[INFO] [stdout] 469 |     pub const STATIC: u16 = 0x0008;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FINAL` is never used
[INFO] [stdout]    --> src/reflection.rs:470:15
[INFO] [stdout]     |
[INFO] [stdout] 470 |     pub const FINAL: u16 = 0x0010;
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYNCHRONIZED` is never used
[INFO] [stdout]    --> src/reflection.rs:471:15
[INFO] [stdout]     |
[INFO] [stdout] 471 |     pub const SYNCHRONIZED: u16 = 0x0020;
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VOLATILE` is never used
[INFO] [stdout]    --> src/reflection.rs:472:15
[INFO] [stdout]     |
[INFO] [stdout] 472 |     pub const VOLATILE: u16 = 0x0040;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSIENT` is never used
[INFO] [stdout]    --> src/reflection.rs:473:15
[INFO] [stdout]     |
[INFO] [stdout] 473 |     pub const TRANSIENT: u16 = 0x0080;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NATIVE` is never used
[INFO] [stdout]    --> src/reflection.rs:474:15
[INFO] [stdout]     |
[INFO] [stdout] 474 |     pub const NATIVE: u16 = 0x0100;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INTERFACE` is never used
[INFO] [stdout]    --> src/reflection.rs:475:15
[INFO] [stdout]     |
[INFO] [stdout] 475 |     pub const INTERFACE: u16 = 0x0200;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ABSTRACT` is never used
[INFO] [stdout]    --> src/reflection.rs:476:15
[INFO] [stdout]     |
[INFO] [stdout] 476 |     pub const ABSTRACT: u16 = 0x0400;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STRICTFP` is never used
[INFO] [stdout]    --> src/reflection.rs:477:15
[INFO] [stdout]     |
[INFO] [stdout] 477 |     pub const STRICTFP: u16 = 0x0800;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNIEnv` is never constructed
[INFO] [stdout]   --> src/jni.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct JNIEnv {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jobject` is never used
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jclass` is never used
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jmethodID` is never used
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jfieldID` is never used
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNINativeMethod` is never constructed
[INFO] [stdout]   --> src/jni.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct JNINativeMethod {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jni_natives` is never used
[INFO] [stdout]   --> src/jni.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn jni_natives() -> &'static RwLock<HashMap<(String, String, String), usize>> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `register_natives` is never used
[INFO] [stdout]   --> src/jni.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn register_natives(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_native` is never used
[INFO] [stdout]   --> src/jni.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn find_native(class_name: &str, name: &str, signature: &str) -> Option<*mut c_void> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unregister_natives` is never used
[INFO] [stdout]   --> src/jni.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub fn unregister_natives(class_name: &str) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `type_name` and `elements` are never read
[INFO] [stdout]   --> src/annotations.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Annotation {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 12 |     pub type_name: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 13 |     pub elements: HashMap<String, ElementValue>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Annotation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/annotations.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 |     ConstInt(i32),
[INFO] [stdout]    |     -------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 19 -     ConstInt(i32),
[INFO] [stdout] 19 +     ConstInt(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/annotations.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ConstString(String),
[INFO] [stdout]    |     ----------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 23 -     ConstString(String),
[INFO] [stdout] 23 +     ConstString(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/annotations.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Array(Vec<ElementValue>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 -     Array(Vec<ElementValue>),
[INFO] [stdout] 27 +     Array(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ConstLong`, `ConstFloat`, `ConstDouble`, `Enum`, `Class`, and `Annotation` are never constructed
[INFO] [stdout]   --> src/annotations.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum ElementValue {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 19 |     ConstInt(i32),
[INFO] [stdout] 20 |     ConstLong(i64),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 21 |     ConstFloat(f32),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 22 |     ConstDouble(f64),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 23 |     ConstString(String),
[INFO] [stdout] 24 |     Enum(String, String),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 25 |     Class(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 26 |     Annotation(Annotation),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_signature` is never used
[INFO] [stdout]    --> src/annotations.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn get_signature(class: &ClassFile, attrs: &[AttributeInfo]) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_class_signature` is never used
[INFO] [stdout]    --> src/annotations.rs:142:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl ClassFile {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn get_class_signature(&self) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_annotations` and `get_signature_attr` are never used
[INFO] [stdout]    --> src/annotations.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout] 147 | impl MethodInfo {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 148 |     /// Get method-level annotations
[INFO] [stdout] 149 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn get_signature_attr(&self, class: &ClassFile) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_annotations` is never used
[INFO] [stdout]    --> src/annotations.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl FieldInfo {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 160 |     /// Get field-level annotations
[INFO] [stdout] 161 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_serializable` is never used
[INFO] [stdout]  --> src/serialization.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn is_serializable(_class_name: &str) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_value` is never used
[INFO] [stdout]   --> src/serialization.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn serialize_value(_v: &Value) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_compiled` is never read
[INFO] [stdout]   --> src/jit.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct MethodProfile {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub last_compiled: Option<Instant>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MethodProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_method_size` is never read
[INFO] [stdout]   --> src/jit.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct TieredCompilationConfig {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub max_method_size: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TieredCompilationConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IrGenerationError` is never constructed
[INFO] [stdout]    --> src/jit.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum JitError {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 123 |     IrGenerationError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JitError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `level` are never read
[INFO] [stdout]    --> src/jit.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct CompiledCode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 148 |     /// Function name
[INFO] [stdout] 149 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub level: CompilationLevel,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CompiledCode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `config` and `set_config` are never used
[INFO] [stdout]    --> src/jit.rs:313:12
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl CraneliftJitCompiler {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn config(&self) -> &TieredCompilationConfig {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 318 |     pub fn set_config(&mut self, config: TieredCompilationConfig) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `link_executable` is never used
[INFO] [stdout]    --> src/jit.rs:352:12
[INFO] [stdout]     |
[INFO] [stdout] 336 | impl AotCompiler {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 352 |     pub fn link_executable(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:550:5
[INFO] [stdout]     |
[INFO] [stdout] 544 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 550 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_or_compile_method` and `is_compiled` are never used
[INFO] [stdout]    --> src/jit.rs:573:12
[INFO] [stdout]     |
[INFO] [stdout] 553 | impl JitManager {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 573 |     pub fn get_or_compile_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 612 |     pub fn is_compiled(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LlvmIrGenerator` is never constructed
[INFO] [stdout]    --> src/jit.rs:530:16
[INFO] [stdout]     |
[INFO] [stdout] 530 |     pub struct LlvmIrGenerator {}
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/jit.rs:533:16
[INFO] [stdout]     |
[INFO] [stdout] 532 |     impl LlvmIrGenerator {
[INFO] [stdout]     |     -------------------- associated function in this implementation
[INFO] [stdout] 533 |         pub fn new(_module_name: &str) -> Result<Self, String> {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `trace_classes` is never read
[INFO] [stdout]   --> src/debug.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct DebugConfig {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub trace_classes: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DebugConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/debug.rs:52:12
[INFO] [stdout]     |
[INFO] [stdout]  42 | impl JvmDebugger {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn log_method_entry(&self, class_name: &str, method_name: &str, method_descriptor: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn log_method_exit(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn log_class_loaded(&self, class_name: &str, source: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn log_memory_access(&self, address: u32, operation: &str, value: Option<&Value>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn log_exception(&self, exception: &str, handler_pc: Option<usize>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn log_gc(&self, freed_objects: usize, freed_bytes: usize) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn instruction_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn reset_instruction_count(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_max_samples`, `set_enabled`, `method_counts`, `method_time_ns`, and `hotspots` are never used
[INFO] [stdout]    --> src/profiler.rs:45:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl Profiler {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub fn with_max_samples(max_samples: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn method_counts(&self) -> HashMap<String, u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn method_time_ns(&self) -> HashMap<String, u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn hotspots(&self, top_n: usize) -> Vec<(String, u64, u64)> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_capacity`, `is_enabled`, and `clear` are never used
[INFO] [stdout]   --> src/trace.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TraceRecorder {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn with_capacity(max_steps: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn is_enabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `fixed_timestamp_ns` is never read
[INFO] [stdout]   --> src/deterministic.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DeterministicConfig {
[INFO] [stdout]    |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub fixed_timestamp_ns: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeterministicConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `hft` is never used
[INFO] [stdout]   --> src/deterministic.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl DeterministicConfig {
[INFO] [stdout]    | ------------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn hft() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeterministicMode` is never constructed
[INFO] [stdout]   --> src/deterministic.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct DeterministicMode {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enabled`, `set_enabled`, `rng_seed`, and `timestamp_ns` are never used
[INFO] [stdout]   --> src/deterministic.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl DeterministicMode {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 61 |     pub fn new(config: DeterministicConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn enabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn rng_seed(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn timestamp_ns(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stack_overflow_check` is never read
[INFO] [stdout]   --> src/security.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct SecurityConfig {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub stack_overflow_check: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SecurityConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_stack_overflow`, `violation_count`, and `config` are never used
[INFO] [stdout]   --> src/security.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Sanitizer {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn check_stack_overflow(&self, current_depth: usize, max_depth: usize) -> Result<(), String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn violation_count(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn config(&self) -> &SecurityConfig {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `target_class`, `target_ref`, and `interceptor` are never read
[INFO] [stdout]   --> src/aop.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Proxy {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  8 |     pub target_class: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]  9 |     pub target_ref: u32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 10 |     pub interceptor: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Proxy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AdviceKind` is never used
[INFO] [stdout]   --> src/aop.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum AdviceKind {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pointcut` is never constructed
[INFO] [stdout]   --> src/aop.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Pointcut {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AopRegistry` is never constructed
[INFO] [stdout]   --> src/aop.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct AopRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_advice`, and `matches` are never used
[INFO] [stdout]   --> src/aop.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl AopRegistry {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 35 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn add_advice(&mut self, pointcut: Pointcut, kind: AdviceKind) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn matches(&self, class_name: &str, method_name: &str) -> Option<AdviceKind> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `K8sOperatorConfig` is never constructed
[INFO] [stdout]  --> src/cloud.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct K8sOperatorConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DistributedObjectRef` is never constructed
[INFO] [stdout]   --> src/cloud.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct DistributedObjectRef {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HotReloadManager` is never constructed
[INFO] [stdout]   --> src/hot_reload.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct HotReloadManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_enabled`, `register_reloadable`, `class_file_changed`, `record_class_loaded`, and `replace_method` are never used
[INFO] [stdout]   --> src/hot_reload.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl HotReloadManager {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn register_reloadable(&mut self, class: &str, _method: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn class_file_changed(&self, path: &Path) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn record_class_loaded(&mut self, class_name: &str, path: &Path) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn replace_method(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `JavaExtension` is never used
[INFO] [stdout]   --> src/extensions.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub trait JavaExtension: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `extensions_loaded` is never read
[INFO] [stdout]   --> src/extensions.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct ExtensionRegistry {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 49 |     native_methods: RwLock<HashMap<String, NativeCallback>>,
[INFO] [stdout] 50 |     extensions_loaded: RwLock<Vec<String>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `load` and `loaded_extensions` are never used
[INFO] [stdout]    --> src/extensions.rs:87:12
[INFO] [stdout]     |
[INFO] [stdout]  53 | impl ExtensionRegistry {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn load(&self, ext: &dyn JavaExtension) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn loaded_extensions(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `GLOBAL_REGISTRY` is never used
[INFO] [stdout]    --> src/extensions.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | static GLOBAL_REGISTRY: OnceLock<RwLock<ExtensionRegistry>> = OnceLock::new();
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `global` is never used
[INFO] [stdout]    --> src/extensions.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl ExtensionRegistry {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 124 |     /// Global extension registry (used by Interpreter when interop is enabled)
[INFO] [stdout] 125 |     pub fn global() -> &'static RwLock<ExtensionRegistry> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 44.10s
[INFO] running `Command { std: "docker" "inspect" "14a842a5fce8c4dfdf250c0a006ca733d7b0608325ca3c23073e6c1431ef11f5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14a842a5fce8c4dfdf250c0a006ca733d7b0608325ca3c23073e6c1431ef11f5", kill_on_drop: false }`
[INFO] [stdout] 14a842a5fce8c4dfdf250c0a006ca733d7b0608325ca3c23073e6c1431ef11f5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 84061999bbd8d13ecbe13126b40490b8d3baac64b66a2d248a364eaeccd13eda
[INFO] running `Command { std: "docker" "start" "-a" "84061999bbd8d13ecbe13126b40490b8d3baac64b66a2d248a364eaeccd13eda", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `JvmError`
[INFO] [stderr]  --> src/interpreter/builtins.rs:4:43
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::error::{to_runtime_error_enum, JvmError, RuntimeError};
[INFO] [stderr]   |                                           ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Value`
[INFO] [stderr]   --> src/interpreter/mod.rs:22:41
[INFO] [stderr]    |
[INFO] [stderr] 22 | use crate::memory::{Memory, StackFrame, Value};
[INFO] [stderr]    |                                         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ProfileGuard`
[INFO] [stderr]   --> src/interpreter/mod.rs:24:23
[INFO] [stderr]    |
[INFO] [stderr] 24 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stderr]    |                       ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type `jobject` should have an upper camel case name
[INFO] [stderr]   --> src/jni.rs:18:10
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub type jobject = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `jclass` should have an upper camel case name
[INFO] [stderr]   --> src/jni.rs:21:10
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub type jclass = *mut c_void;
[INFO] [stderr]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stderr] 
[INFO] [stderr] warning: type `jmethodID` should have an upper camel case name
[INFO] [stderr]   --> src/jni.rs:24:10
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub type jmethodID = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stderr] 
[INFO] [stderr] warning: type `jfieldID` should have an upper camel case name
[INFO] [stderr]   --> src/jni.rs:27:10
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub type jfieldID = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashSet`
[INFO] [stderr]   --> src/jit.rs:15:33
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]    |                                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]   --> src/jit.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | use std::sync::Arc;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/jit.rs:527:9
[INFO] [stderr]     |
[INFO] [stderr] 527 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cell::Cell`
[INFO] [stderr]  --> src/deterministic.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::cell::Cell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `descriptor`
[INFO] [stderr]   --> src/interpreter/invocation.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 58 |         descriptor: &str,
[INFO] [stderr]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `class_name`
[INFO] [stderr]    --> src/reflection.rs:403:32
[INFO] [stderr]     |
[INFO] [stderr] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stderr]     |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `field_name`
[INFO] [stderr]    --> src/reflection.rs:410:48
[INFO] [stderr]     |
[INFO] [stderr] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stderr]     |                                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `field_name`
[INFO] [stderr]    --> src/reflection.rs:424:9
[INFO] [stderr]     |
[INFO] [stderr] 424 |         field_name: &str,
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/reflection.rs:425:9
[INFO] [stderr]     |
[INFO] [stderr] 425 |         value: Value,
[INFO] [stderr]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `method_name`
[INFO] [stderr]    --> src/reflection.rs:440:9
[INFO] [stderr]     |
[INFO] [stderr] 440 |         method_name: &str,
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_method_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `code_attr`
[INFO] [stderr]    --> src/jit.rs:231:13
[INFO] [stderr]     |
[INFO] [stderr] 231 |         let code_attr = method
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stderr] 
[INFO] [stderr] warning: associated constant `GROWTH_FACTOR` is never used
[INFO] [stderr]   --> src/allocator.rs:40:11
[INFO] [stderr]    |
[INFO] [stderr] 35 | impl ArenaAllocator {
[INFO] [stderr]    | ------------------- associated constant in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `string_cache`, `exception_handlers`, and `current_exception` are never read
[INFO] [stderr]   --> src/interpreter/mod.rs:41:16
[INFO] [stderr]    |
[INFO] [stderr] 38 | pub struct Interpreter {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stderr]    |                ^^^^^^^^^^^^
[INFO] [stderr] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stderr]   --> src/interpreter/mod.rs:59:9
[INFO] [stderr]    |
[INFO] [stderr] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stderr]    |                   ---------------- fields in this struct
[INFO] [stderr] 59 |     pub start_pc: usize,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 60 |     pub end_pc: usize,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 61 |     pub handler_pc: usize,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 62 |     pub catch_type: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `resolve_interface_method` is never used
[INFO] [stderr]   --> src/interpreter/invocation.rs:45:19
[INFO] [stderr]    |
[INFO] [stderr] 14 | impl Interpreter {
[INFO] [stderr]    | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stderr]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `native_registry` is never read
[INFO] [stderr]    --> src/jit.rs:550:5
[INFO] [stderr]     |
[INFO] [stderr] 544 | pub struct JitManager {
[INFO] [stderr]     |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 550 |     native_registry: NativeRegistry,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `jvmrs` (lib) generated 23 warnings (run `cargo fix --lib -p jvmrs` to apply 14 suggestions)
[INFO] [stderr] warning: unused variable: `output_path`
[INFO] [stderr]    --> src/main.rs:468:17
[INFO] [stderr]     |
[INFO] [stderr] 468 |     if let Some(ref output_path) = wasm_output {
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `minor_version`, `access_flags`, `interfaces`, and `fields` are never read
[INFO] [stderr]   --> src/class_file.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct ClassFile {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 13 |     pub magic: u32,
[INFO] [stderr] 14 |     pub minor_version: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 17 |     pub access_flags: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     pub interfaces: Vec<u16>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 21 |     pub fields: Vec<FieldInfo>,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ClassFile` 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: fields `reference_kind` and `reference_index` are never read
[INFO] [stderr]   --> src/class_file.rs:67:9
[INFO] [stderr]    |
[INFO] [stderr] 66 |     ConstantMethodHandle {
[INFO] [stderr]    |     -------------------- fields in this variant
[INFO] [stderr] 67 |         reference_kind: u8,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr] 68 |         reference_index: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `descriptor_index` is never read
[INFO] [stderr]   --> src/class_file.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 70 |     ConstantMethodType {
[INFO] [stderr]    |     ------------------ field in this variant
[INFO] [stderr] 71 |         descriptor_index: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `access_flags`, `name_index`, `descriptor_index`, and `attributes` are never read
[INFO] [stderr]   --> src/class_file.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 81 | pub struct FieldInfo {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 82 |     pub access_flags: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 83 |     pub name_index: u16,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 84 |     pub descriptor_index: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 85 |     pub attributes: Vec<AttributeInfo>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `InvalidAttributeLength` is never constructed
[INFO] [stderr]    --> src/class_file.rs:110:5
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub enum ParseError {
[INFO] [stderr]     |          ---------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 110 |     InvalidAttributeLength,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `default_cache_dir` is never used
[INFO] [stderr]   --> src/class_cache.rs:48:8
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub fn default_cache_dir() -> PathBuf {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `metrics`, `with_cache_dir`, `clear_cache`, and `reload_class` are never used
[INFO] [stderr]    --> src/class_loader.rs:52:12
[INFO] [stderr]     |
[INFO] [stderr]  30 | impl ClassLoader {
[INFO] [stderr]     | ---------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  52 |     pub fn metrics(&self) -> &ClassLoadMetrics {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  57 |     pub fn with_cache_dir(mut self, cache_dir: PathBuf) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 186 |     pub fn clear_cache(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 191 |     pub fn reload_class(&mut self, class_name: &str) -> Result<(), JvmError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_system_classpath` is never used
[INFO] [stderr]    --> src/class_loader.rs:214:8
[INFO] [stderr]     |
[INFO] [stderr] 214 | pub fn get_system_classpath() -> Vec<PathBuf> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `set_debugger` is never used
[INFO] [stderr]   --> src/memory/mod.rs:56:12
[INFO] [stderr]    |
[INFO] [stderr] 39 | impl Memory {
[INFO] [stderr]    | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 56 |     pub fn set_debugger(&mut self, debugger: JvmDebugger) {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Boolean`, `Byte`, `Char`, `Short`, and `ReturnAddress` are never constructed
[INFO] [stderr]   --> src/memory/value.rs:6:5
[INFO] [stderr]    |
[INFO] [stderr]  5 | pub enum Value {
[INFO] [stderr]    |          ----- variants in this enum
[INFO] [stderr]  6 |     Boolean(bool),
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]  7 |     Byte(i8),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]  8 |     Char(u16),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]  9 |     Short(i16),
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 15 |     ReturnAddress(u32),
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Value` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `wait`, `notify`, and `notify_all` are never used
[INFO] [stderr]    --> src/memory/monitor.rs:62:12
[INFO] [stderr]     |
[INFO] [stderr]  11 | impl Monitor {
[INFO] [stderr]     | ------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  62 |     pub fn wait(&mut self, thread_id: u32) -> bool {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr]  86 |     pub fn notify(&mut self) -> bool {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 101 |     pub fn notify_all(&mut self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `marked` is never read
[INFO] [stderr]   --> src/memory/heap.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct Heap {
[INFO] [stderr]    |            ---- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 20 |     marked: HashSet<u32>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Heap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_array_mut`, `mark`, `unmark_all`, `collect_garbage`, `memory_used`, and `owns_monitor` are never used
[INFO] [stderr]    --> src/memory/heap.rs:150:12
[INFO] [stderr]     |
[INFO] [stderr]  25 | impl Heap {
[INFO] [stderr]     | --------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 150 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 154 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 161 |     pub fn unmark_all(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 168 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 234 |     pub fn memory_used(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 460 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `pop_frame`, `current_frame`, and `current_frame_mut` are never used
[INFO] [stderr]   --> src/memory/stack.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl JVMStack {
[INFO] [stderr]    | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 20 |     pub fn pop_frame(&mut self) -> Option<StackFrame> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     pub fn current_frame(&self) -> Option<&StackFrame> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     pub fn current_frame_mut(&mut self) -> Option<&mut StackFrame> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `GROWTH_FACTOR`, `with_debugger`, `get_object_mut`, `iter_objects`, `mark`, and `object_count` are never used
[INFO] [stderr]    --> src/allocator.rs:40:11
[INFO] [stderr]     |
[INFO] [stderr]  35 | impl ArenaAllocator {
[INFO] [stderr]     | ------------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stderr]     |           ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  51 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 105 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 |     pub fn iter_objects(&self) -> impl Iterator<Item = (u32, &HeapObject)> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 134 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 141 |     pub fn object_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ArrayArena` is never constructed
[INFO] [stderr]    --> src/allocator.rs:157:12
[INFO] [stderr]     |
[INFO] [stderr] 157 | pub struct ArrayArena {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/allocator.rs:164:11
[INFO] [stderr]     |
[INFO] [stderr] 163 | impl ArrayArena {
[INFO] [stderr]     | --------------- associated items in this implementation
[INFO] [stderr] 164 |     const INITIAL_CAPACITY: usize = 128;
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 165 |
[INFO] [stderr] 166 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 174 |     pub fn allocate(&mut self, array: HeapArray) -> u32 {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 191 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 198 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 205 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 213 |     pub fn iter_arrays(&self) -> impl Iterator<Item = (u32, &HeapArray)> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 222 |     pub fn array_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `major_gc_count` is never read
[INFO] [stderr]   --> src/gc.rs:53:5
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub struct GenerationalHeap {
[INFO] [stderr]    |            ---------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 53 |     major_gc_count: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `GenerationalHeap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/gc.rs:74:12
[INFO] [stderr]     |
[INFO] [stderr]  56 | impl GenerationalHeap {
[INFO] [stderr]     | --------------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  74 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 151 |     fn get_gen_object_mut(&mut self, addr: u32) -> Option<&mut GenObject> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 163 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 172 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 184 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 278 |     pub fn major_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 324 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 329 |     pub fn mark_object(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 336 |     pub fn unmark_all(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 347 |     pub fn object_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 351 |     pub fn array_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 355 |     pub fn memory_used(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 380 |     pub fn array_length(&self, addr: u32) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 396 |     pub fn array_get(&self, addr: u32, index: usize) -> Result<Value, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 441 |     pub fn array_set(&mut self, addr: u32, index: usize, value: Value) -> Result<(), MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 507 |     pub fn monitor_enter(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 525 |     pub fn monitor_exit(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 541 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `addr` is never used
[INFO] [stderr]    --> src/gc.rs:575:12
[INFO] [stderr]     |
[INFO] [stderr] 567 | impl ScopedRoot {
[INFO] [stderr]     | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 575 |     pub fn addr(&self) -> u32 {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `MemoryError` is never constructed
[INFO] [stderr]   --> src/error.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub enum JvmError {
[INFO] [stderr]    |          -------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 13 |     MemoryError(MemoryError),
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `JvmError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]   --> src/error.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub enum ParseError {
[INFO] [stderr]    |          ---------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 52 |     UnsupportedVersion(u16, u16),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 53 |     /// Invalid constant pool tag
[INFO] [stderr] 54 |     InvalidConstantPoolTag(u8),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 55 |     /// Invalid attribute length
[INFO] [stderr] 56 |     InvalidAttributeLength,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 57 |     /// Invalid UTF-8 string in constant pool
[INFO] [stderr] 58 |     InvalidUtf8String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 59 |     /// Invalid method descriptor
[INFO] [stderr] 60 |     InvalidMethodDescriptor(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 61 |     /// Invalid field descriptor
[INFO] [stderr] 62 |     InvalidFieldDescriptor(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 63 |     /// Invalid opcode
[INFO] [stderr] 64 |     InvalidOpcode(u8),
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 65 |     /// Invalid bytecode
[INFO] [stderr] 66 |     InvalidBytecode(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]    --> src/error.rs:112:5
[INFO] [stderr]     |
[INFO] [stderr] 108 | pub enum RuntimeError {
[INFO] [stderr]     |          ------------ variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 112 |     StackOverflow,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 116 |     ArrayIndexOutOfBounds(usize, usize),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 128 |     InvalidTypeConversion(String, String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 132 |     ArithmeticOverflow,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 136 |     InvalidArrayType(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 137 |     /// Invalid array length
[INFO] [stderr] 138 |     InvalidArrayLength(usize),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 146 |     IllegalState(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 152 |     ExceptionThrown(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 153 |     /// Class cast exception
[INFO] [stderr] 154 |     ClassCastException(String, String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 155 |     /// Array store exception
[INFO] [stderr] 156 |     ArrayStoreException,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 160 |     IllegalAccessException(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 161 |     /// Instantiation exception
[INFO] [stderr] 162 |     InstantiationException(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 163 |     /// String index out of bounds
[INFO] [stderr] 164 |     StringIndexOutOfBounds(usize, usize),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `RuntimeError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]    --> src/error.rs:242:5
[INFO] [stderr]     |
[INFO] [stderr] 230 | pub enum MemoryError {
[INFO] [stderr]     |          ----------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 242 |     HeapCorruption,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 243 |     /// Garbage collection failed
[INFO] [stderr] 244 |     GcError(String),
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 245 |     /// Memory limit exceeded
[INFO] [stderr] 246 |     MemoryLimitExceeded(usize),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 247 |     /// Invalid object header
[INFO] [stderr] 248 |     InvalidObjectHeader,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 249 |     /// Invalid array header
[INFO] [stderr] 250 |     InvalidArrayHeader,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 251 |     /// Memory allocation failed
[INFO] [stderr] 252 |     AllocationFailed(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 258 |     ArrayIndexOutOfBounds(usize, usize), // index, length
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `MemoryError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]    --> src/error.rs:312:5
[INFO] [stderr]     |
[INFO] [stderr] 306 | pub enum ClassLoadingError {
[INFO] [stderr]     |          ----------------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 312 |     ClassCircularityError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 316 |     UnsupportedClassVersion(String, u16, u16),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 317 |     /// Class verification failed
[INFO] [stderr] 318 |     VerificationFailed(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 319 |     /// Linkage error
[INFO] [stderr] 320 |     LinkageError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 321 |     /// Illegal access error
[INFO] [stderr] 322 |     IllegalAccessError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 323 |     /// Instantiation error
[INFO] [stderr] 324 |     InstantiationError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 325 |     /// Class loader constraint violation
[INFO] [stderr] 326 |     ClassLoaderConstraintViolation(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ClassLoadingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `NativeLibraryNotFound`, `NativeLibraryLoadFailed`, and `UnsatisfiedLinkError` are never constructed
[INFO] [stderr]    --> src/error.rs:370:5
[INFO] [stderr]     |
[INFO] [stderr] 364 | pub enum NativeError {
[INFO] [stderr]     |          ----------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 370 |     NativeLibraryNotFound(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 371 |     /// Native library load failed
[INFO] [stderr] 372 |     NativeLibraryLoadFailed(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 373 |     /// Unsatisfied link error
[INFO] [stderr] 374 |     UnsatisfiedLinkError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `NativeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `JvmResult` is never used
[INFO] [stderr]    --> src/error.rs:403:10
[INFO] [stderr]     |
[INFO] [stderr] 403 | pub type JvmResult<T> = Result<T, JvmError>;
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `InterpreterResult` is never used
[INFO] [stderr]    --> src/error.rs:406:10
[INFO] [stderr]     |
[INFO] [stderr] 406 | pub type InterpreterResult = Result<(), JvmError>;
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `ClassFileResult` is never used
[INFO] [stderr]    --> src/error.rs:409:10
[INFO] [stderr]     |
[INFO] [stderr] 409 | pub type ClassFileResult<T> = Result<T, JvmError>;
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `MemoryResult` is never used
[INFO] [stderr]    --> src/error.rs:412:10
[INFO] [stderr]     |
[INFO] [stderr] 412 | pub type MemoryResult<T> = Result<T, JvmError>;
[INFO] [stderr]     |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `to_memory_error` is never used
[INFO] [stderr]    --> src/error.rs:430:8
[INFO] [stderr]     |
[INFO] [stderr] 430 | pub fn to_memory_error<T: Into<MemoryError>>(err: T) -> JvmError {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `string_cache`, `exception_handlers`, `current_exception`, and `reflection_api` are never read
[INFO] [stderr]   --> src/interpreter/mod.rs:41:16
[INFO] [stderr]    |
[INFO] [stderr] 38 | pub struct Interpreter {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stderr]    |                ^^^^^^^^^^^^
[INFO] [stderr] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 47 |     pub(crate) reflection_api: ReflectionApi,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `jit_manager`, `load_class`, `get_class`, `get_reflection_api`, and `get_class_reflection` are never used
[INFO] [stderr]    --> src/interpreter/mod.rs:218:12
[INFO] [stderr]     |
[INFO] [stderr]  65 | impl Interpreter {
[INFO] [stderr]     | ---------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 218 |     pub fn jit_manager(&mut self) -> Option<&mut JitManager> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 223 |     pub fn load_class<P: AsRef<Path>>(&mut self, path: P) -> Result<(), JvmError> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 240 |     pub fn get_class(&self, name: &str) -> Option<&ClassFile> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 245 |     pub fn get_reflection_api(&self) -> &ReflectionApi {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 250 |     pub fn get_class_reflection(&self, class_name: &str) -> Option<crate::reflection::ClassReflection> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_1` is never used
[INFO] [stderr]  --> src/native.rs:7:11
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub const JNI_VERSION_1_1: i32 = 0x00010001;
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_2` is never used
[INFO] [stderr]  --> src/native.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub const JNI_VERSION_1_2: i32 = 0x00010002;
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_4` is never used
[INFO] [stderr]  --> src/native.rs:9:11
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub const JNI_VERSION_1_4: i32 = 0x00010004;
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_6` is never used
[INFO] [stderr]   --> src/native.rs:10:11
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub const JNI_VERSION_1_6: i32 = 0x00010006;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_8` is never used
[INFO] [stderr]   --> src/native.rs:11:11
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub const JNI_VERSION_1_8: i32 = 0x00010008;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `JNINativeInterface_` is never constructed
[INFO] [stderr]   --> src/native.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct JNINativeInterface_ {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `JNINativeMethod` is never used
[INFO] [stderr]   --> src/native.rs:30:10
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub type JNINativeMethod = unsafe extern "C" fn(*mut c_void, *mut c_void, *mut *mut jvalue);
[INFO] [stderr]    |          ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: union `jvalue` is never used
[INFO] [stderr]   --> src/native.rs:34:11
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub union jvalue {
[INFO] [stderr]    |           ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `name` is never used
[INFO] [stderr]   --> src/native.rs:55:8
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub trait NativeMethod: Send + Sync {
[INFO] [stderr]    |           ------------ method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 55 |     fn name(&self) -> &str;
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `name` is never read
[INFO] [stderr]   --> src/native.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub struct SimpleNativeMethod {
[INFO] [stderr]    |            ------------------ field in this struct
[INFO] [stderr] 60 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_native` is never used
[INFO] [stderr]    --> src/native.rs:130:12
[INFO] [stderr]     |
[INFO] [stderr]  99 | impl NativeRegistry {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 130 |     pub fn is_native(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `value_to_jvalue` is never used
[INFO] [stderr]    --> src/native.rs:144:8
[INFO] [stderr]     |
[INFO] [stderr] 144 | pub fn value_to_jvalue(value: Value) -> jvalue {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `jvalue_to_value` is never used
[INFO] [stderr]    --> src/native.rs:170:8
[INFO] [stderr]     |
[INFO] [stderr] 170 | pub fn jvalue_to_value(jvalue: jvalue) -> Value {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name`, `field_type`, `modifiers`, and `value` are never read
[INFO] [stderr]   --> src/reflection.rs:7:9
[INFO] [stderr]    |
[INFO] [stderr]  6 | pub struct FieldReflection {
[INFO] [stderr]    |            --------------- fields in this struct
[INFO] [stderr]  7 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr]  8 |     pub field_type: String,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]  9 |     pub modifiers: u16,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 10 |     pub value: Option<Value>,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FieldReflection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name`, `parameter_types`, `return_type`, and `modifiers` are never read
[INFO] [stderr]   --> src/reflection.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct MethodReflection {
[INFO] [stderr]    |            ---------------- fields in this struct
[INFO] [stderr] 16 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 17 |     pub parameter_types: Vec<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 18 |     pub return_type: String,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 19 |     pub modifiers: u16,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MethodReflection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `parameter_types` and `modifiers` are never read
[INFO] [stderr]   --> src/reflection.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct ConstructorReflection {
[INFO] [stderr]    |            --------------------- fields in this struct
[INFO] [stderr] 25 |     pub parameter_types: Vec<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 26 |     pub modifiers: u16,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ConstructorReflection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `methods`, `constructors`, `super_class`, `interfaces`, and `modifiers` are never read
[INFO] [stderr]   --> src/reflection.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub struct ClassReflection {
[INFO] [stderr]    |            --------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 34 |     pub methods: Vec<MethodReflection>,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 35 |     pub constructors: Vec<ConstructorReflection>,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 36 |     pub super_class: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 37 |     pub interfaces: Vec<String>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 38 |     pub modifiers: u16,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ClassReflection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `descriptor_to_type` is never used
[INFO] [stderr]   --> src/reflection.rs:42:4
[INFO] [stderr]    |
[INFO] [stderr] 42 | fn descriptor_to_type(descriptor: &str) -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `class_to_reflection` is never used
[INFO] [stderr]   --> src/reflection.rs:75:8
[INFO] [stderr]    |
[INFO] [stderr] 75 | pub fn class_to_reflection(class: &ClassFile) -> ClassReflection {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_method_params` is never used
[INFO] [stderr]    --> src/reflection.rs:139:4
[INFO] [stderr]     |
[INFO] [stderr] 139 | fn parse_method_params(descriptor: &str) -> Vec<String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_return_type` is never used
[INFO] [stderr]    --> src/reflection.rs:212:4
[INFO] [stderr]     |
[INFO] [stderr] 212 | fn parse_return_type(descriptor: &str) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/reflection.rs:261:12
[INFO] [stderr]     |
[INFO] [stderr] 223 | impl ReflectionApi {
[INFO] [stderr]     | ------------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 261 |     pub fn get_methods(&self, class_name: &str) -> Vec<MethodReflection> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 277 |     pub fn get_constructors(&self, class_name: &str) -> Vec<ConstructorReflection> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 293 |     pub fn get_super_class(&self, class_name: &str) -> Option<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 309 |     pub fn get_interfaces(&self, class_name: &str) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 325 |     pub fn get_class_modifiers(&self, class_name: &str) -> u16 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 341 |     pub fn is_interface(&self, class_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 347 |     pub fn is_abstract(&self, class_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 353 |     pub fn is_public(&self, class_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 359 |     pub fn is_field_public(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 370 |     pub fn is_field_static(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 381 |     pub fn is_method_public(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 392 |     pub fn is_method_static(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 403 |     pub fn new_instance(&self, class_name: &str, _args: &[Value]) -> Result<Value, String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 410 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 421 |     pub fn set_field_value(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 437 |     pub fn invoke_method(
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 453 |     pub fn get_object_class(&self, obj: &Value) -> Result<String, String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PUBLIC` is never used
[INFO] [stderr]    --> src/reflection.rs:466:15
[INFO] [stderr]     |
[INFO] [stderr] 466 |     pub const PUBLIC: u16 = 0x0001;
[INFO] [stderr]     |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PRIVATE` is never used
[INFO] [stderr]    --> src/reflection.rs:467:15
[INFO] [stderr]     |
[INFO] [stderr] 467 |     pub const PRIVATE: u16 = 0x0002;
[INFO] [stderr]     |               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PROTECTED` is never used
[INFO] [stderr]    --> src/reflection.rs:468:15
[INFO] [stderr]     |
[INFO] [stderr] 468 |     pub const PROTECTED: u16 = 0x0004;
[INFO] [stderr]     |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `STATIC` is never used
[INFO] [stderr]    --> src/reflection.rs:469:15
[INFO] [stderr]     |
[INFO] [stderr] 469 |     pub const STATIC: u16 = 0x0008;
[INFO] [stderr]     |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FINAL` is never used
[INFO] [stderr]    --> src/reflection.rs:470:15
[INFO] [stderr]     |
[INFO] [stderr] 470 |     pub const FINAL: u16 = 0x0010;
[INFO] [stderr]     |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `SYNCHRONIZED` is never used
[INFO] [stderr]    --> src/reflection.rs:471:15
[INFO] [stderr]     |
[INFO] [stderr] 471 |     pub const SYNCHRONIZED: u16 = 0x0020;
[INFO] [stderr]     |               ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `VOLATILE` is never used
[INFO] [stderr]    --> src/reflection.rs:472:15
[INFO] [stderr]     |
[INFO] [stderr] 472 |     pub const VOLATILE: u16 = 0x0040;
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TRANSIENT` is never used
[INFO] [stderr]    --> src/reflection.rs:473:15
[INFO] [stderr]     |
[INFO] [stderr] 473 |     pub const TRANSIENT: u16 = 0x0080;
[INFO] [stderr]     |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `NATIVE` is never used
[INFO] [stderr]    --> src/reflection.rs:474:15
[INFO] [stderr]     |
[INFO] [stderr] 474 |     pub const NATIVE: u16 = 0x0100;
[INFO] [stderr]     |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `INTERFACE` is never used
[INFO] [stderr]    --> src/reflection.rs:475:15
[INFO] [stderr]     |
[INFO] [stderr] 475 |     pub const INTERFACE: u16 = 0x0200;
[INFO] [stderr]     |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ABSTRACT` is never used
[INFO] [stderr]    --> src/reflection.rs:476:15
[INFO] [stderr]     |
[INFO] [stderr] 476 |     pub const ABSTRACT: u16 = 0x0400;
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `STRICTFP` is never used
[INFO] [stderr]    --> src/reflection.rs:477:15
[INFO] [stderr]     |
[INFO] [stderr] 477 |     pub const STRICTFP: u16 = 0x0800;
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `JNIEnv` is never constructed
[INFO] [stderr]   --> src/jni.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct JNIEnv {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `jobject` is never used
[INFO] [stderr]   --> src/jni.rs:18:10
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub type jobject = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `jclass` is never used
[INFO] [stderr]   --> src/jni.rs:21:10
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub type jclass = *mut c_void;
[INFO] [stderr]    |          ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `jmethodID` is never used
[INFO] [stderr]   --> src/jni.rs:24:10
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub type jmethodID = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `jfieldID` is never used
[INFO] [stderr]   --> src/jni.rs:27:10
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub type jfieldID = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `JNINativeMethod` is never constructed
[INFO] [stderr]   --> src/jni.rs:31:12
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub struct JNINativeMethod {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `jni_natives` is never used
[INFO] [stderr]   --> src/jni.rs:38:4
[INFO] [stderr]    |
[INFO] [stderr] 38 | fn jni_natives() -> &'static RwLock<HashMap<(String, String, String), usize>> {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `register_natives` is never used
[INFO] [stderr]   --> src/jni.rs:44:8
[INFO] [stderr]    |
[INFO] [stderr] 44 | pub fn register_natives(
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_native` is never used
[INFO] [stderr]   --> src/jni.rs:70:8
[INFO] [stderr]    |
[INFO] [stderr] 70 | pub fn find_native(class_name: &str, name: &str, signature: &str) -> Option<*mut c_void> {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unregister_natives` is never used
[INFO] [stderr]   --> src/jni.rs:81:8
[INFO] [stderr]    |
[INFO] [stderr] 81 | pub fn unregister_natives(class_name: &str) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `type_name` and `elements` are never read
[INFO] [stderr]   --> src/annotations.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct Annotation {
[INFO] [stderr]    |            ---------- fields in this struct
[INFO] [stderr] 12 |     pub type_name: String,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 13 |     pub elements: HashMap<String, ElementValue>,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Annotation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/annotations.rs:19:14
[INFO] [stderr]    |
[INFO] [stderr] 19 |     ConstInt(i32),
[INFO] [stderr]    |     -------- ^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 19 -     ConstInt(i32),
[INFO] [stderr] 19 +     ConstInt(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/annotations.rs:23:17
[INFO] [stderr]    |
[INFO] [stderr] 23 |     ConstString(String),
[INFO] [stderr]    |     ----------- ^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 23 -     ConstString(String),
[INFO] [stderr] 23 +     ConstString(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/annotations.rs:27:11
[INFO] [stderr]    |
[INFO] [stderr] 27 |     Array(Vec<ElementValue>),
[INFO] [stderr]    |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 27 -     Array(Vec<ElementValue>),
[INFO] [stderr] 27 +     Array(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: variants `ConstLong`, `ConstFloat`, `ConstDouble`, `Enum`, `Class`, and `Annotation` are never constructed
[INFO] [stderr]   --> src/annotations.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub enum ElementValue {
[INFO] [stderr]    |          ------------ variants in this enum
[INFO] [stderr] 19 |     ConstInt(i32),
[INFO] [stderr] 20 |     ConstLong(i64),
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 21 |     ConstFloat(f32),
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 22 |     ConstDouble(f64),
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 23 |     ConstString(String),
[INFO] [stderr] 24 |     Enum(String, String),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 25 |     Class(String),
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 26 |     Annotation(Annotation),
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_signature` is never used
[INFO] [stderr]    --> src/annotations.rs:125:8
[INFO] [stderr]     |
[INFO] [stderr] 125 | pub fn get_signature(class: &ClassFile, attrs: &[AttributeInfo]) -> Option<String> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_class_signature` is never used
[INFO] [stderr]    --> src/annotations.rs:142:12
[INFO] [stderr]     |
[INFO] [stderr] 135 | impl ClassFile {
[INFO] [stderr]     | -------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 142 |     pub fn get_class_signature(&self) -> Option<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_annotations` and `get_signature_attr` are never used
[INFO] [stderr]    --> src/annotations.rs:149:12
[INFO] [stderr]     |
[INFO] [stderr] 147 | impl MethodInfo {
[INFO] [stderr]     | --------------- methods in this implementation
[INFO] [stderr] 148 |     /// Get method-level annotations
[INFO] [stderr] 149 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 154 |     pub fn get_signature_attr(&self, class: &ClassFile) -> Option<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_annotations` is never used
[INFO] [stderr]    --> src/annotations.rs:161:12
[INFO] [stderr]     |
[INFO] [stderr] 159 | impl FieldInfo {
[INFO] [stderr]     | -------------- method in this implementation
[INFO] [stderr] 160 |     /// Get field-level annotations
[INFO] [stderr] 161 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_serializable` is never used
[INFO] [stderr]  --> src/serialization.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub fn is_serializable(_class_name: &str) -> bool {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `serialize_value` is never used
[INFO] [stderr]   --> src/serialization.rs:27:8
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub fn serialize_value(_v: &Value) -> Result<Vec<u8>, String> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `last_compiled` is never read
[INFO] [stderr]   --> src/jit.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub struct MethodProfile {
[INFO] [stderr]    |            ------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 47 |     pub last_compiled: Option<Instant>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MethodProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `max_method_size` is never read
[INFO] [stderr]   --> src/jit.rs:96:9
[INFO] [stderr]    |
[INFO] [stderr] 88 | pub struct TieredCompilationConfig {
[INFO] [stderr]    |            ----------------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 96 |     pub max_method_size: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TieredCompilationConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IrGenerationError` is never constructed
[INFO] [stderr]    --> src/jit.rs:123:5
[INFO] [stderr]     |
[INFO] [stderr] 119 | pub enum JitError {
[INFO] [stderr]     |          -------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 123 |     IrGenerationError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `JitError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `level` are never read
[INFO] [stderr]    --> src/jit.rs:149:9
[INFO] [stderr]     |
[INFO] [stderr] 147 | pub struct CompiledCode {
[INFO] [stderr]     |            ------------ fields in this struct
[INFO] [stderr] 148 |     /// Function name
[INFO] [stderr] 149 |     pub name: String,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 153 |     pub level: CompilationLevel,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `CompiledCode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `config` and `set_config` are never used
[INFO] [stderr]    --> src/jit.rs:313:12
[INFO] [stderr]     |
[INFO] [stderr] 180 | impl CraneliftJitCompiler {
[INFO] [stderr]     | ------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 313 |     pub fn config(&self) -> &TieredCompilationConfig {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 318 |     pub fn set_config(&mut self, config: TieredCompilationConfig) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `link_executable` is never used
[INFO] [stderr]    --> src/jit.rs:352:12
[INFO] [stderr]     |
[INFO] [stderr] 336 | impl AotCompiler {
[INFO] [stderr]     | ---------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 352 |     pub fn link_executable(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_or_compile_method` and `is_compiled` are never used
[INFO] [stderr]    --> src/jit.rs:573:12
[INFO] [stderr]     |
[INFO] [stderr] 553 | impl JitManager {
[INFO] [stderr]     | --------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 573 |     pub fn get_or_compile_method(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 612 |     pub fn is_compiled(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LlvmIrGenerator` is never constructed
[INFO] [stderr]    --> src/jit.rs:530:16
[INFO] [stderr]     |
[INFO] [stderr] 530 |     pub struct LlvmIrGenerator {}
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/jit.rs:533:16
[INFO] [stderr]     |
[INFO] [stderr] 532 |     impl LlvmIrGenerator {
[INFO] [stderr]     |     -------------------- associated function in this implementation
[INFO] [stderr] 533 |         pub fn new(_module_name: &str) -> Result<Self, String> {
[INFO] [stderr]     |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `trace_classes` is never read
[INFO] [stderr]   --> src/debug.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub struct DebugConfig {
[INFO] [stderr]    |            ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 13 |     pub trace_classes: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DebugConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/debug.rs:52:12
[INFO] [stderr]     |
[INFO] [stderr]  42 | impl JvmDebugger {
[INFO] [stderr]     | ---------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  52 |     pub fn log_method_entry(&self, class_name: &str, method_name: &str, method_descriptor: &str) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  62 |     pub fn log_method_exit(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 135 |     pub fn log_class_loaded(&self, class_name: &str, source: &str) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 152 |     pub fn log_memory_access(&self, address: u32, operation: &str, value: Option<&Value>) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 162 |     pub fn log_exception(&self, exception: &str, handler_pc: Option<usize>) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 170 |     pub fn log_gc(&self, freed_objects: usize, freed_bytes: usize) {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 387 |     pub fn instruction_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 392 |     pub fn reset_instruction_count(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `with_max_samples`, `set_enabled`, `method_counts`, `method_time_ns`, and `hotspots` are never used
[INFO] [stderr]    --> src/profiler.rs:45:12
[INFO] [stderr]     |
[INFO] [stderr]  33 | impl Profiler {
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  45 |     pub fn with_max_samples(max_samples: usize) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  51 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 100 |     pub fn method_counts(&self) -> HashMap<String, u64> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 105 |     pub fn method_time_ns(&self) -> HashMap<String, u64> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 110 |     pub fn hotspots(&self, top_n: usize) -> Vec<(String, u64, u64)> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `with_capacity`, `is_enabled`, and `clear` are never used
[INFO] [stderr]   --> src/trace.rs:36:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | impl TraceRecorder {
[INFO] [stderr]    | ------------------ associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 36 |     pub fn with_capacity(max_steps: usize) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 |     pub fn is_enabled(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 90 |     pub fn clear(&mut self) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `fixed_timestamp_ns` is never read
[INFO] [stderr]   --> src/deterministic.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct DeterministicConfig {
[INFO] [stderr]    |            ------------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 14 |     pub fixed_timestamp_ns: Option<u64>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DeterministicConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `hft` is never used
[INFO] [stderr]   --> src/deterministic.rs:49:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | impl DeterministicConfig {
[INFO] [stderr]    | ------------------------ associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 49 |     pub fn hft() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DeterministicMode` is never constructed
[INFO] [stderr]   --> src/deterministic.rs:55:12
[INFO] [stderr]    |
[INFO] [stderr] 55 | pub struct DeterministicMode {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `enabled`, `set_enabled`, `rng_seed`, and `timestamp_ns` are never used
[INFO] [stderr]   --> src/deterministic.rs:61:12
[INFO] [stderr]    |
[INFO] [stderr] 60 | impl DeterministicMode {
[INFO] [stderr]    | ---------------------- associated items in this implementation
[INFO] [stderr] 61 |     pub fn new(config: DeterministicConfig) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 68 |     pub fn enabled(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 72 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 77 |     pub fn rng_seed(&self) -> u64 {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 86 |     pub fn timestamp_ns(&self) -> u64 {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `stack_overflow_check` is never read
[INFO] [stderr]   --> src/security.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub struct SecurityConfig {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 14 |     pub stack_overflow_check: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SecurityConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `check_stack_overflow`, `violation_count`, and `config` are never used
[INFO] [stderr]   --> src/security.rs:74:12
[INFO] [stderr]    |
[INFO] [stderr] 34 | impl Sanitizer {
[INFO] [stderr]    | -------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 74 |     pub fn check_stack_overflow(&self, current_depth: usize, max_depth: usize) -> Result<(), String> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 86 |     pub fn violation_count(&self) -> u64 {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 90 |     pub fn config(&self) -> &SecurityConfig {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `target_class`, `target_ref`, and `interceptor` are never read
[INFO] [stderr]   --> src/aop.rs:8:9
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub struct Proxy {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr]  8 |     pub target_class: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr]  9 |     pub target_ref: u32,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 10 |     pub interceptor: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Proxy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: enum `AdviceKind` is never used
[INFO] [stderr]   --> src/aop.rs:15:10
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub enum AdviceKind {
[INFO] [stderr]    |          ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Pointcut` is never constructed
[INFO] [stderr]   --> src/aop.rs:23:12
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct Pointcut {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AopRegistry` is never constructed
[INFO] [stderr]   --> src/aop.rs:30:12
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub struct AopRegistry {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `add_advice`, and `matches` are never used
[INFO] [stderr]   --> src/aop.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 34 | impl AopRegistry {
[INFO] [stderr]    | ---------------- associated items in this implementation
[INFO] [stderr] 35 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 41 |     pub fn add_advice(&mut self, pointcut: Pointcut, kind: AdviceKind) {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 46 |     pub fn matches(&self, class_name: &str, method_name: &str) -> Option<AdviceKind> {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `K8sOperatorConfig` is never constructed
[INFO] [stderr]  --> src/cloud.rs:7:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct K8sOperatorConfig {
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DistributedObjectRef` is never constructed
[INFO] [stderr]   --> src/cloud.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct DistributedObjectRef {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `HotReloadManager` is never constructed
[INFO] [stderr]   --> src/hot_reload.rs:11:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct HotReloadManager {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `set_enabled`, `register_reloadable`, `class_file_changed`, `record_class_loaded`, and `replace_method` are never used
[INFO] [stderr]   --> src/hot_reload.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 17 | impl HotReloadManager {
[INFO] [stderr]    | --------------------- associated items in this implementation
[INFO] [stderr] 18 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 25 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 30 |     pub fn register_reloadable(&mut self, class: &str, _method: &str) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     pub fn class_file_changed(&self, path: &Path) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 62 |     pub fn record_class_loaded(&mut self, class_name: &str, path: &Path) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 72 |     pub fn replace_method(
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `JavaExtension` is never used
[INFO] [stderr]   --> src/extensions.rs:29:11
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub trait JavaExtension: Send + Sync {
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `extensions_loaded` is never read
[INFO] [stderr]   --> src/extensions.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub struct ExtensionRegistry {
[INFO] [stderr]    |            ----------------- field in this struct
[INFO] [stderr] 49 |     native_methods: RwLock<HashMap<String, NativeCallback>>,
[INFO] [stderr] 50 |     extensions_loaded: RwLock<Vec<String>>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `load` and `loaded_extensions` are never used
[INFO] [stderr]    --> src/extensions.rs:87:12
[INFO] [stderr]     |
[INFO] [stderr]  53 | impl ExtensionRegistry {
[INFO] [stderr]     | ---------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  87 |     pub fn load(&self, ext: &dyn JavaExtension) {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 110 |     pub fn loaded_extensions(&self) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `GLOBAL_REGISTRY` is never used
[INFO] [stderr]    --> src/extensions.rs:121:8
[INFO] [stderr]     |
[INFO] [stderr] 121 | static GLOBAL_REGISTRY: OnceLock<RwLock<ExtensionRegistry>> = OnceLock::new();
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `global` is never used
[INFO] [stderr]    --> src/extensions.rs:125:12
[INFO] [stderr]     |
[INFO] [stderr] 123 | impl ExtensionRegistry {
[INFO] [stderr]     | ---------------------- associated function in this implementation
[INFO] [stderr] 124 |     /// Global extension registry (used by Interpreter when interop is enabled)
[INFO] [stderr] 125 |     pub fn global() -> &'static RwLock<ExtensionRegistry> {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `jvmrs` (bin "jvmrs" test) generated 143 warnings (21 duplicates) (run `cargo fix --bin "jvmrs" -p jvmrs --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `jvmrs` (lib test) generated 23 warnings (23 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.38s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/jvmrs-ce2c2953b9d4bb84)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test jit::tests::test_compilation_level_ordering ... ok
[INFO] [stdout] test jit::tests::test_aot_compiler_creation ... ok
[INFO] [stdout] test jit::tests::test_jit_manager_creation ... ok
[INFO] [stdout] test jit::tests::test_jit_compiler_creation ... ok
[INFO] [stdout] test jit::tests::test_tiered_config_default ... ok
[INFO] [stdout] test jit::tests::test_method_profile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/jvmrs-3ea176338f5e4838)
[INFO] [stdout] 
[INFO] [stdout] running 56 tests
[INFO] [stdout] test jit::tests::test_aot_compiler_creation ... ok
[INFO] [stdout] test jit::tests::test_compilation_level_ordering ... ok
[INFO] [stdout] test jit::tests::test_jit_compiler_creation ... ok
[INFO] [stdout] test jit::tests::test_tiered_config_default ... ok
[INFO] [stdout] test jit::tests::test_jit_manager_creation ... ok
[INFO] [stdout] test tests::tests::test_aop_create_proxy ... ok
[INFO] [stdout] test tests::tests::test_annotations_on_minimal_class ... ok
[INFO] [stdout] test tests::tests::test_arena_allocator ... ok
[INFO] [stdout] test tests::tests::test_class_file_find_method ... ok
[INFO] [stdout] test jit::tests::test_method_profile ... ok
[INFO] [stdout] test tests::tests::test_class_file_invalid_constant_pool_tag ... ok
[INFO] [stdout] test tests::tests::test_class_file_invalid_magic ... ok
[INFO] [stdout] test tests::tests::test_class_file_valid_parse ... ok
[INFO] [stdout] test tests::tests::test_class_loader_creation ... ok
[INFO] [stdout] test tests::tests::test_class_loader_custom_classpath ... ok
[INFO] [stdout] test tests::tests::test_debug_config_default ... ok
[INFO] [stdout] test tests::tests::test_descriptor_parse_params ... ok
[INFO] [stdout] test tests::tests::test_error_helpers ... ok
[INFO] [stdout] test tests::tests::test_deterministic_config_presets ... ok
[INFO] [stdout] test tests::tests::test_frame_dump_ascii ... ok
[INFO] [stdout] test tests::tests::test_generational_heap_minor_gc ... ok
[INFO] [stdout] test tests::tests::test_generational_heap_promotion ... ok
[INFO] [stdout] test tests::tests::test_descriptor_count_parameters ... ok
[INFO] [stdout] test tests::tests::test_class_loader_load_nonexistent ... ok
[INFO] [stdout] test tests::tests::test_interpreter_creation ... ok
[INFO] [stdout] test tests::tests::test_heap_dump_ascii ... ok
[INFO] [stdout] test tests::tests::test_interpreter_with_classpath ... ok
[INFO] [stdout] test tests::tests::test_jvm_debugger ... ok
[INFO] [stdout] test tests::tests::test_extension_registry ... ok
[INFO] [stdout] test tests::tests::test_heap_allocation ... ok
[INFO] [stdout] test tests::tests::test_heap_array_allocation ... ok
[INFO] [stdout] test tests::tests::test_interpreter_jit_toggle ... ok
[INFO] [stdout] test tests::tests::test_export_html_fragment ... ok
[INFO] [stdout] test tests::tests::test_heap_array_length ... ok
[INFO] [stdout] test tests::tests::test_error_display ... ok
[INFO] [stdout] test tests::tests::test_interpreter_memory_access ... ok
[INFO] [stdout] test tests::tests::test_memory_dump_ascii ... ok
[INFO] [stdout] test tests::tests::test_jvm_stack_frames ... ok
[INFO] [stdout] test tests::tests::test_monitor_enter_exit ... ok
[INFO] [stdout] test tests::tests::test_parse_classpath ... ok
[INFO] [stdout] test tests::tests::test_scoped_root ... ok
[INFO] [stdout] test tests::tests::test_serialization_stub ... ok
[INFO] [stdout] test tests::tests::test_class_file_incomplete_parse ... ok
[INFO] [stdout] test tests::tests::test_memory_static_fields ... ok
[INFO] [stdout] test tests::tests::test_stack_frame ... ok
[INFO] [stdout] test tests::tests::test_monitor_contention ... ok
[INFO] [stdout] test tests::tests::test_value_conversions ... ok
[INFO] [stdout] test tests::tests::test_value_reference_helpers ... ok
[INFO] [stdout] test tests::tests::test_value_equality ... ok
[INFO] [stdout] test tests::tests::test_reflection_api ... ok
[INFO] [stdout] test tests::tests::test_heap_get_field_set_field ... ok
[INFO] [stdout] test tests::tests::test_heap_array_get_set ... ok
[INFO] [stdout] test tests::tests::test_class_loader_load_minimal ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_run_test_get_static ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_run_test_ldc ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_run_minimal ... FAILED
[INFO] [stderr] error: test failed, to rerun pass `--bin jvmrs`
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_class_loader_load_minimal stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_class_loader_load_minimal' (48) panicked at src/tests.rs:719:9:
[INFO] [stdout] load Minimal: Err(ClassLoadingError(NoClassDefFound("Minimal")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x601d0e9c2052 - std::backtrace_rs::backtrace::libunwind::trace::hff358a60abf734fc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x601d0e9c2052 - std::backtrace_rs::backtrace::trace_unsynchronized::h3b121f916dd95ec6
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x601d0e9c2052 - std::sys::backtrace::_print_fmt::hde0a62ded68798e9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x601d0e9c2052 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h93773fc827e3113d
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x601d0e9d558a - core::fmt::rt::Argument::fmt::h01eff69902dad97f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x601d0e9d558a - core::fmt::write::hed7b5c73d82ecb7c
[INFO] [stdout]    6:     0x601d0e98f816 - std::io::default_write_fmt::h2f696ff5b8bbaa4b
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x601d0e98f816 - std::io::Write::write_fmt::h5e66814db8a9cfce
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x601d0e9a0c99 - std::sys::backtrace::BacktraceLock::print::h8b1d6fcc5a56d1a3
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x601d0e9a0c99 - std::panicking::default_hook::{{closure}}::h2be84df4f189ae36
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x601d0e9a0b31 - std::panicking::default_hook::hf0ea8939246f43a9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x601d0e46267e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h02d35e3888986252
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x601d0e46267e - test::test_main_with_exit_callback::{{closure}}::h939640a27d647173
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x601d0e9a0f12 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hc9df09ff391af3e7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x601d0e9a0f12 - std::panicking::panic_with_hook::hb4bd9ac1123582a0
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x601d0e9a0d58 - std::panicking::panic_handler::{{closure}}::hde00dd15f5637fe2
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x601d0e99b7c9 - std::sys::backtrace::__rust_end_short_backtrace::hb72197fa777c1785
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x601d0e9835cd - __rustc[4425a7e20b4c8619]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x601d0e9dd85c - core::panicking::panic_fmt::ha59b517dd231f4da
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x601d0e3e9b1e - jvmrs::tests::tests::test_class_loader_load_minimal::h4c069b1ecb888112
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:719:9
[INFO] [stdout]   20:     0x601d0e3e9d67 - jvmrs::tests::tests::test_class_loader_load_minimal::{{closure}}::h02780077a9720425
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:712:40
[INFO] [stdout]   21:     0x601d0e4261c6 - core::ops::function::FnOnce::call_once::hc11d65c08b982e86
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x601d0e46243b - core::ops::function::FnOnce::call_once::hddb3cd395c36bfbb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x601d0e46243b - test::__rust_begin_short_backtrace::h0b6a7601d9750bfa
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x601d0e475e4a - test::run_test_in_process::{{closure}}::h444209903f00b347
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x601d0e475e4a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hfb3ba8f46e537649
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x601d0e475e4a - std::panicking::catch_unwind::do_call::h1672a45911fcf9dc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x601d0e475e4a - std::panicking::catch_unwind::h0fadaee22787a6dd
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x601d0e475e4a - std::panic::catch_unwind::hc47ad190f2c8e188
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x601d0e475e4a - test::run_test_in_process::hcd7faaf934f29999
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x601d0e475e4a - test::run_test::{{closure}}::hddc4550da4871867
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x601d0e4502a4 - test::run_test::{{closure}}::h98ae26689f13ed94
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x601d0e4502a4 - std::sys::backtrace::__rust_begin_short_backtrace::h3ec4d1f21ad44588
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x601d0e453c42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd8bf2c73d479939f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x601d0e453c42 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h3b4248f358af2491
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x601d0e453c42 - std::panicking::catch_unwind::do_call::hda10a64f4b8daebe
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x601d0e453c42 - std::panicking::catch_unwind::h659e5ee8336ec8c7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x601d0e453c42 - std::panic::catch_unwind::h9d4d66a538912c18
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x601d0e453c42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h7557906bb51d79f1
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x601d0e453c42 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9e460d1d7fc83d35
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x601d0e9969af - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h61282da819d64ea9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x601d0e9969af - std::sys::thread::unix::Thread::new::thread_start::h982f9ea829d1b5fb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   42:     0x7b94badb6aa4 - <unknown>
[INFO] [stdout]   43:     0x7b94bae43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_run_test_get_static stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_run_test_get_static' (71) panicked at src/tests.rs:684:9:
[INFO] [stdout] run_main TestGetStatic failed: Err(ClassLoadingError(NoClassDefFound("TestGetStatic")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x601d0e9c2052 - std::backtrace_rs::backtrace::libunwind::trace::hff358a60abf734fc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x601d0e9c2052 - std::backtrace_rs::backtrace::trace_unsynchronized::h3b121f916dd95ec6
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x601d0e9c2052 - std::sys::backtrace::_print_fmt::hde0a62ded68798e9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x601d0e9c2052 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h93773fc827e3113d
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x601d0e9d558a - core::fmt::rt::Argument::fmt::h01eff69902dad97f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x601d0e9d558a - core::fmt::write::hed7b5c73d82ecb7c
[INFO] [stdout]    6:     0x601d0e98f816 - std::io::default_write_fmt::h2f696ff5b8bbaa4b
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x601d0e98f816 - std::io::Write::write_fmt::h5e66814db8a9cfce
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x601d0e9a0c99 - std::sys::backtrace::BacktraceLock::print::h8b1d6fcc5a56d1a3
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x601d0e9a0c99 - std::panicking::default_hook::{{closure}}::h2be84df4f189ae36
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x601d0e9a0b31 - std::panicking::default_hook::hf0ea8939246f43a9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x601d0e46267e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h02d35e3888986252
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x601d0e46267e - test::test_main_with_exit_callback::{{closure}}::h939640a27d647173
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x601d0e9a0f12 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hc9df09ff391af3e7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x601d0e9a0f12 - std::panicking::panic_with_hook::hb4bd9ac1123582a0
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x601d0e9a0d58 - std::panicking::panic_handler::{{closure}}::hde00dd15f5637fe2
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x601d0e99b7c9 - std::sys::backtrace::__rust_end_short_backtrace::hb72197fa777c1785
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x601d0e9835cd - __rustc[4425a7e20b4c8619]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x601d0e9dd85c - core::panicking::panic_fmt::ha59b517dd231f4da
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x601d0e3ebdfd - jvmrs::tests::tests::test_interpreter_run_test_get_static::hbc3bbe53362f60ed
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:684:9
[INFO] [stdout]   20:     0x601d0e3ebe57 - jvmrs::tests::tests::test_interpreter_run_test_get_static::{{closure}}::h9f20084911d6be2b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:674:46
[INFO] [stdout]   21:     0x601d0e425376 - core::ops::function::FnOnce::call_once::h68595fb22fd0792f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x601d0e46243b - core::ops::function::FnOnce::call_once::hddb3cd395c36bfbb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x601d0e46243b - test::__rust_begin_short_backtrace::h0b6a7601d9750bfa
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x601d0e475e4a - test::run_test_in_process::{{closure}}::h444209903f00b347
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x601d0e475e4a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hfb3ba8f46e537649
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x601d0e475e4a - std::panicking::catch_unwind::do_call::h1672a45911fcf9dc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x601d0e475e4a - std::panicking::catch_unwind::h0fadaee22787a6dd
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x601d0e475e4a - std::panic::catch_unwind::hc47ad190f2c8e188
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x601d0e475e4a - test::run_test_in_process::hcd7faaf934f29999
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x601d0e475e4a - test::run_test::{{closure}}::hddc4550da4871867
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x601d0e4502a4 - test::run_test::{{closure}}::h98ae26689f13ed94
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x601d0e4502a4 - std::sys::backtrace::__rust_begin_short_backtrace::h3ec4d1f21ad44588
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x601d0e453c42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd8bf2c73d479939f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x601d0e453c42 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h3b4248f358af2491
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x601d0e453c42 - std::panicking::catch_unwind::do_call::hda10a64f4b8daebe
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x601d0e453c42 - std::panicking::catch_unwind::h659e5ee8336ec8c7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x601d0e453c42 - std::panic::catch_unwind::h9d4d66a538912c18
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x601d0e453c42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h7557906bb51d79f1
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x601d0e453c42 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9e460d1d7fc83d35
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x601d0e9969af - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h61282da819d64ea9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x601d0e9969af - std::sys::thread::unix::Thread::new::thread_start::h982f9ea829d1b5fb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   42:     0x7b94badb6aa4 - <unknown>
[INFO] [stdout]   43:     0x7b94bae43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_run_test_ldc stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_run_test_ldc' (72) panicked at src/tests.rs:698:9:
[INFO] [stdout] run_main TestLdc failed: Err(ClassLoadingError(NoClassDefFound("TestLdc")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x601d0e9c2052 - std::backtrace_rs::backtrace::libunwind::trace::hff358a60abf734fc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x601d0e9c2052 - std::backtrace_rs::backtrace::trace_unsynchronized::h3b121f916dd95ec6
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x601d0e9c2052 - std::sys::backtrace::_print_fmt::hde0a62ded68798e9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x601d0e9c2052 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h93773fc827e3113d
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x601d0e9d558a - core::fmt::rt::Argument::fmt::h01eff69902dad97f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x601d0e9d558a - core::fmt::write::hed7b5c73d82ecb7c
[INFO] [stdout]    6:     0x601d0e98f816 - std::io::default_write_fmt::h2f696ff5b8bbaa4b
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x601d0e98f816 - std::io::Write::write_fmt::h5e66814db8a9cfce
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x601d0e9a0c99 - std::sys::backtrace::BacktraceLock::print::h8b1d6fcc5a56d1a3
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x601d0e9a0c99 - std::panicking::default_hook::{{closure}}::h2be84df4f189ae36
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x601d0e9a0b31 - std::panicking::default_hook::hf0ea8939246f43a9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x601d0e46267e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h02d35e3888986252
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x601d0e46267e - test::test_main_with_exit_callback::{{closure}}::h939640a27d647173
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x601d0e9a0f12 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hc9df09ff391af3e7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x601d0e9a0f12 - std::panicking::panic_with_hook::hb4bd9ac1123582a0
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x601d0e9a0d58 - std::panicking::panic_handler::{{closure}}::hde00dd15f5637fe2
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x601d0e99b7c9 - std::sys::backtrace::__rust_end_short_backtrace::hb72197fa777c1785
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x601d0e9835cd - __rustc[4425a7e20b4c8619]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x601d0e9dd85c - core::panicking::panic_fmt::ha59b517dd231f4da
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x601d0e3e981d - jvmrs::tests::tests::test_interpreter_run_test_ldc::ha3552fbd4c00ad28
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:698:9
[INFO] [stdout]   20:     0x601d0e3e9877 - jvmrs::tests::tests::test_interpreter_run_test_ldc::{{closure}}::h50c3b2090daba4ad
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:688:39
[INFO] [stdout]   21:     0x601d0e425796 - core::ops::function::FnOnce::call_once::h79420f00f50908e1
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x601d0e46243b - core::ops::function::FnOnce::call_once::hddb3cd395c36bfbb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x601d0e46243b - test::__rust_begin_short_backtrace::h0b6a7601d9750bfa
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x601d0e475e4a - test::run_test_in_process::{{closure}}::h444209903f00b347
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x601d0e475e4a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hfb3ba8f46e537649
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x601d0e475e4a - std::panicking::catch_unwind::do_call::h1672a45911fcf9dc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x601d0e475e4a - std::panicking::catch_unwind::h0fadaee22787a6dd
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x601d0e475e4a - std::panic::catch_unwind::hc47ad190f2c8e188
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x601d0e475e4a - test::run_test_in_process::hcd7faaf934f29999
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x601d0e475e4a - test::run_test::{{closure}}::hddc4550da4871867
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x601d0e4502a4 - test::run_test::{{closure}}::h98ae26689f13ed94
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x601d0e4502a4 - std::sys::backtrace::__rust_begin_short_backtrace::h3ec4d1f21ad44588
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x601d0e453c42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd8bf2c73d479939f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x601d0e453c42 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h3b4248f358af2491
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x601d0e453c42 - std::panicking::catch_unwind::do_call::hda10a64f4b8daebe
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x601d0e453c42 - std::panicking::catch_unwind::h659e5ee8336ec8c7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x601d0e453c42 - std::panic::catch_unwind::h9d4d66a538912c18
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x601d0e453c42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h7557906bb51d79f1
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x601d0e453c42 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9e460d1d7fc83d35
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x601d0e9969af - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h61282da819d64ea9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x601d0e9969af - std::sys::thread::unix::Thread::new::thread_start::h982f9ea829d1b5fb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   42:     0x7b94badb6aa4 - <unknown>
[INFO] [stdout]   43:     0x7b94bae43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_run_minimal stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_run_minimal' (70) panicked at src/tests.rs:670:9:
[INFO] [stdout] run_main Minimal failed: Err(ClassLoadingError(NoClassDefFound("Minimal")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x601d0e9c2052 - std::backtrace_rs::backtrace::libunwind::trace::hff358a60abf734fc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x601d0e9c2052 - std::backtrace_rs::backtrace::trace_unsynchronized::h3b121f916dd95ec6
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x601d0e9c2052 - std::sys::backtrace::_print_fmt::hde0a62ded68798e9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x601d0e9c2052 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h93773fc827e3113d
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x601d0e9d558a - core::fmt::rt::Argument::fmt::h01eff69902dad97f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x601d0e9d558a - core::fmt::write::hed7b5c73d82ecb7c
[INFO] [stdout]    6:     0x601d0e98f816 - std::io::default_write_fmt::h2f696ff5b8bbaa4b
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x601d0e98f816 - std::io::Write::write_fmt::h5e66814db8a9cfce
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x601d0e9a0c99 - std::sys::backtrace::BacktraceLock::print::h8b1d6fcc5a56d1a3
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x601d0e9a0c99 - std::panicking::default_hook::{{closure}}::h2be84df4f189ae36
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x601d0e9a0b31 - std::panicking::default_hook::hf0ea8939246f43a9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x601d0e46267e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h02d35e3888986252
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x601d0e46267e - test::test_main_with_exit_callback::{{closure}}::h939640a27d647173
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x601d0e9a0f12 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hc9df09ff391af3e7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x601d0e9a0f12 - std::panicking::panic_with_hook::hb4bd9ac1123582a0
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x601d0e9a0d58 - std::panicking::panic_handler::{{closure}}::hde00dd15f5637fe2
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x601d0e99b7c9 - std::sys::backtrace::__rust_end_short_backtrace::hb72197fa777c1785
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x601d0e9835cd - __rustc[4425a7e20b4c8619]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x601d0e9dd85c - core::panicking::panic_fmt::ha59b517dd231f4da
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x601d0e3e8d6d - jvmrs::tests::tests::test_interpreter_run_minimal::h152c5ce84ee14a86
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:670:9
[INFO] [stdout]   20:     0x601d0e3e8dc7 - jvmrs::tests::tests::test_interpreter_run_minimal::{{closure}}::h9b515fd450c553e9
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:660:38
[INFO] [stdout]   21:     0x601d0e424ad6 - core::ops::function::FnOnce::call_once::h33bfce7f8c7abbba
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x601d0e46243b - core::ops::function::FnOnce::call_once::hddb3cd395c36bfbb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x601d0e46243b - test::__rust_begin_short_backtrace::h0b6a7601d9750bfa
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x601d0e475e4a - test::run_test_in_process::{{closure}}::h444209903f00b347
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x601d0e475e4a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hfb3ba8f46e537649
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x601d0e475e4a - std::panicking::catch_unwind::do_call::h1672a45911fcf9dc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x601d0e475e4a - std::panicking::catch_unwind::h0fadaee22787a6dd
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x601d0e475e4a - std::panic::catch_unwind::hc47ad190f2c8e188
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x601d0e475e4a - test::run_test_in_process::hcd7faaf934f29999
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x601d0e475e4a - test::run_test::{{closure}}::hddc4550da4871867
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x601d0e4502a4 - test::run_test::{{closure}}::h98ae26689f13ed94
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x601d0e4502a4 - std::sys::backtrace::__rust_begin_short_backtrace::h3ec4d1f21ad44588
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x601d0e453c42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd8bf2c73d479939f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x601d0e453c42 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h3b4248f358af2491
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x601d0e453c42 - std::panicking::catch_unwind::do_call::hda10a64f4b8daebe
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x601d0e453c42 - std::panicking::catch_unwind::h659e5ee8336ec8c7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x601d0e453c42 - std::panic::catch_unwind::h9d4d66a538912c18
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x601d0e453c42 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h7557906bb51d79f1
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x601d0e453c42 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9e460d1d7fc83d35
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x601d0e9969af - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h61282da819d64ea9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x601d0e9969af - std::sys::thread::unix::Thread::new::thread_start::h982f9ea829d1b5fb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   42:     0x7b94badb6aa4 - <unknown>
[INFO] [stdout]   43:     0x7b94bae43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::tests::test_class_loader_load_minimal
[INFO] [stdout]     tests::tests::test_interpreter_run_minimal
[INFO] [stdout]     tests::tests::test_interpreter_run_test_get_static
[INFO] [stdout]     tests::tests::test_interpreter_run_test_ldc
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 52 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "84061999bbd8d13ecbe13126b40490b8d3baac64b66a2d248a364eaeccd13eda", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "84061999bbd8d13ecbe13126b40490b8d3baac64b66a2d248a364eaeccd13eda", kill_on_drop: false }`
[INFO] [stdout] 84061999bbd8d13ecbe13126b40490b8d3baac64b66a2d248a364eaeccd13eda
