[INFO] fetching crate jvmti 0.5.0...
[INFO] testing jvmti-0.5.0 against beta-2023-04-20 for beta-1.70-1
[INFO] extracting crate jvmti 0.5.0 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate jvmti 0.5.0 on toolchain beta-2023-04-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate jvmti 0.5.0
[INFO] finished tweaking crates.io crate jvmti 0.5.0
[INFO] tweaked toml for crates.io crate jvmti 0.5.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate crates.io crate jvmti 0.5.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" "+beta-2023-04-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 712a775603f0ba9413d517b4fc64f0f038e91f12b86361ec4391ad60275425d2
[INFO] running `Command { std: "docker" "start" "-a" "712a775603f0ba9413d517b4fc64f0f038e91f12b86361ec4391ad60275425d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "712a775603f0ba9413d517b4fc64f0f038e91f12b86361ec4391ad60275425d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "712a775603f0ba9413d517b4fc64f0f038e91f12b86361ec4391ad60275425d2", kill_on_drop: false }`
[INFO] [stdout] 712a775603f0ba9413d517b4fc64f0f038e91f12b86361ec4391ad60275425d2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e85f403499385f6d90526397f88d1f8906c4fb794d0b0e82f7a23d61836a61f4
[INFO] running `Command { std: "docker" "start" "-a" "e85f403499385f6d90526397f88d1f8906c4fb794d0b0e82f7a23d61836a61f4", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.46
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling unicode-ident v1.0.5
[INFO] [stderr]    Compiling syn v1.0.102
[INFO] [stderr]    Compiling serde v1.0.145
[INFO] [stderr]    Compiling libc v0.2.135
[INFO] [stderr]    Compiling serde_derive v1.0.145
[INFO] [stderr]    Compiling lazy_static v0.2.11
[INFO] [stderr]    Compiling time v0.1.44
[INFO] [stderr]    Compiling toml v0.4.10
[INFO] [stderr]    Compiling jvmti v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `agent::Agent`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use agent::Agent;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::printer::ClassfilePrinter`
[INFO] [stdout]   --> src/lib.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use bytecode::printer::ClassfilePrinter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::classfile::Constant`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use bytecode::classfile::Constant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::io::ClassWriter`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use bytecode::io::ClassWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config::Config`
[INFO] [stdout]   --> src/lib.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use config::Config;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `context::static_context`
[INFO] [stdout]   --> src/lib.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use context::static_context;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `instrumentation::asm::transformer::Transformer`
[INFO] [stdout]   --> src/lib.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use instrumentation::asm::transformer::Transformer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `JavaVMPtr`, `MutString`, `ReturnValue`, `VoidPtr`
[INFO] [stdout]   --> src/lib.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | use native::{JavaVMPtr, MutString, VoidPtr, ReturnValue};
[INFO] [stdout]    |              ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `options::Options`
[INFO] [stdout]   --> src/lib.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use options::Options;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `runtime::*`
[INFO] [stdout]   --> src/lib.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use runtime::*;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread::Thread`
[INFO] [stdout]   --> src/lib.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use thread::Thread;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `util::stringify`
[INFO] [stdout]   --> src/lib.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use util::stringify;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::config::Config`
[INFO] [stdout]  --> src/agent.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::config::Config;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::options::Options`
[INFO] [stdout]  --> src/agent.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::options::Options;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:622:38
[INFO] [stdout]     |
[INFO] [stdout] 622 | ...                   tag@0...63 => StackMapFrame::SameFrame { tag: tag },
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:623:39
[INFO] [stdout]     |
[INFO] [stdout] 623 | ...                   tag@64...127 => StackMapFrame::SameLocals1StackItemFrame { tag: tag, stack: read_verification_type(&mut reader) },
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:625:40
[INFO] [stdout]     |
[INFO] [stdout] 625 | ...                   tag@248...250 => StackMapFrame::ChopFrame { tag: tag, offset_delta: reader.get_u16() },
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:627:40
[INFO] [stdout]     |
[INFO] [stdout] 627 | ...   tag@252...254 => StackMapFrame::AppendFrame { tag: tag, offset_delta: reader.get_u16(), locals: (0..tag - 251).map(|_| read_verific...
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:757:31
[INFO] [stdout]     |
[INFO] [stdout] 757 |                 subtype @ 0x00...0x01 => TargetInfo::TypeParameter { subtype: subtype, idx: reader.get_u8() },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:762:31
[INFO] [stdout]     |
[INFO] [stdout] 762 | ...   subtype @ 0x11...0x12 => TargetInfo::TypeParameterBound { subtype: subtype, param_idx: reader.get_u8(), bound_index: reader.get_u8(...
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:766:31
[INFO] [stdout]     |
[INFO] [stdout] 766 |                 subtype @ 0x13...0x15 => TargetInfo::Empty { subtype: subtype },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:773:31
[INFO] [stdout]     |
[INFO] [stdout] 773 |                 subtype @ 0x40...0x41 => TargetInfo::LocalVar { subtype: subtype, target: {
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:785:31
[INFO] [stdout]     |
[INFO] [stdout] 785 |                 subtype @ 0x43...0x46 => TargetInfo::Offset { subtype: subtype, idx: reader.get_u16() },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:790:31
[INFO] [stdout]     |
[INFO] [stdout] 790 | ...   subtype @ 0x47...0x4b => TargetInfo::TypeArgument { subtype: subtype, offset: reader.get_u16(), type_arg_idx: reader.get_u8() },
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/context.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout] 9  | / ///
[INFO] [stdout] 10 | | /// Public static mutable *cough* agent context. This seems necessary as our code is invoked from
[INFO] [stdout] 11 | | /// the JVM and we need a place to store the temporary mutable data.
[INFO] [stdout] 12 | | ///
[INFO] [stdout] 13 | | /// This wouldn't be such a problem if this was a C program, but you know, this is not a C program.
[INFO] [stdout] 14 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/context.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | / lazy_static! {
[INFO] [stdout] 16 | |     static ref STATIC_CONTEXT: AgentContext = AgentContext::new();
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 |     jvm: Box<JVMF>,
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     jvm: Box<dyn JVMF>,
[INFO] [stdout]    |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     environment: Box<JVMTI>
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     environment: Box<dyn JVMTI>
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:866:21
[INFO] [stdout]     |
[INFO] [stdout] 866 |     source: &'a mut Read,
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 866 |     source: &'a mut dyn Read,
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/bytecode/io/writer.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 |     target: &'a mut Write
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     target: &'a mut dyn Write
[INFO] [stdout]   |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:37:30
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new_from(jvm: Box<JVMF>) -> Agent {
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new_from(jvm: Box<dyn JVMF>) -> Agent {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/emulator.rs:42:45
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError> {
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/environment/jvm.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError>;
[INFO] [stdout]   |                                             ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError>;
[INFO] [stdout]   |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/environment/jvm.rs:31:45
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError> {
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]   --> src/class.rs:72:41
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_start_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                         ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/class.rs:72:64
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_end_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                                                ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/class.rs:98:34
[INFO] [stdout]    |
[INFO] [stdout] 98 |                     package: pkg.trim_right_matches(".").to_string(),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 98 |                     package: pkg.trim_end_matches(".").to_string(),
[INFO] [stdout]    |                                  ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_5` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bindings_with_variant_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_6` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_7` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_8` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_9` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `et`
[INFO] [stdout]    --> src/bytecode/printer.rs:143:105
[INFO] [stdout]     |
[INFO] [stdout] 143 | ...ode: ref c, exception_table: ref et, attributes: ref attributes } => {
[INFO] [stdout]     |                                     ^^ help: if this is intentional, prefix it with an underscore: `_et`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:246:45
[INFO] [stdout]     |
[INFO] [stdout] 246 |                     &Instruction::IF_ACMPEQ(value) => format!("if_acmpeq"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:247:45
[INFO] [stdout]     |
[INFO] [stdout] 247 |                     &Instruction::IF_ACMPNE(value) => format!("if_acmpne"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     &Instruction::IF_ICMPEQ(value) => format!("if_icmpeq"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:249:45
[INFO] [stdout]     |
[INFO] [stdout] 249 |                     &Instruction::IF_ICMPNE(value) => format!("if_icmpne"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:250:45
[INFO] [stdout]     |
[INFO] [stdout] 250 |                     &Instruction::IF_ICMPLT(value) => format!("if_icmplt"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:251:45
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     &Instruction::IF_ICMPGE(value) => format!("if_icmpge"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:252:45
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     &Instruction::IF_ICMPGT(value) => format!("if_icmpgt"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:253:45
[INFO] [stdout]     |
[INFO] [stdout] 253 |                     &Instruction::IF_ICMPLE(value) => format!("if_icmple"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:254:40
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     &Instruction::IFEQ(value) => format!("ifeq"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:255:40
[INFO] [stdout]     |
[INFO] [stdout] 255 |                     &Instruction::IFNE(value) => format!("ifne"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:256:40
[INFO] [stdout]     |
[INFO] [stdout] 256 |                     &Instruction::IFLT(value) => format!("iflt"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:257:40
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     &Instruction::IFGE(value) => format!("ifge"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:258:40
[INFO] [stdout]     |
[INFO] [stdout] 258 |                     &Instruction::IFGT(value) => format!("ifgt"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:259:40
[INFO] [stdout]     |
[INFO] [stdout] 259 |                     &Instruction::IFLE(value) => format!("ifle"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:260:45
[INFO] [stdout]     |
[INFO] [stdout] 260 |                     &Instruction::IFNONNULL(value) => format!("ifnonnull"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:261:42
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     &Instruction::IFNULL(value) => format!("ifnull"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:262:40
[INFO] [stdout]     |
[INFO] [stdout] 262 |                     &Instruction::IINC(value, increment) => format!("iinc"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `increment`
[INFO] [stdout]    --> src/bytecode/printer.rs:262:47
[INFO] [stdout]     |
[INFO] [stdout] 262 |                     &Instruction::IINC(value, increment) => format!("iinc"),
[INFO] [stdout]     |                                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_increment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:263:41
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     &Instruction::ILOAD(value) => format!("iload"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:270:46
[INFO] [stdout]     |
[INFO] [stdout] 270 |                     &Instruction::INSTANCEOF(value) => format!("instanceof"),
[INFO] [stdout]     |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/bytecode/printer.rs:272:58
[INFO] [stdout]     |
[INFO] [stdout] 272 |                     &Instruction::INVOKEINTERFACE(value, index) => format!("invokeinterface #{}", value),
[INFO] [stdout]     |                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:289:39
[INFO] [stdout]     |
[INFO] [stdout] 289 |                     &Instruction::JSR(value) => format!("jsr"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:290:41
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     &Instruction::JSR_W(value) => format!("jsr_w"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:301:39
[INFO] [stdout]     |
[INFO] [stdout] 301 |                     &Instruction::LDC(value) => format!("ldc"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |                     &Instruction::LDC_W(value) => format!("ldc_w"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:303:42
[INFO] [stdout]     |
[INFO] [stdout] 303 |                     &Instruction::LDC2_W(value) => format!("ldc2_w"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:305:41
[INFO] [stdout]     |
[INFO] [stdout] 305 |                     &Instruction::LLOAD(value) => format!("lload"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:312:48
[INFO] [stdout]     |
[INFO] [stdout] 312 |                     &Instruction::LOOKUPSWITCH(value, ref table) => format!("lookupswitch"),
[INFO] [stdout]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table`
[INFO] [stdout]    --> src/bytecode/printer.rs:312:59
[INFO] [stdout]     |
[INFO] [stdout] 312 |                     &Instruction::LOOKUPSWITCH(value, ref table) => format!("lookupswitch"),
[INFO] [stdout]     |                                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:328:50
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     &Instruction::MULTIANEWARRAY(value, size) => format!("multianewarray"),
[INFO] [stdout]     |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]    --> src/bytecode/printer.rs:328:57
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     &Instruction::MULTIANEWARRAY(value, size) => format!("multianewarray"),
[INFO] [stdout]     |                                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:329:39
[INFO] [stdout]     |
[INFO] [stdout] 329 |                     &Instruction::NEW(value) => format!("new"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:330:44
[INFO] [stdout]     |
[INFO] [stdout] 330 |                     &Instruction::NEWARRAY(value) => format!("newarray"),
[INFO] [stdout]     |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:334:44
[INFO] [stdout]     |
[INFO] [stdout] 334 |                     &Instruction::PUTFIELD(value) => format!("putfield"),
[INFO] [stdout]     |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:335:45
[INFO] [stdout]     |
[INFO] [stdout] 335 |                     &Instruction::PUTSTATIC(value) => format!("putstatic"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:336:39
[INFO] [stdout]     |
[INFO] [stdout] 336 |                     &Instruction::RET(value) => format!("ret"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:342:47
[INFO] [stdout]     |
[INFO] [stdout] 342 |                     &Instruction::TABLESWITCH(value, _, _, _) => format!("tableswitch"),
[INFO] [stdout]     |                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:343:42
[INFO] [stdout]     |
[INFO] [stdout] 343 |                     &Instruction::IINC_W(value, increment) => format!("iinc_w"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `increment`
[INFO] [stdout]    --> src/bytecode/printer.rs:343:49
[INFO] [stdout]     |
[INFO] [stdout] 343 |                     &Instruction::IINC_W(value, increment) => format!("iinc_w"),
[INFO] [stdout]     |                                                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_increment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tag`
[INFO] [stdout]    --> src/bytecode/printer.rs:405:46
[INFO] [stdout]     |
[INFO] [stdout] 405 |             &StackMapFrame::FutureUse { tag: tag } => format!("FutureUse")
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_5`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_6`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_7`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_8`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_9`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:62:41
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn add_utf8_constant(&mut self, content: String) {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn add_string_constant(&mut self, content: String) {
[INFO] [stdout]    |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `classfile`
[INFO] [stdout]   --> src/instrumentation/mod.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn from_classfile(classfile: &Classfile) -> Option<JavaClass> {
[INFO] [stdout]    |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_classfile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method`
[INFO] [stdout]   --> src/instrumentation/mod.rs:41:23
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn add_method(method: Method) {
[INFO] [stdout]    |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_method`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let mut info_ptr = &mut info;
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let mut method_ptr = &mut method_name;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |         let mut signature_ptr = &mut signature;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:175:13
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let mut generic_sig_ptr = &mut generic_sig;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `attributes:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:143:109
[INFO] [stdout]     |
[INFO] [stdout] 143 | ...c, exception_table: ref et, attributes: ref attributes } => {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use shorthand field pattern: `ref attributes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_shorthand_field_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:398:41
[INFO] [stdout]     |
[INFO] [stdout] 398 |             &StackMapFrame::SameFrame { tag: tag } => format!("SameFrame {}", tag),
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:399:57
[INFO] [stdout]     |
[INFO] [stdout] 399 | ...   &StackMapFrame::SameLocals1StackItemFrame { tag: tag, stack: _ /*VerificationType*/ } => format!("SameLocals1StackItemFrame {}", tag),
[INFO] [stdout]     |                                                   ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:401:41
[INFO] [stdout]     |
[INFO] [stdout] 401 |             &StackMapFrame::ChopFrame { tag: tag, offset_delta: offset } => format!("ChopFrame {} {}", tag, offset),
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:403:43
[INFO] [stdout]     |
[INFO] [stdout] 403 | ...   &StackMapFrame::AppendFrame { tag: tag, offset_delta: offset, locals: _ /*Vec<VerificationType>*/ } => format!("AppendFrame {} {}",...
[INFO] [stdout]     |                                     ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:405:41
[INFO] [stdout]     |
[INFO] [stdout] 405 |             &StackMapFrame::FutureUse { tag: tag } => format!("FutureUse")
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_5` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_6` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_7` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_8` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_9` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 112 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0170`.
[INFO] [stdout] 
[INFO] [stdout] warning: function `main2` is never used
[INFO] [stdout]   --> src/main.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn main2() {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 14.34s
[INFO] running `Command { std: "docker" "inspect" "e85f403499385f6d90526397f88d1f8906c4fb794d0b0e82f7a23d61836a61f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e85f403499385f6d90526397f88d1f8906c4fb794d0b0e82f7a23d61836a61f4", kill_on_drop: false }`
[INFO] [stdout] e85f403499385f6d90526397f88d1f8906c4fb794d0b0e82f7a23d61836a61f4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f0610bdb09433300db4ad63c0e5d41a794abd4d8b3c9f8c81fb4098a3867d7ba
[INFO] running `Command { std: "docker" "start" "-a" "f0610bdb09433300db4ad63c0e5d41a794abd4d8b3c9f8c81fb4098a3867d7ba", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `agent::Agent`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use agent::Agent;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::printer::ClassfilePrinter`
[INFO] [stdout]   --> src/lib.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use bytecode::printer::ClassfilePrinter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::classfile::Constant`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use bytecode::classfile::Constant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::io::ClassWriter`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use bytecode::io::ClassWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config::Config`
[INFO] [stdout]   --> src/lib.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use config::Config;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `context::static_context`
[INFO] [stdout]   --> src/lib.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use context::static_context;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `instrumentation::asm::transformer::Transformer`
[INFO] [stdout]   --> src/lib.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use instrumentation::asm::transformer::Transformer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `JavaVMPtr`, `MutString`, `ReturnValue`, `VoidPtr`
[INFO] [stdout]   --> src/lib.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | use native::{JavaVMPtr, MutString, VoidPtr, ReturnValue};
[INFO] [stdout]    |              ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `options::Options`
[INFO] [stdout]   --> src/lib.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use options::Options;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `runtime::*`
[INFO] [stdout]   --> src/lib.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use runtime::*;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread::Thread`
[INFO] [stdout]   --> src/lib.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use thread::Thread;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `util::stringify`
[INFO] [stdout]   --> src/lib.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use util::stringify;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::config::Config`
[INFO] [stdout]  --> src/agent.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::config::Config;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::options::Options`
[INFO] [stdout]  --> src/agent.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::options::Options;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:622:38
[INFO] [stdout]     |
[INFO] [stdout] 622 | ...                   tag@0...63 => StackMapFrame::SameFrame { tag: tag },
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:623:39
[INFO] [stdout]     |
[INFO] [stdout] 623 | ...                   tag@64...127 => StackMapFrame::SameLocals1StackItemFrame { tag: tag, stack: read_verification_type(&mut reader) },
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:625:40
[INFO] [stdout]     |
[INFO] [stdout] 625 | ...                   tag@248...250 => StackMapFrame::ChopFrame { tag: tag, offset_delta: reader.get_u16() },
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:627:40
[INFO] [stdout]     |
[INFO] [stdout] 627 | ...   tag@252...254 => StackMapFrame::AppendFrame { tag: tag, offset_delta: reader.get_u16(), locals: (0..tag - 251).map(|_| read_verific...
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:757:31
[INFO] [stdout]     |
[INFO] [stdout] 757 |                 subtype @ 0x00...0x01 => TargetInfo::TypeParameter { subtype: subtype, idx: reader.get_u8() },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:762:31
[INFO] [stdout]     |
[INFO] [stdout] 762 | ...   subtype @ 0x11...0x12 => TargetInfo::TypeParameterBound { subtype: subtype, param_idx: reader.get_u8(), bound_index: reader.get_u8(...
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:766:31
[INFO] [stdout]     |
[INFO] [stdout] 766 |                 subtype @ 0x13...0x15 => TargetInfo::Empty { subtype: subtype },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:773:31
[INFO] [stdout]     |
[INFO] [stdout] 773 |                 subtype @ 0x40...0x41 => TargetInfo::LocalVar { subtype: subtype, target: {
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:785:31
[INFO] [stdout]     |
[INFO] [stdout] 785 |                 subtype @ 0x43...0x46 => TargetInfo::Offset { subtype: subtype, idx: reader.get_u16() },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:790:31
[INFO] [stdout]     |
[INFO] [stdout] 790 | ...   subtype @ 0x47...0x4b => TargetInfo::TypeArgument { subtype: subtype, offset: reader.get_u16(), type_arg_idx: reader.get_u8() },
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/context.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout] 9  | / ///
[INFO] [stdout] 10 | | /// Public static mutable *cough* agent context. This seems necessary as our code is invoked from
[INFO] [stdout] 11 | | /// the JVM and we need a place to store the temporary mutable data.
[INFO] [stdout] 12 | | ///
[INFO] [stdout] 13 | | /// This wouldn't be such a problem if this was a C program, but you know, this is not a C program.
[INFO] [stdout] 14 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/context.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | / lazy_static! {
[INFO] [stdout] 16 | |     static ref STATIC_CONTEXT: AgentContext = AgentContext::new();
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 |     jvm: Box<JVMF>,
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     jvm: Box<dyn JVMF>,
[INFO] [stdout]    |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     environment: Box<JVMTI>
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     environment: Box<dyn JVMTI>
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:866:21
[INFO] [stdout]     |
[INFO] [stdout] 866 |     source: &'a mut Read,
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 866 |     source: &'a mut dyn Read,
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/bytecode/io/writer.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 |     target: &'a mut Write
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     target: &'a mut dyn Write
[INFO] [stdout]   |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:37:30
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new_from(jvm: Box<JVMF>) -> Agent {
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new_from(jvm: Box<dyn JVMF>) -> Agent {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/emulator.rs:42:45
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError> {
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/environment/jvm.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError>;
[INFO] [stdout]   |                                             ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError>;
[INFO] [stdout]   |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/environment/jvm.rs:31:45
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError> {
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]   --> src/class.rs:72:41
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_start_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                         ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/class.rs:72:64
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_end_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                                                ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/class.rs:98:34
[INFO] [stdout]    |
[INFO] [stdout] 98 |                     package: pkg.trim_right_matches(".").to_string(),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 98 |                     package: pkg.trim_end_matches(".").to_string(),
[INFO] [stdout]    |                                  ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_5` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bindings_with_variant_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_6` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_7` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_8` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_9` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `et`
[INFO] [stdout]    --> src/bytecode/printer.rs:143:105
[INFO] [stdout]     |
[INFO] [stdout] 143 | ...ode: ref c, exception_table: ref et, attributes: ref attributes } => {
[INFO] [stdout]     |                                     ^^ help: if this is intentional, prefix it with an underscore: `_et`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:246:45
[INFO] [stdout]     |
[INFO] [stdout] 246 |                     &Instruction::IF_ACMPEQ(value) => format!("if_acmpeq"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:247:45
[INFO] [stdout]     |
[INFO] [stdout] 247 |                     &Instruction::IF_ACMPNE(value) => format!("if_acmpne"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     &Instruction::IF_ICMPEQ(value) => format!("if_icmpeq"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:249:45
[INFO] [stdout]     |
[INFO] [stdout] 249 |                     &Instruction::IF_ICMPNE(value) => format!("if_icmpne"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:250:45
[INFO] [stdout]     |
[INFO] [stdout] 250 |                     &Instruction::IF_ICMPLT(value) => format!("if_icmplt"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:251:45
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     &Instruction::IF_ICMPGE(value) => format!("if_icmpge"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:252:45
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     &Instruction::IF_ICMPGT(value) => format!("if_icmpgt"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:253:45
[INFO] [stdout]     |
[INFO] [stdout] 253 |                     &Instruction::IF_ICMPLE(value) => format!("if_icmple"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:254:40
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     &Instruction::IFEQ(value) => format!("ifeq"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:255:40
[INFO] [stdout]     |
[INFO] [stdout] 255 |                     &Instruction::IFNE(value) => format!("ifne"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:256:40
[INFO] [stdout]     |
[INFO] [stdout] 256 |                     &Instruction::IFLT(value) => format!("iflt"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:257:40
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     &Instruction::IFGE(value) => format!("ifge"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:258:40
[INFO] [stdout]     |
[INFO] [stdout] 258 |                     &Instruction::IFGT(value) => format!("ifgt"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:259:40
[INFO] [stdout]     |
[INFO] [stdout] 259 |                     &Instruction::IFLE(value) => format!("ifle"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:260:45
[INFO] [stdout]     |
[INFO] [stdout] 260 |                     &Instruction::IFNONNULL(value) => format!("ifnonnull"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:261:42
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     &Instruction::IFNULL(value) => format!("ifnull"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:262:40
[INFO] [stdout]     |
[INFO] [stdout] 262 |                     &Instruction::IINC(value, increment) => format!("iinc"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `increment`
[INFO] [stdout]    --> src/bytecode/printer.rs:262:47
[INFO] [stdout]     |
[INFO] [stdout] 262 |                     &Instruction::IINC(value, increment) => format!("iinc"),
[INFO] [stdout]     |                                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_increment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:263:41
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     &Instruction::ILOAD(value) => format!("iload"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:270:46
[INFO] [stdout]     |
[INFO] [stdout] 270 |                     &Instruction::INSTANCEOF(value) => format!("instanceof"),
[INFO] [stdout]     |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/bytecode/printer.rs:272:58
[INFO] [stdout]     |
[INFO] [stdout] 272 |                     &Instruction::INVOKEINTERFACE(value, index) => format!("invokeinterface #{}", value),
[INFO] [stdout]     |                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:289:39
[INFO] [stdout]     |
[INFO] [stdout] 289 |                     &Instruction::JSR(value) => format!("jsr"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:290:41
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     &Instruction::JSR_W(value) => format!("jsr_w"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:301:39
[INFO] [stdout]     |
[INFO] [stdout] 301 |                     &Instruction::LDC(value) => format!("ldc"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |                     &Instruction::LDC_W(value) => format!("ldc_w"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:303:42
[INFO] [stdout]     |
[INFO] [stdout] 303 |                     &Instruction::LDC2_W(value) => format!("ldc2_w"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:305:41
[INFO] [stdout]     |
[INFO] [stdout] 305 |                     &Instruction::LLOAD(value) => format!("lload"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:312:48
[INFO] [stdout]     |
[INFO] [stdout] 312 |                     &Instruction::LOOKUPSWITCH(value, ref table) => format!("lookupswitch"),
[INFO] [stdout]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table`
[INFO] [stdout]    --> src/bytecode/printer.rs:312:59
[INFO] [stdout]     |
[INFO] [stdout] 312 |                     &Instruction::LOOKUPSWITCH(value, ref table) => format!("lookupswitch"),
[INFO] [stdout]     |                                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:328:50
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     &Instruction::MULTIANEWARRAY(value, size) => format!("multianewarray"),
[INFO] [stdout]     |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]    --> src/bytecode/printer.rs:328:57
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     &Instruction::MULTIANEWARRAY(value, size) => format!("multianewarray"),
[INFO] [stdout]     |                                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:329:39
[INFO] [stdout]     |
[INFO] [stdout] 329 |                     &Instruction::NEW(value) => format!("new"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:330:44
[INFO] [stdout]     |
[INFO] [stdout] 330 |                     &Instruction::NEWARRAY(value) => format!("newarray"),
[INFO] [stdout]     |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:334:44
[INFO] [stdout]     |
[INFO] [stdout] 334 |                     &Instruction::PUTFIELD(value) => format!("putfield"),
[INFO] [stdout]     |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:335:45
[INFO] [stdout]     |
[INFO] [stdout] 335 |                     &Instruction::PUTSTATIC(value) => format!("putstatic"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:336:39
[INFO] [stdout]     |
[INFO] [stdout] 336 |                     &Instruction::RET(value) => format!("ret"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:342:47
[INFO] [stdout]     |
[INFO] [stdout] 342 |                     &Instruction::TABLESWITCH(value, _, _, _) => format!("tableswitch"),
[INFO] [stdout]     |                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:343:42
[INFO] [stdout]     |
[INFO] [stdout] 343 |                     &Instruction::IINC_W(value, increment) => format!("iinc_w"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `increment`
[INFO] [stdout]    --> src/bytecode/printer.rs:343:49
[INFO] [stdout]     |
[INFO] [stdout] 343 |                     &Instruction::IINC_W(value, increment) => format!("iinc_w"),
[INFO] [stdout]     |                                                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_increment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tag`
[INFO] [stdout]    --> src/bytecode/printer.rs:405:46
[INFO] [stdout]     |
[INFO] [stdout] 405 |             &StackMapFrame::FutureUse { tag: tag } => format!("FutureUse")
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_5`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_6`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_7`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_8`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_9`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:62:41
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn add_utf8_constant(&mut self, content: String) {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn add_string_constant(&mut self, content: String) {
[INFO] [stdout]    |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `classfile`
[INFO] [stdout]   --> src/instrumentation/mod.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn from_classfile(classfile: &Classfile) -> Option<JavaClass> {
[INFO] [stdout]    |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_classfile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method`
[INFO] [stdout]   --> src/instrumentation/mod.rs:41:23
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn add_method(method: Method) {
[INFO] [stdout]    |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_method`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let mut info_ptr = &mut info;
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let mut method_ptr = &mut method_name;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |         let mut signature_ptr = &mut signature;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:175:13
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let mut generic_sig_ptr = &mut generic_sig;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `attributes:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:143:109
[INFO] [stdout]     |
[INFO] [stdout] 143 | ...c, exception_table: ref et, attributes: ref attributes } => {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use shorthand field pattern: `ref attributes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_shorthand_field_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:398:41
[INFO] [stdout]     |
[INFO] [stdout] 398 |             &StackMapFrame::SameFrame { tag: tag } => format!("SameFrame {}", tag),
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:399:57
[INFO] [stdout]     |
[INFO] [stdout] 399 | ...   &StackMapFrame::SameLocals1StackItemFrame { tag: tag, stack: _ /*VerificationType*/ } => format!("SameLocals1StackItemFrame {}", tag),
[INFO] [stdout]     |                                                   ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:401:41
[INFO] [stdout]     |
[INFO] [stdout] 401 |             &StackMapFrame::ChopFrame { tag: tag, offset_delta: offset } => format!("ChopFrame {} {}", tag, offset),
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:403:43
[INFO] [stdout]     |
[INFO] [stdout] 403 | ...   &StackMapFrame::AppendFrame { tag: tag, offset_delta: offset, locals: _ /*Vec<VerificationType>*/ } => format!("AppendFrame {} {}",...
[INFO] [stdout]     |                                     ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:405:41
[INFO] [stdout]     |
[INFO] [stdout] 405 |             &StackMapFrame::FutureUse { tag: tag } => format!("FutureUse")
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_5` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_6` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_7` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_8` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_9` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 112 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0170`.
[INFO] [stdout] 
[INFO] [stderr]    Compiling jvmti v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `main2` is never used
[INFO] [stdout]   --> src/main.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn main2() {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/bytecode/mod.rs:16:43
[INFO] [stdout]    |
[INFO] [stdout] 16 | ...                   assert!(true, format!("{:?}", class));
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 16 -                             assert!(true, format!("{:?}", class));
[INFO] [stdout] 16 +                             assert!(true, "{:?}", class);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/bytecode/mod.rs:18:48
[INFO] [stdout]    |
[INFO] [stdout] 18 |                     Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 18 -                     Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout] 18 +                     Err(err) => assert!(false, "{:?}", err)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/bytecode/mod.rs:22:40
[INFO] [stdout]    |
[INFO] [stdout] 22 |             Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 22 -             Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout] 22 +             Err(err) => assert!(false, "{:?}", err)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/bytecode/mod.rs:32:39
[INFO] [stdout]    |
[INFO] [stdout] 32 |                         assert!(true, format!("{:#?}", class.methods));
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 32 -                         assert!(true, format!("{:#?}", class.methods));
[INFO] [stdout] 32 +                         assert!(true, "{:#?}", class.methods);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/bytecode/mod.rs:34:48
[INFO] [stdout]    |
[INFO] [stdout] 34 |                     Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 34 -                     Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout] 34 +                     Err(err) => assert!(false, "{:?}", err)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/bytecode/mod.rs:38:40
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 38 -             Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout] 38 +             Err(err) => assert!(false, "{:?}", err)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> tests/bytecode/mod.rs:105:44
[INFO] [stdout]     |
[INFO] [stdout] 105 |                 Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 105 -                 Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stdout] 105 +                 Err(err) => assert!(false, "{:?}", err)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> tests/bytecode/mod.rs:112:42
[INFO] [stdout]     |
[INFO] [stdout] 112 |             assert!(read_result.is_ok(), format!("{:?}", read_result.err()));
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 112 -             assert!(read_result.is_ok(), format!("{:?}", read_result.err()));
[INFO] [stdout] 112 +             assert!(read_result.is_ok(), "{:?}", read_result.err());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> tests/bytecode/mod.rs:129:23
[INFO] [stdout]     |
[INFO] [stdout] 129 |         assert!(true, format!("{:?}", target));
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 129 -         assert!(true, format!("{:?}", target));
[INFO] [stdout] 129 +         assert!(true, "{:?}", target);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `agent::Agent`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use agent::Agent;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::printer::ClassfilePrinter`
[INFO] [stdout]   --> src/lib.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use bytecode::printer::ClassfilePrinter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::classfile::Constant`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use bytecode::classfile::Constant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytecode::io::ClassWriter`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use bytecode::io::ClassWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config::Config`
[INFO] [stdout]   --> src/lib.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use config::Config;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `context::static_context`
[INFO] [stdout]   --> src/lib.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use context::static_context;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `instrumentation::asm::transformer::Transformer`
[INFO] [stdout]   --> src/lib.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use instrumentation::asm::transformer::Transformer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `JavaVMPtr`, `MutString`, `ReturnValue`, `VoidPtr`
[INFO] [stdout]   --> src/lib.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | use native::{JavaVMPtr, MutString, VoidPtr, ReturnValue};
[INFO] [stdout]    |              ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `options::Options`
[INFO] [stdout]   --> src/lib.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use options::Options;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `runtime::*`
[INFO] [stdout]   --> src/lib.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use runtime::*;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread::Thread`
[INFO] [stdout]   --> src/lib.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use thread::Thread;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `util::stringify`
[INFO] [stdout]   --> src/lib.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use util::stringify;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::config::Config`
[INFO] [stdout]  --> src/agent.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::config::Config;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::options::Options`
[INFO] [stdout]  --> src/agent.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::options::Options;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:622:38
[INFO] [stdout]     |
[INFO] [stdout] 622 | ...                   tag@0...63 => StackMapFrame::SameFrame { tag: tag },
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:623:39
[INFO] [stdout]     |
[INFO] [stdout] 623 | ...                   tag@64...127 => StackMapFrame::SameLocals1StackItemFrame { tag: tag, stack: read_verification_type(&mut reader) },
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:625:40
[INFO] [stdout]     |
[INFO] [stdout] 625 | ...                   tag@248...250 => StackMapFrame::ChopFrame { tag: tag, offset_delta: reader.get_u16() },
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:627:40
[INFO] [stdout]     |
[INFO] [stdout] 627 | ...   tag@252...254 => StackMapFrame::AppendFrame { tag: tag, offset_delta: reader.get_u16(), locals: (0..tag - 251).map(|_| read_verific...
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:757:31
[INFO] [stdout]     |
[INFO] [stdout] 757 |                 subtype @ 0x00...0x01 => TargetInfo::TypeParameter { subtype: subtype, idx: reader.get_u8() },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:762:31
[INFO] [stdout]     |
[INFO] [stdout] 762 | ...   subtype @ 0x11...0x12 => TargetInfo::TypeParameterBound { subtype: subtype, param_idx: reader.get_u8(), bound_index: reader.get_u8(...
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:766:31
[INFO] [stdout]     |
[INFO] [stdout] 766 |                 subtype @ 0x13...0x15 => TargetInfo::Empty { subtype: subtype },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:773:31
[INFO] [stdout]     |
[INFO] [stdout] 773 |                 subtype @ 0x40...0x41 => TargetInfo::LocalVar { subtype: subtype, target: {
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:785:31
[INFO] [stdout]     |
[INFO] [stdout] 785 |                 subtype @ 0x43...0x46 => TargetInfo::Offset { subtype: subtype, idx: reader.get_u16() },
[INFO] [stdout]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:790:31
[INFO] [stdout]     |
[INFO] [stdout] 790 | ...   subtype @ 0x47...0x4b => TargetInfo::TypeArgument { subtype: subtype, offset: reader.get_u16(), type_arg_idx: reader.get_u8() },
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/context.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout] 9  | / ///
[INFO] [stdout] 10 | | /// Public static mutable *cough* agent context. This seems necessary as our code is invoked from
[INFO] [stdout] 11 | | /// the JVM and we need a place to store the temporary mutable data.
[INFO] [stdout] 12 | | ///
[INFO] [stdout] 13 | | /// This wouldn't be such a problem if this was a C program, but you know, this is not a C program.
[INFO] [stdout] 14 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/context.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | / lazy_static! {
[INFO] [stdout] 16 | |     static ref STATIC_CONTEXT: AgentContext = AgentContext::new();
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 |     jvm: Box<JVMF>,
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     jvm: Box<dyn JVMF>,
[INFO] [stdout]    |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     environment: Box<JVMTI>
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     environment: Box<dyn JVMTI>
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytecode/io/reader.rs:866:21
[INFO] [stdout]     |
[INFO] [stdout] 866 |     source: &'a mut Read,
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 866 |     source: &'a mut dyn Read,
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/bytecode/io/writer.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 |     target: &'a mut Write
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     target: &'a mut dyn Write
[INFO] [stdout]   |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/agent.rs:37:30
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new_from(jvm: Box<JVMF>) -> Agent {
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new_from(jvm: Box<dyn JVMF>) -> Agent {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/emulator.rs:42:45
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError> {
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/environment/jvm.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError>;
[INFO] [stdout]   |                                             ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError>;
[INFO] [stdout]   |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/environment/jvm.rs:31:45
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError> {
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main2` is never used
[INFO] [stdout]   --> src/main.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn main2() {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]   --> src/class.rs:72:41
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_start_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                         ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/class.rs:72:64
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_end_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stdout]    |                                                                ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/class.rs:98:34
[INFO] [stdout]    |
[INFO] [stdout] 98 |                     package: pkg.trim_right_matches(".").to_string(),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 98 |                     package: pkg.trim_end_matches(".").to_string(),
[INFO] [stdout]    |                                  ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_5` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bindings_with_variant_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_6` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_7` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_8` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0170]: pattern binding `Java1_9` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `et`
[INFO] [stdout]    --> src/bytecode/printer.rs:143:105
[INFO] [stdout]     |
[INFO] [stdout] 143 | ...ode: ref c, exception_table: ref et, attributes: ref attributes } => {
[INFO] [stdout]     |                                     ^^ help: if this is intentional, prefix it with an underscore: `_et`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:246:45
[INFO] [stdout]     |
[INFO] [stdout] 246 |                     &Instruction::IF_ACMPEQ(value) => format!("if_acmpeq"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:247:45
[INFO] [stdout]     |
[INFO] [stdout] 247 |                     &Instruction::IF_ACMPNE(value) => format!("if_acmpne"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     &Instruction::IF_ICMPEQ(value) => format!("if_icmpeq"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:249:45
[INFO] [stdout]     |
[INFO] [stdout] 249 |                     &Instruction::IF_ICMPNE(value) => format!("if_icmpne"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:250:45
[INFO] [stdout]     |
[INFO] [stdout] 250 |                     &Instruction::IF_ICMPLT(value) => format!("if_icmplt"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:251:45
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     &Instruction::IF_ICMPGE(value) => format!("if_icmpge"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:252:45
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     &Instruction::IF_ICMPGT(value) => format!("if_icmpgt"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:253:45
[INFO] [stdout]     |
[INFO] [stdout] 253 |                     &Instruction::IF_ICMPLE(value) => format!("if_icmple"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:254:40
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     &Instruction::IFEQ(value) => format!("ifeq"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:255:40
[INFO] [stdout]     |
[INFO] [stdout] 255 |                     &Instruction::IFNE(value) => format!("ifne"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:256:40
[INFO] [stdout]     |
[INFO] [stdout] 256 |                     &Instruction::IFLT(value) => format!("iflt"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:257:40
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     &Instruction::IFGE(value) => format!("ifge"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:258:40
[INFO] [stdout]     |
[INFO] [stdout] 258 |                     &Instruction::IFGT(value) => format!("ifgt"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:259:40
[INFO] [stdout]     |
[INFO] [stdout] 259 |                     &Instruction::IFLE(value) => format!("ifle"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:260:45
[INFO] [stdout]     |
[INFO] [stdout] 260 |                     &Instruction::IFNONNULL(value) => format!("ifnonnull"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:261:42
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     &Instruction::IFNULL(value) => format!("ifnull"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:262:40
[INFO] [stdout]     |
[INFO] [stdout] 262 |                     &Instruction::IINC(value, increment) => format!("iinc"),
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `increment`
[INFO] [stdout]    --> src/bytecode/printer.rs:262:47
[INFO] [stdout]     |
[INFO] [stdout] 262 |                     &Instruction::IINC(value, increment) => format!("iinc"),
[INFO] [stdout]     |                                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_increment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:263:41
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     &Instruction::ILOAD(value) => format!("iload"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:270:46
[INFO] [stdout]     |
[INFO] [stdout] 270 |                     &Instruction::INSTANCEOF(value) => format!("instanceof"),
[INFO] [stdout]     |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/bytecode/printer.rs:272:58
[INFO] [stdout]     |
[INFO] [stdout] 272 |                     &Instruction::INVOKEINTERFACE(value, index) => format!("invokeinterface #{}", value),
[INFO] [stdout]     |                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:289:39
[INFO] [stdout]     |
[INFO] [stdout] 289 |                     &Instruction::JSR(value) => format!("jsr"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:290:41
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     &Instruction::JSR_W(value) => format!("jsr_w"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:301:39
[INFO] [stdout]     |
[INFO] [stdout] 301 |                     &Instruction::LDC(value) => format!("ldc"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |                     &Instruction::LDC_W(value) => format!("ldc_w"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:303:42
[INFO] [stdout]     |
[INFO] [stdout] 303 |                     &Instruction::LDC2_W(value) => format!("ldc2_w"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:305:41
[INFO] [stdout]     |
[INFO] [stdout] 305 |                     &Instruction::LLOAD(value) => format!("lload"),
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:312:48
[INFO] [stdout]     |
[INFO] [stdout] 312 |                     &Instruction::LOOKUPSWITCH(value, ref table) => format!("lookupswitch"),
[INFO] [stdout]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table`
[INFO] [stdout]    --> src/bytecode/printer.rs:312:59
[INFO] [stdout]     |
[INFO] [stdout] 312 |                     &Instruction::LOOKUPSWITCH(value, ref table) => format!("lookupswitch"),
[INFO] [stdout]     |                                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:328:50
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     &Instruction::MULTIANEWARRAY(value, size) => format!("multianewarray"),
[INFO] [stdout]     |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]    --> src/bytecode/printer.rs:328:57
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     &Instruction::MULTIANEWARRAY(value, size) => format!("multianewarray"),
[INFO] [stdout]     |                                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:329:39
[INFO] [stdout]     |
[INFO] [stdout] 329 |                     &Instruction::NEW(value) => format!("new"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:330:44
[INFO] [stdout]     |
[INFO] [stdout] 330 |                     &Instruction::NEWARRAY(value) => format!("newarray"),
[INFO] [stdout]     |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:334:44
[INFO] [stdout]     |
[INFO] [stdout] 334 |                     &Instruction::PUTFIELD(value) => format!("putfield"),
[INFO] [stdout]     |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:335:45
[INFO] [stdout]     |
[INFO] [stdout] 335 |                     &Instruction::PUTSTATIC(value) => format!("putstatic"),
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:336:39
[INFO] [stdout]     |
[INFO] [stdout] 336 |                     &Instruction::RET(value) => format!("ret"),
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:342:47
[INFO] [stdout]     |
[INFO] [stdout] 342 |                     &Instruction::TABLESWITCH(value, _, _, _) => format!("tableswitch"),
[INFO] [stdout]     |                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/bytecode/printer.rs:343:42
[INFO] [stdout]     |
[INFO] [stdout] 343 |                     &Instruction::IINC_W(value, increment) => format!("iinc_w"),
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `increment`
[INFO] [stdout]    --> src/bytecode/printer.rs:343:49
[INFO] [stdout]     |
[INFO] [stdout] 343 |                     &Instruction::IINC_W(value, increment) => format!("iinc_w"),
[INFO] [stdout]     |                                                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_increment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tag`
[INFO] [stdout]    --> src/bytecode/printer.rs:405:46
[INFO] [stdout]     |
[INFO] [stdout] 405 |             &StackMapFrame::FutureUse { tag: tag } => format!("FutureUse")
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_5`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_6`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_7`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_8`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Java1_9`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:62:41
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn add_utf8_constant(&mut self, content: String) {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn add_string_constant(&mut self, content: String) {
[INFO] [stdout]    |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `classfile`
[INFO] [stdout]   --> src/instrumentation/mod.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn from_classfile(classfile: &Classfile) -> Option<JavaClass> {
[INFO] [stdout]    |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_classfile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method`
[INFO] [stdout]   --> src/instrumentation/mod.rs:41:23
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn add_method(method: Method) {
[INFO] [stdout]    |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_method`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> tests/util.rs:21:60
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let s: MutString = CString::new(expected).unwrap().as_ptr() as *mut i8;
[INFO] [stdout]    |                            ------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> tests/util.rs:28:60
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let s: MutString = CString::new(expected).unwrap().as_ptr() as *mut i8;
[INFO] [stdout]    |                            ------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let mut info_ptr = &mut info;
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let mut method_ptr = &mut method_name;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |         let mut signature_ptr = &mut signature;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/environment/jvmti.rs:175:13
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let mut generic_sig_ptr = &mut generic_sig;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `attributes:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:143:109
[INFO] [stdout]     |
[INFO] [stdout] 143 | ...c, exception_table: ref et, attributes: ref attributes } => {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use shorthand field pattern: `ref attributes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_shorthand_field_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:398:41
[INFO] [stdout]     |
[INFO] [stdout] 398 |             &StackMapFrame::SameFrame { tag: tag } => format!("SameFrame {}", tag),
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:399:57
[INFO] [stdout]     |
[INFO] [stdout] 399 | ...   &StackMapFrame::SameLocals1StackItemFrame { tag: tag, stack: _ /*VerificationType*/ } => format!("SameLocals1StackItemFrame {}", tag),
[INFO] [stdout]     |                                                   ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:401:41
[INFO] [stdout]     |
[INFO] [stdout] 401 |             &StackMapFrame::ChopFrame { tag: tag, offset_delta: offset } => format!("ChopFrame {} {}", tag, offset),
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:403:43
[INFO] [stdout]     |
[INFO] [stdout] 403 | ...   &StackMapFrame::AppendFrame { tag: tag, offset_delta: offset, locals: _ /*Vec<VerificationType>*/ } => format!("AppendFrame {} {}",...
[INFO] [stdout]     |                                     ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `tag:` in this pattern is redundant
[INFO] [stdout]    --> src/bytecode/printer.rs:405:41
[INFO] [stdout]     |
[INFO] [stdout] 405 |             &StackMapFrame::FutureUse { tag: tag } => format!("FutureUse")
[INFO] [stdout]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_5` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Java1_5 => 49,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_6` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Java1_6 => 50,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_7` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Java1_7 => 51,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_7`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_8` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Java1_8 => 52,
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Java1_9` should have a snake case name
[INFO] [stdout]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Java1_9 => 53
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 112 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0170`.
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.49s
[INFO] running `Command { std: "docker" "inspect" "f0610bdb09433300db4ad63c0e5d41a794abd4d8b3c9f8c81fb4098a3867d7ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f0610bdb09433300db4ad63c0e5d41a794abd4d8b3c9f8c81fb4098a3867d7ba", kill_on_drop: false }`
[INFO] [stdout] f0610bdb09433300db4ad63c0e5d41a794abd4d8b3c9f8c81fb4098a3867d7ba
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2734f4a3e1901b3f3fe919e2695d119458701c6e1da8b4d3f73fda17b7c09e53
[INFO] running `Command { std: "docker" "start" "-a" "2734f4a3e1901b3f3fe919e2695d119458701c6e1da8b4d3f73fda17b7c09e53", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `agent::Agent`
[INFO] [stderr]  --> src/lib.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use agent::Agent;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bytecode::printer::ClassfilePrinter`
[INFO] [stderr]   --> src/lib.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use bytecode::printer::ClassfilePrinter;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bytecode::classfile::Constant`
[INFO] [stderr]   --> src/lib.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use bytecode::classfile::Constant;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bytecode::io::ClassWriter`
[INFO] [stderr]   --> src/lib.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use bytecode::io::ClassWriter;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `config::Config`
[INFO] [stderr]   --> src/lib.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use config::Config;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `context::static_context`
[INFO] [stderr]   --> src/lib.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use context::static_context;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `instrumentation::asm::transformer::Transformer`
[INFO] [stderr]   --> src/lib.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use instrumentation::asm::transformer::Transformer;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `JavaVMPtr`, `MutString`, `ReturnValue`, `VoidPtr`
[INFO] [stderr]   --> src/lib.rs:16:14
[INFO] [stderr]    |
[INFO] [stderr] 16 | use native::{JavaVMPtr, MutString, VoidPtr, ReturnValue};
[INFO] [stderr]    |              ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `options::Options`
[INFO] [stderr]   --> src/lib.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | use options::Options;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `runtime::*`
[INFO] [stderr]   --> src/lib.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use runtime::*;
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Cursor`
[INFO] [stderr]   --> src/lib.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | use std::io::Cursor;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `thread::Thread`
[INFO] [stderr]   --> src/lib.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use thread::Thread;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `util::stringify`
[INFO] [stderr]   --> src/lib.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use util::stringify;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::config::Config`
[INFO] [stderr]  --> src/agent.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use super::config::Config;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::options::Options`
[INFO] [stderr]  --> src/agent.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use super::options::Options;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:622:38
[INFO] [stderr]     |
[INFO] [stderr] 622 | ...                   tag@0...63 => StackMapFrame::SameFrame { tag: tag },
[INFO] [stderr]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:623:39
[INFO] [stderr]     |
[INFO] [stderr] 623 | ...                   tag@64...127 => StackMapFrame::SameLocals1StackItemFrame { tag: tag, stack: read_verification_type(&mut reader) },
[INFO] [stderr]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:625:40
[INFO] [stderr]     |
[INFO] [stderr] 625 | ...                   tag@248...250 => StackMapFrame::ChopFrame { tag: tag, offset_delta: reader.get_u16() },
[INFO] [stderr]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:627:40
[INFO] [stderr]     |
[INFO] [stderr] 627 | ...   tag@252...254 => StackMapFrame::AppendFrame { tag: tag, offset_delta: reader.get_u16(), locals: (0..tag - 251).map(|_| read_verific...
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:757:31
[INFO] [stderr]     |
[INFO] [stderr] 757 |                 subtype @ 0x00...0x01 => TargetInfo::TypeParameter { subtype: subtype, idx: reader.get_u8() },
[INFO] [stderr]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:762:31
[INFO] [stderr]     |
[INFO] [stderr] 762 | ...   subtype @ 0x11...0x12 => TargetInfo::TypeParameterBound { subtype: subtype, param_idx: reader.get_u8(), bound_index: reader.get_u8(...
[INFO] [stderr]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:766:31
[INFO] [stderr]     |
[INFO] [stderr] 766 |                 subtype @ 0x13...0x15 => TargetInfo::Empty { subtype: subtype },
[INFO] [stderr]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:773:31
[INFO] [stderr]     |
[INFO] [stderr] 773 |                 subtype @ 0x40...0x41 => TargetInfo::LocalVar { subtype: subtype, target: {
[INFO] [stderr]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:785:31
[INFO] [stderr]     |
[INFO] [stderr] 785 |                 subtype @ 0x43...0x46 => TargetInfo::Offset { subtype: subtype, idx: reader.get_u16() },
[INFO] [stderr]     |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:790:31
[INFO] [stderr]     |
[INFO] [stderr] 790 | ...   subtype @ 0x47...0x4b => TargetInfo::TypeArgument { subtype: subtype, offset: reader.get_u16(), type_arg_idx: reader.get_u8() },
[INFO] [stderr]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/context.rs:9:1
[INFO] [stderr]    |
[INFO] [stderr] 9  | / ///
[INFO] [stderr] 10 | | /// Public static mutable *cough* agent context. This seems necessary as our code is invoked from
[INFO] [stderr] 11 | | /// the JVM and we need a place to store the temporary mutable data.
[INFO] [stderr] 12 | | ///
[INFO] [stderr] 13 | | /// This wouldn't be such a problem if this was a C program, but you know, this is not a C program.
[INFO] [stderr] 14 | | ///
[INFO] [stderr]    | |_--^
[INFO] [stderr]    |   |
[INFO] [stderr]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/context.rs:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | / lazy_static! {
[INFO] [stderr] 16 | |     static ref STATIC_CONTEXT: AgentContext = AgentContext::new();
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/agent.rs:12:14
[INFO] [stderr]    |
[INFO] [stderr] 12 |     jvm: Box<JVMF>,
[INFO] [stderr]    |              ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 12 |     jvm: Box<dyn JVMF>,
[INFO] [stderr]    |              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/agent.rs:15:22
[INFO] [stderr]    |
[INFO] [stderr] 15 |     environment: Box<JVMTI>
[INFO] [stderr]    |                      ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 15 |     environment: Box<dyn JVMTI>
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/bytecode/io/reader.rs:866:21
[INFO] [stderr]     |
[INFO] [stderr] 866 |     source: &'a mut Read,
[INFO] [stderr]     |                     ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 866 |     source: &'a mut dyn Read,
[INFO] [stderr]     |                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/bytecode/io/writer.rs:5:21
[INFO] [stderr]   |
[INFO] [stderr] 5 |     target: &'a mut Write
[INFO] [stderr]   |                     ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]   |
[INFO] [stderr] 5 |     target: &'a mut dyn Write
[INFO] [stderr]   |                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/agent.rs:37:30
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub fn new_from(jvm: Box<JVMF>) -> Agent {
[INFO] [stderr]    |                              ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub fn new_from(jvm: Box<dyn JVMF>) -> Agent {
[INFO] [stderr]    |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/emulator.rs:42:45
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError> {
[INFO] [stderr]    |                                             ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError> {
[INFO] [stderr]    |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/environment/jvm.rs:9:45
[INFO] [stderr]   |
[INFO] [stderr] 9 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError>;
[INFO] [stderr]   |                                             ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]   |
[INFO] [stderr] 9 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError>;
[INFO] [stderr]   |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/environment/jvm.rs:31:45
[INFO] [stderr]    |
[INFO] [stderr] 31 |     fn get_environment(&self) -> Result<Box<JVMTI>, NativeError> {
[INFO] [stderr]    |                                             ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 31 |     fn get_environment(&self) -> Result<Box<dyn JVMTI>, NativeError> {
[INFO] [stderr]    |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stderr]   --> src/class.rs:72:41
[INFO] [stderr]    |
[INFO] [stderr] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]    |
[INFO] [stderr] 72 |             JavaType::Class(cls) => cls.trim_start_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stderr]    |                                         ~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stderr]   --> src/class.rs:72:64
[INFO] [stderr]    |
[INFO] [stderr] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_right_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]    |
[INFO] [stderr] 72 |             JavaType::Class(cls) => cls.trim_left_matches("L").trim_end_matches(";").replace(";", "").replace("/", ".").to_string()
[INFO] [stderr]    |                                                                ~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stderr]   --> src/class.rs:98:34
[INFO] [stderr]    |
[INFO] [stderr] 98 |                     package: pkg.trim_right_matches(".").to_string(),
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]    |
[INFO] [stderr] 98 |                     package: pkg.trim_end_matches(".").to_string(),
[INFO] [stderr]    |                                  ~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning[E0170]: pattern binding `Java1_5` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             Java1_5 => 49,
[INFO] [stderr]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_5`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bindings_with_variant_name)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning[E0170]: pattern binding `Java1_6` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 |             Java1_6 => 50,
[INFO] [stderr]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_6`
[INFO] [stderr] 
[INFO] [stderr] warning[E0170]: pattern binding `Java1_7` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stderr]    |
[INFO] [stderr] 38 |             Java1_7 => 51,
[INFO] [stderr]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_7`
[INFO] [stderr] 
[INFO] [stderr] warning[E0170]: pattern binding `Java1_8` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stderr]    |
[INFO] [stderr] 39 |             Java1_8 => 52,
[INFO] [stderr]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_8`
[INFO] [stderr] 
[INFO] [stderr] warning[E0170]: pattern binding `Java1_9` is named the same as one of the variants of the type `instrumentation::asm::ClassfileVersion`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stderr]    |
[INFO] [stderr] 40 |             Java1_9 => 53
[INFO] [stderr]    |             ^^^^^^^ help: to match on the variant, qualify the path: `instrumentation::asm::ClassfileVersion::Java1_9`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             Java1_5 => 49,
[INFO] [stderr]    |             ------- matches any value
[INFO] [stderr] 37 |             Java1_6 => 50,
[INFO] [stderr]    |             ^^^^^^^ unreachable pattern
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             Java1_5 => 49,
[INFO] [stderr]    |             ------- matches any value
[INFO] [stderr] 37 |             Java1_6 => 50,
[INFO] [stderr] 38 |             Java1_7 => 51,
[INFO] [stderr]    |             ^^^^^^^ unreachable pattern
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             Java1_5 => 49,
[INFO] [stderr]    |             ------- matches any value
[INFO] [stderr] ...
[INFO] [stderr] 39 |             Java1_8 => 52,
[INFO] [stderr]    |             ^^^^^^^ unreachable pattern
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             Java1_5 => 49,
[INFO] [stderr]    |             ------- matches any value
[INFO] [stderr] ...
[INFO] [stderr] 40 |             Java1_9 => 53
[INFO] [stderr]    |             ^^^^^^^ unreachable pattern
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `et`
[INFO] [stderr]    --> src/bytecode/printer.rs:143:105
[INFO] [stderr]     |
[INFO] [stderr] 143 | ...ode: ref c, exception_table: ref et, attributes: ref attributes } => {
[INFO] [stderr]     |                                     ^^ help: if this is intentional, prefix it with an underscore: `_et`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:246:45
[INFO] [stderr]     |
[INFO] [stderr] 246 |                     &Instruction::IF_ACMPEQ(value) => format!("if_acmpeq"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:247:45
[INFO] [stderr]     |
[INFO] [stderr] 247 |                     &Instruction::IF_ACMPNE(value) => format!("if_acmpne"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:248:45
[INFO] [stderr]     |
[INFO] [stderr] 248 |                     &Instruction::IF_ICMPEQ(value) => format!("if_icmpeq"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:249:45
[INFO] [stderr]     |
[INFO] [stderr] 249 |                     &Instruction::IF_ICMPNE(value) => format!("if_icmpne"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:250:45
[INFO] [stderr]     |
[INFO] [stderr] 250 |                     &Instruction::IF_ICMPLT(value) => format!("if_icmplt"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:251:45
[INFO] [stderr]     |
[INFO] [stderr] 251 |                     &Instruction::IF_ICMPGE(value) => format!("if_icmpge"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:252:45
[INFO] [stderr]     |
[INFO] [stderr] 252 |                     &Instruction::IF_ICMPGT(value) => format!("if_icmpgt"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:253:45
[INFO] [stderr]     |
[INFO] [stderr] 253 |                     &Instruction::IF_ICMPLE(value) => format!("if_icmple"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:254:40
[INFO] [stderr]     |
[INFO] [stderr] 254 |                     &Instruction::IFEQ(value) => format!("ifeq"),
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:255:40
[INFO] [stderr]     |
[INFO] [stderr] 255 |                     &Instruction::IFNE(value) => format!("ifne"),
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:256:40
[INFO] [stderr]     |
[INFO] [stderr] 256 |                     &Instruction::IFLT(value) => format!("iflt"),
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:257:40
[INFO] [stderr]     |
[INFO] [stderr] 257 |                     &Instruction::IFGE(value) => format!("ifge"),
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:258:40
[INFO] [stderr]     |
[INFO] [stderr] 258 |                     &Instruction::IFGT(value) => format!("ifgt"),
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:259:40
[INFO] [stderr]     |
[INFO] [stderr] 259 |                     &Instruction::IFLE(value) => format!("ifle"),
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:260:45
[INFO] [stderr]     |
[INFO] [stderr] 260 |                     &Instruction::IFNONNULL(value) => format!("ifnonnull"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:261:42
[INFO] [stderr]     |
[INFO] [stderr] 261 |                     &Instruction::IFNULL(value) => format!("ifnull"),
[INFO] [stderr]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:262:40
[INFO] [stderr]     |
[INFO] [stderr] 262 |                     &Instruction::IINC(value, increment) => format!("iinc"),
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `increment`
[INFO] [stderr]    --> src/bytecode/printer.rs:262:47
[INFO] [stderr]     |
[INFO] [stderr] 262 |                     &Instruction::IINC(value, increment) => format!("iinc"),
[INFO] [stderr]     |                                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_increment`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:263:41
[INFO] [stderr]     |
[INFO] [stderr] 263 |                     &Instruction::ILOAD(value) => format!("iload"),
[INFO] [stderr]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:270:46
[INFO] [stderr]     |
[INFO] [stderr] 270 |                     &Instruction::INSTANCEOF(value) => format!("instanceof"),
[INFO] [stderr]     |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `index`
[INFO] [stderr]    --> src/bytecode/printer.rs:272:58
[INFO] [stderr]     |
[INFO] [stderr] 272 |                     &Instruction::INVOKEINTERFACE(value, index) => format!("invokeinterface #{}", value),
[INFO] [stderr]     |                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:289:39
[INFO] [stderr]     |
[INFO] [stderr] 289 |                     &Instruction::JSR(value) => format!("jsr"),
[INFO] [stderr]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:290:41
[INFO] [stderr]     |
[INFO] [stderr] 290 |                     &Instruction::JSR_W(value) => format!("jsr_w"),
[INFO] [stderr]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:301:39
[INFO] [stderr]     |
[INFO] [stderr] 301 |                     &Instruction::LDC(value) => format!("ldc"),
[INFO] [stderr]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:302:41
[INFO] [stderr]     |
[INFO] [stderr] 302 |                     &Instruction::LDC_W(value) => format!("ldc_w"),
[INFO] [stderr]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:303:42
[INFO] [stderr]     |
[INFO] [stderr] 303 |                     &Instruction::LDC2_W(value) => format!("ldc2_w"),
[INFO] [stderr]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:305:41
[INFO] [stderr]     |
[INFO] [stderr] 305 |                     &Instruction::LLOAD(value) => format!("lload"),
[INFO] [stderr]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:312:48
[INFO] [stderr]     |
[INFO] [stderr] 312 |                     &Instruction::LOOKUPSWITCH(value, ref table) => format!("lookupswitch"),
[INFO] [stderr]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `table`
[INFO] [stderr]    --> src/bytecode/printer.rs:312:59
[INFO] [stderr]     |
[INFO] [stderr] 312 |                     &Instruction::LOOKUPSWITCH(value, ref table) => format!("lookupswitch"),
[INFO] [stderr]     |                                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_table`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:328:50
[INFO] [stderr]     |
[INFO] [stderr] 328 |                     &Instruction::MULTIANEWARRAY(value, size) => format!("multianewarray"),
[INFO] [stderr]     |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `size`
[INFO] [stderr]    --> src/bytecode/printer.rs:328:57
[INFO] [stderr]     |
[INFO] [stderr] 328 |                     &Instruction::MULTIANEWARRAY(value, size) => format!("multianewarray"),
[INFO] [stderr]     |                                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:329:39
[INFO] [stderr]     |
[INFO] [stderr] 329 |                     &Instruction::NEW(value) => format!("new"),
[INFO] [stderr]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:330:44
[INFO] [stderr]     |
[INFO] [stderr] 330 |                     &Instruction::NEWARRAY(value) => format!("newarray"),
[INFO] [stderr]     |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:334:44
[INFO] [stderr]     |
[INFO] [stderr] 334 |                     &Instruction::PUTFIELD(value) => format!("putfield"),
[INFO] [stderr]     |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:335:45
[INFO] [stderr]     |
[INFO] [stderr] 335 |                     &Instruction::PUTSTATIC(value) => format!("putstatic"),
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:336:39
[INFO] [stderr]     |
[INFO] [stderr] 336 |                     &Instruction::RET(value) => format!("ret"),
[INFO] [stderr]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:342:47
[INFO] [stderr]     |
[INFO] [stderr] 342 |                     &Instruction::TABLESWITCH(value, _, _, _) => format!("tableswitch"),
[INFO] [stderr]     |                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/bytecode/printer.rs:343:42
[INFO] [stderr]     |
[INFO] [stderr] 343 |                     &Instruction::IINC_W(value, increment) => format!("iinc_w"),
[INFO] [stderr]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `increment`
[INFO] [stderr]    --> src/bytecode/printer.rs:343:49
[INFO] [stderr]     |
[INFO] [stderr] 343 |                     &Instruction::IINC_W(value, increment) => format!("iinc_w"),
[INFO] [stderr]     |                                                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_increment`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tag`
[INFO] [stderr]    --> src/bytecode/printer.rs:405:46
[INFO] [stderr]     |
[INFO] [stderr] 405 |             &StackMapFrame::FutureUse { tag: tag } => format!("FutureUse")
[INFO] [stderr]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_tag`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `Java1_5`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             Java1_5 => 49,
[INFO] [stderr]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_5`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `Java1_6`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 |             Java1_6 => 50,
[INFO] [stderr]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_6`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `Java1_7`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stderr]    |
[INFO] [stderr] 38 |             Java1_7 => 51,
[INFO] [stderr]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_7`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `Java1_8`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stderr]    |
[INFO] [stderr] 39 |             Java1_8 => 52,
[INFO] [stderr]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_8`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `Java1_9`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stderr]    |
[INFO] [stderr] 40 |             Java1_9 => 53
[INFO] [stderr]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Java1_9`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `content`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:62:41
[INFO] [stderr]    |
[INFO] [stderr] 62 |     pub fn add_utf8_constant(&mut self, content: String) {
[INFO] [stderr]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `content`
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:66:43
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub fn add_string_constant(&mut self, content: String) {
[INFO] [stderr]    |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `classfile`
[INFO] [stderr]   --> src/instrumentation/mod.rs:37:27
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub fn from_classfile(classfile: &Classfile) -> Option<JavaClass> {
[INFO] [stderr]    |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_classfile`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `method`
[INFO] [stderr]   --> src/instrumentation/mod.rs:41:23
[INFO] [stderr]    |
[INFO] [stderr] 41 |     pub fn add_method(method: Method) {
[INFO] [stderr]    |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_method`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/environment/jvmti.rs:134:13
[INFO] [stderr]     |
[INFO] [stderr] 134 |         let mut info_ptr = &mut info;
[INFO] [stderr]     |             ----^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/environment/jvmti.rs:169:13
[INFO] [stderr]     |
[INFO] [stderr] 169 |         let mut method_ptr = &mut method_name;
[INFO] [stderr]     |             ----^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/environment/jvmti.rs:172:13
[INFO] [stderr]     |
[INFO] [stderr] 172 |         let mut signature_ptr = &mut signature;
[INFO] [stderr]     |             ----^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/environment/jvmti.rs:175:13
[INFO] [stderr]     |
[INFO] [stderr] 175 |         let mut generic_sig_ptr = &mut generic_sig;
[INFO] [stderr]     |             ----^^^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: the `attributes:` in this pattern is redundant
[INFO] [stderr]    --> src/bytecode/printer.rs:143:109
[INFO] [stderr]     |
[INFO] [stderr] 143 | ...c, exception_table: ref et, attributes: ref attributes } => {
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use shorthand field pattern: `ref attributes`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_shorthand_field_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: the `tag:` in this pattern is redundant
[INFO] [stderr]    --> src/bytecode/printer.rs:398:41
[INFO] [stderr]     |
[INFO] [stderr] 398 |             &StackMapFrame::SameFrame { tag: tag } => format!("SameFrame {}", tag),
[INFO] [stderr]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stderr] 
[INFO] [stderr] warning: the `tag:` in this pattern is redundant
[INFO] [stderr]    --> src/bytecode/printer.rs:399:57
[INFO] [stderr]     |
[INFO] [stderr] 399 | ...   &StackMapFrame::SameLocals1StackItemFrame { tag: tag, stack: _ /*VerificationType*/ } => format!("SameLocals1StackItemFrame {}", tag),
[INFO] [stderr]     |                                                   ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stderr] 
[INFO] [stderr] warning: the `tag:` in this pattern is redundant
[INFO] [stderr]    --> src/bytecode/printer.rs:401:41
[INFO] [stderr]     |
[INFO] [stderr] 401 |             &StackMapFrame::ChopFrame { tag: tag, offset_delta: offset } => format!("ChopFrame {} {}", tag, offset),
[INFO] [stderr]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stderr] 
[INFO] [stderr] warning: the `tag:` in this pattern is redundant
[INFO] [stderr]    --> src/bytecode/printer.rs:403:43
[INFO] [stderr]     |
[INFO] [stderr] 403 | ...   &StackMapFrame::AppendFrame { tag: tag, offset_delta: offset, locals: _ /*Vec<VerificationType>*/ } => format!("AppendFrame {} {}",...
[INFO] [stderr]     |                                     ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stderr] 
[INFO] [stderr] warning: the `tag:` in this pattern is redundant
[INFO] [stderr]    --> src/bytecode/printer.rs:405:41
[INFO] [stderr]     |
[INFO] [stderr] 405 |             &StackMapFrame::FutureUse { tag: tag } => format!("FutureUse")
[INFO] [stderr]     |                                         ^^^^^^^^ help: use shorthand field pattern: `tag`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Java1_5` should have a snake case name
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             Java1_5 => 49,
[INFO] [stderr]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_5`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Java1_6` should have a snake case name
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 |             Java1_6 => 50,
[INFO] [stderr]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_6`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Java1_7` should have a snake case name
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:38:13
[INFO] [stderr]    |
[INFO] [stderr] 38 |             Java1_7 => 51,
[INFO] [stderr]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_7`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Java1_8` should have a snake case name
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:39:13
[INFO] [stderr]    |
[INFO] [stderr] 39 |             Java1_8 => 52,
[INFO] [stderr]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_8`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Java1_9` should have a snake case name
[INFO] [stderr]   --> src/instrumentation/asm/mod.rs:40:13
[INFO] [stderr]    |
[INFO] [stderr] 40 |             Java1_9 => 53
[INFO] [stderr]    |             ^^^^^^^ help: convert the identifier to snake case: `java1_9`
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0170`.
[INFO] [stderr] warning: `jvmti` (lib) generated 112 warnings (run `cargo fix --lib -p jvmti` to apply 101 suggestions)
[INFO] [stderr] warning: `jvmti` (lib test) generated 112 warnings (112 duplicates)
[INFO] [stderr] warning: getting the inner pointer of a temporary `CString`
[INFO] [stderr]   --> tests/util.rs:21:60
[INFO] [stderr]    |
[INFO] [stderr] 21 |         let s: MutString = CString::new(expected).unwrap().as_ptr() as *mut i8;
[INFO] [stderr]    |                            ------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stderr]    |                            |
[INFO] [stderr]    |                            this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stderr]    |
[INFO] [stderr]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stderr]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stderr]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: getting the inner pointer of a temporary `CString`
[INFO] [stderr]   --> tests/util.rs:28:60
[INFO] [stderr]    |
[INFO] [stderr] 28 |         let s: MutString = CString::new(expected).unwrap().as_ptr() as *mut i8;
[INFO] [stderr]    |                            ------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stderr]    |                            |
[INFO] [stderr]    |                            this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stderr]    |
[INFO] [stderr]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stderr]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stderr] 
[INFO] [stderr] warning: function `main2` is never used
[INFO] [stderr]   --> src/main.rs:10:4
[INFO] [stderr]    |
[INFO] [stderr] 10 | fn main2() {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `jvmti` (test "util") generated 2 warnings
[INFO] [stderr] warning: `jvmti` (bin "jvmti" test) generated 1 warning
[INFO] [stderr] warning: `jvmti` (bin "jvmti") generated 1 warning (1 duplicate)
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/bytecode/mod.rs:16:43
[INFO] [stderr]    |
[INFO] [stderr] 16 | ...                   assert!(true, format!("{:?}", class));
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 16 -                             assert!(true, format!("{:?}", class));
[INFO] [stderr] 16 +                             assert!(true, "{:?}", class);
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/bytecode/mod.rs:18:48
[INFO] [stderr]    |
[INFO] [stderr] 18 |                     Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 18 -                     Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr] 18 +                     Err(err) => assert!(false, "{:?}", err)
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/bytecode/mod.rs:22:40
[INFO] [stderr]    |
[INFO] [stderr] 22 |             Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr]    |                                        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 22 -             Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr] 22 +             Err(err) => assert!(false, "{:?}", err)
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/bytecode/mod.rs:32:39
[INFO] [stderr]    |
[INFO] [stderr] 32 |                         assert!(true, format!("{:#?}", class.methods));
[INFO] [stderr]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 32 -                         assert!(true, format!("{:#?}", class.methods));
[INFO] [stderr] 32 +                         assert!(true, "{:#?}", class.methods);
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/bytecode/mod.rs:34:48
[INFO] [stderr]    |
[INFO] [stderr] 34 |                     Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 34 -                     Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr] 34 +                     Err(err) => assert!(false, "{:?}", err)
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/bytecode/mod.rs:38:40
[INFO] [stderr]    |
[INFO] [stderr] 38 |             Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr]    |                                        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 38 -             Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr] 38 +             Err(err) => assert!(false, "{:?}", err)
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> tests/bytecode/mod.rs:105:44
[INFO] [stderr]     |
[INFO] [stderr] 105 |                 Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr]     |                                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 105 -                 Err(err) => assert!(false, format!("{:?}", err))
[INFO] [stderr] 105 +                 Err(err) => assert!(false, "{:?}", err)
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> tests/bytecode/mod.rs:112:42
[INFO] [stderr]     |
[INFO] [stderr] 112 |             assert!(read_result.is_ok(), format!("{:?}", read_result.err()));
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 112 -             assert!(read_result.is_ok(), format!("{:?}", read_result.err()));
[INFO] [stderr] 112 +             assert!(read_result.is_ok(), "{:?}", read_result.err());
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> tests/bytecode/mod.rs:129:23
[INFO] [stderr]     |
[INFO] [stderr] 129 |         assert!(true, format!("{:?}", target));
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 129 -         assert!(true, format!("{:?}", target));
[INFO] [stderr] 129 +         assert!(true, "{:?}", target);
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `jvmti` (test "lib") generated 9 warnings (run `cargo fix --test "lib"` to apply 9 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/jvmti-ba4dc91219fb2a04)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/jvmti-0e590d02b4369114)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/agent.rs (/opt/rustwide/target/debug/deps/agent-25331699f5676917)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test tests::agents_are_fucking_even_working ... ok
[INFO] [stdout] test tests::agents_are_initialized_with_empty_capabilities ... ok
[INFO] [stdout] test tests::agents_provide_with_version_numbers ... ok
[INFO] [stdout] test tests::agents_respond_to_shutdown ... ok
[INFO] [stdout] test tests::callbacks_trigger_capabilities ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/capabilities.rs (/opt/rustwide/target/debug/deps/capabilities-3d135ac953636d64)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test tests::agent_capabilities_are_generated_with_capabilities_off ... ok
[INFO] [stdout] test tests::agent_capabilities_are_reflected_in_native_capabilities ... ok
[INFO] [stdout] test tests::merge_combines_enabled_flags_from_both_capabilities ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/class.rs (/opt/rustwide/target/debug/deps/class-fea85b9a62fc45cc)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test tests::arrays_are_parsed_correctly ... ok
[INFO] [stdout] test tests::arrays_of_classes_are_parsed ... ok
[INFO] [stdout] test tests::class_to_string_returns_the_fully_qualified_class_name ... ok
[INFO] [stdout] test tests::classes_are_parsed_correctly ... ok
[INFO] [stdout] test tests::java_types_are_stringified ... ok
[INFO] [stdout] test tests::primitive_types_are_parsed_correctly ... 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 tests/context.rs (/opt/rustwide/target/debug/deps/context-7011ec59885c4e3c)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/emulator.rs (/opt/rustwide/target/debug/deps/emulator-f05a60910f7dbbdd)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test tests::get_version_number_returns_unknown_version ... ok
[INFO] [stdout] test tests::get_environment_returns_a_valid_environment ... ok
[INFO] [stdout] test tests::add_capabilities_retains_the_previously_added_capabilities ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/event.rs (/opt/rustwide/target/debug/deps/event-8ea28911128b2ceb)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::empty_event_callbacks_are_instantiatable_using_new ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/lib.rs (/opt/rustwide/target/debug/deps/lib-e2b732447db67e3a)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test bytecode::tests::test_cursor_read_usage ... ok
[INFO] [stdout] test bytecode::tests::test_cursor_write_usage ... ok
[INFO] [stdout] test bytecode::tests::test_read_n ... ok
[INFO] [stdout] test bytecode::tests::test_read_write_roundtrip ... ok
[INFO] [stdout] test instrumentation::tests::can_create_empty_class ... ok
[INFO] [stdout] test bytecode::tests::test_read_test ... FAILED
[INFO] [stdout] test bytecode::tests::test_read_simple ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- bytecode::tests::test_read_test stdout ----
[INFO] [stdout] thread 'bytecode::tests::test_read_test' panicked at 'Os { code: 2, kind: NotFound, message: "No such file or directory" }', tests/bytecode/mod.rs:38:25
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5597cbf7315a - std::backtrace_rs::backtrace::libunwind::trace::h2f05d0192276a8f6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
[INFO] [stdout]    1:     0x5597cbf7315a - std::backtrace_rs::backtrace::trace_unsynchronized::hedc23dff7a1af150
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5597cbf7315a - std::sys_common::backtrace::_print_fmt::h17541ef7592f3ce2
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:65:5
[INFO] [stdout]    3:     0x5597cbf7315a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h20f75df5ab0c0792
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x5597cbf96daf - core::fmt::write::h78109e6f466b3af6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/fmt/mod.rs:1254:17
[INFO] [stdout]    5:     0x5597cbf704a5 - std::io::Write::write_fmt::hd24bfb68a1b35a25
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/io/mod.rs:1698:15
[INFO] [stdout]    6:     0x5597cbf72f25 - std::sys_common::backtrace::_print::h8dac57a9f8fbf9a5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    7:     0x5597cbf72f25 - std::sys_common::backtrace::print::hf9ecbf41d1aa712f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    8:     0x5597cbf74bde - std::panicking::default_hook::{{closure}}::h04c07acfc84ca028
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:269:22
[INFO] [stdout]    9:     0x5597cbf74911 - std::panicking::default_hook::h01f6bb23e1eceb2c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:285:9
[INFO] [stdout]   10:     0x5597cbee977b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h87fe9f7b2fd49e4c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   11:     0x5597cbee977b - test::test_main::{{closure}}::he94d679243a7531b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x5597cbf752c4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f2d6d8b14c4769f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   13:     0x5597cbf752c4 - std::panicking::rust_panic_with_hook::h2bb3722bbaf2f6df
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:695:13
[INFO] [stdout]   14:     0x5597cbea94e4 - std::panicking::begin_panic::{{closure}}::hf4256d11009d596b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:611:9
[INFO] [stdout]   15:     0x5597cbeb4be9 - std::sys_common::backtrace::__rust_end_short_backtrace::h8a35d09ac5b08c3c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:150:18
[INFO] [stdout]   16:     0x5597cbea9408 - std::panicking::begin_panic::hddf56707a76a599a
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:610:12
[INFO] [stdout]   17:     0x5597cbeb178a - lib::bytecode::tests::test_read_test::hc1067c2ccc2a5a17
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/bytecode/mod.rs:38:25
[INFO] [stdout]   18:     0x5597cbeb1637 - lib::bytecode::tests::test_read_test::{{closure}}::h73887381d72b037f
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/bytecode/mod.rs:27:25
[INFO] [stdout]   19:     0x5597cbea89c5 - core::ops::function::FnOnce::call_once::h2f90b2bde61da253
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   20:     0x5597cbeee64f - core::ops::function::FnOnce::call_once::ha6a70e79f7481a7e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x5597cbeee64f - test::__rust_begin_short_backtrace::hce33033019b61e69
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:655:18
[INFO] [stdout]   22:     0x5597cbebbe3c - test::run_test::{{closure}}::h858d3528838ae3e5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:646:30
[INFO] [stdout]   23:     0x5597cbebbe3c - core::ops::function::FnOnce::call_once{{vtable.shim}}::he8ac2b00f01ae79e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5597cbeed726 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h8093d25b522725ef
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   25:     0x5597cbeed726 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h5c334c204e4a3913
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   26:     0x5597cbeed726 - std::panicking::try::do_call::ha8b740c7b9478074
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   27:     0x5597cbeed726 - std::panicking::try::h5d34f63d0e41b64e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   28:     0x5597cbeed726 - std::panic::catch_unwind::hcfbb511e1aa7fc67
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   29:     0x5597cbeed726 - test::run_test_in_process::h9abda90f802eaf21
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:678:27
[INFO] [stdout]   30:     0x5597cbeed726 - test::run_test::run_test_inner::{{closure}}::h0f058de91f6c6edf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:572:39
[INFO] [stdout]   31:     0x5597cbeb6645 - test::run_test::run_test_inner::{{closure}}::h5ca48a4c59c6c1fb
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:599:37
[INFO] [stdout]   32:     0x5597cbeb6645 - std::sys_common::backtrace::__rust_begin_short_backtrace::h32bd51e1495d4a33
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:134:18
[INFO] [stdout]   33:     0x5597cbebbb81 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc086fae9b128b2db
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:526:17
[INFO] [stdout]   34:     0x5597cbebbb81 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb66571888d270d43
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   35:     0x5597cbebbb81 - std::panicking::try::do_call::h4fa2ef4f6e51fecf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   36:     0x5597cbebbb81 - std::panicking::try::h1e9e22b8584489b5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   37:     0x5597cbebbb81 - std::panic::catch_unwind::h44698a3de0e0769e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   38:     0x5597cbebbb81 - std::thread::Builder::spawn_unchecked_::{{closure}}::h50153abde3fe239e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:525:30
[INFO] [stdout]   39:     0x5597cbebbb81 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hbe5bbf6f38394364
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5597cbf79795 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0d83cb2920a49046
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   41:     0x5597cbf79795 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hbe0a008aa7d9ef59
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   42:     0x5597cbf79795 - std::sys::unix::thread::Thread::new::thread_start::h3a466996bdf6b1f9
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   43:     0x7fca3aafeb43 - <unknown>
[INFO] [stdout]   44:     0x7fca3ab8fbb4 - __clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bytecode::tests::test_read_simple stdout ----
[INFO] [stdout] thread 'bytecode::tests::test_read_simple' panicked at 'Os { code: 2, kind: NotFound, message: "No such file or directory" }', tests/bytecode/mod.rs:22:25
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5597cbf7315a - std::backtrace_rs::backtrace::libunwind::trace::h2f05d0192276a8f6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
[INFO] [stdout]    1:     0x5597cbf7315a - std::backtrace_rs::backtrace::trace_unsynchronized::hedc23dff7a1af150
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5597cbf7315a - std::sys_common::backtrace::_print_fmt::h17541ef7592f3ce2
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:65:5
[INFO] [stdout]    3:     0x5597cbf7315a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h20f75df5ab0c0792
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x5597cbf96daf - core::fmt::write::h78109e6f466b3af6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/fmt/mod.rs:1254:17
[INFO] [stdout]    5:     0x5597cbf704a5 - std::io::Write::write_fmt::hd24bfb68a1b35a25
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/io/mod.rs:1698:15
[INFO] [stdout]    6:     0x5597cbf72f25 - std::sys_common::backtrace::_print::h8dac57a9f8fbf9a5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    7:     0x5597cbf72f25 - std::sys_common::backtrace::print::hf9ecbf41d1aa712f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    8:     0x5597cbf74bde - std::panicking::default_hook::{{closure}}::h04c07acfc84ca028
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:269:22
[INFO] [stdout]    9:     0x5597cbf74911 - std::panicking::default_hook::h01f6bb23e1eceb2c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:285:9
[INFO] [stdout]   10:     0x5597cbee977b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h87fe9f7b2fd49e4c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   11:     0x5597cbee977b - test::test_main::{{closure}}::he94d679243a7531b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x5597cbf752c4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f2d6d8b14c4769f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   13:     0x5597cbf752c4 - std::panicking::rust_panic_with_hook::h2bb3722bbaf2f6df
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:695:13
[INFO] [stdout]   14:     0x5597cbea94e4 - std::panicking::begin_panic::{{closure}}::hf4256d11009d596b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:611:9
[INFO] [stdout]   15:     0x5597cbeb4be9 - std::sys_common::backtrace::__rust_end_short_backtrace::h8a35d09ac5b08c3c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:150:18
[INFO] [stdout]   16:     0x5597cbea9408 - std::panicking::begin_panic::hddf56707a76a599a
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:610:12
[INFO] [stdout]   17:     0x5597cbeb139a - lib::bytecode::tests::test_read_simple::hce2f98a8f9363038
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/bytecode/mod.rs:22:25
[INFO] [stdout]   18:     0x5597cbeb1247 - lib::bytecode::tests::test_read_simple::{{closure}}::h3d0fae3d789f4a9c
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/bytecode/mod.rs:11:27
[INFO] [stdout]   19:     0x5597cbea8985 - core::ops::function::FnOnce::call_once::h16bda163680edfa0
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   20:     0x5597cbeee64f - core::ops::function::FnOnce::call_once::ha6a70e79f7481a7e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x5597cbeee64f - test::__rust_begin_short_backtrace::hce33033019b61e69
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:655:18
[INFO] [stdout]   22:     0x5597cbebbe3c - test::run_test::{{closure}}::h858d3528838ae3e5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:646:30
[INFO] [stdout]   23:     0x5597cbebbe3c - core::ops::function::FnOnce::call_once{{vtable.shim}}::he8ac2b00f01ae79e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5597cbeed726 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h8093d25b522725ef
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   25:     0x5597cbeed726 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h5c334c204e4a3913
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   26:     0x5597cbeed726 - std::panicking::try::do_call::ha8b740c7b9478074
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   27:     0x5597cbeed726 - std::panicking::try::h5d34f63d0e41b64e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   28:     0x5597cbeed726 - std::panic::catch_unwind::hcfbb511e1aa7fc67
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   29:     0x5597cbeed726 - test::run_test_in_process::h9abda90f802eaf21
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:678:27
[INFO] [stdout]   30:     0x5597cbeed726 - test::run_test::run_test_inner::{{closure}}::h0f058de91f6c6edf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:572:39
[INFO] [stdout]   31:     0x5597cbeb6645 - test::run_test::run_test_inner::{{closure}}::h5ca48a4c59c6c1fb
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:599:37
[INFO] [stdout]   32:     0x5597cbeb6645 - std::sys_common::backtrace::__rust_begin_short_backtrace::h32bd51e1495d4a33
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:134:18
[INFO] [stdout]   33:     0x5597cbebbb81 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc086fae9b128b2db
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:526:17
[INFO] [stdout]   34:     0x5597cbebbb81 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb66571888d270d43
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   35:     0x5597cbebbb81 - std::panicking::try::do_call::h4fa2ef4f6e51fecf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   36:     0x5597cbebbb81 - std::panicking::try::h1e9e22b8584489b5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   37:     0x5597cbebbb81 - std::panic::catch_unwind::h44698a3de0e0769e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   38:     0x5597cbebbb81 - std::thread::Builder::spawn_unchecked_::{{closure}}::h50153abde3fe239e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:525:30
[INFO] [stdout]   39:     0x5597cbebbb81 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hbe5bbf6f38394364
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5597cbf79795 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0d83cb2920a49046
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   41:     0x5597cbf79795 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hbe0a008aa7d9ef59
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   42:     0x5597cbf79795 - std::sys::unix::thread::Thread::new::thread_start::h3a466996bdf6b1f9
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   43:     0x7fca3aafeb43 - <unknown>
[INFO] [stdout]   44:     0x7fca3ab8fbb4 - __clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     bytecode::tests::test_read_simple
[INFO] [stdout]     bytecode::tests::test_read_test
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 5 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test lib`
[INFO] running `Command { std: "docker" "inspect" "2734f4a3e1901b3f3fe919e2695d119458701c6e1da8b4d3f73fda17b7c09e53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2734f4a3e1901b3f3fe919e2695d119458701c6e1da8b4d3f73fda17b7c09e53", kill_on_drop: false }`
[INFO] [stdout] 2734f4a3e1901b3f3fe919e2695d119458701c6e1da8b4d3f73fda17b7c09e53
