[INFO] cloning repository https://github.com/it-2001/rusty_danda
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/it-2001/rusty_danda" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fit-2001%2Frusty_danda", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fit-2001%2Frusty_danda'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 904556b4e41d50060ed8c5df693462abd9f996f4
[INFO] checking it-2001/rusty_danda against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fit-2001%2Frusty_danda" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/it-2001/rusty_danda
[INFO] finished tweaking git repo https://github.com/it-2001/rusty_danda
[INFO] tweaked toml for git repo https://github.com/it-2001/rusty_danda written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/it-2001/rusty_danda on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/it-2001/rusty_danda 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" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e4e9e588f33d65e15caf410616cf6f8a3a6f532017070e8e2415007e8e620ced
[INFO] running `Command { std: "docker" "start" "-a" "e4e9e588f33d65e15caf410616cf6f8a3a6f532017070e8e2415007e8e620ced", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e4e9e588f33d65e15caf410616cf6f8a3a6f532017070e8e2415007e8e620ced", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e4e9e588f33d65e15caf410616cf6f8a3a6f532017070e8e2415007e8e620ced", kill_on_drop: false }`
[INFO] [stdout] e4e9e588f33d65e15caf410616cf6f8a3a6f532017070e8e2415007e8e620ced
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0e0e589b6f38f8b027c1a567abad57e4d88e1cd37d0fde33d0973912285e9ead
[INFO] running `Command { std: "docker" "start" "-a" "0e0e589b6f38f8b027c1a567abad57e4d88e1cd37d0fde33d0973912285e9ead", kill_on_drop: false }`
[INFO] [stderr]     Checking rusty_danda v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::time::SystemTime`
[INFO] [stdout]  --> src/lexing_preprocessor.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     use std::time::SystemTime;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::SystemTime`
[INFO] [stdout]  --> src/lexing_preprocessor.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     use std::time::SystemTime;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/ast_parser.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 |         if let Ok(mut refactored) = refactor(tokens, &mut lines, &mut errors) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout]    = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/lexer.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 |         if let Ok(refactored) = refactor(tokens, text_pos, &mut errors) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_tok` is never read
[INFO] [stdout]    --> src/tree_walker.rs:209:33
[INFO] [stdout]     |
[INFO] [stdout] 209 |                                 advance_tok = false;
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |                         ScopeEnter!(args_con, true);
[INFO] [stdout]     |                         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_node` is never read
[INFO] [stdout]    --> src/tree_walker.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |                         advance_node = false;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |                             ScopeEnter!(node, false);
[INFO] [stdout]     |                             ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: this warning originates in the macro `Back` which comes from the expansion of the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_node` is never read
[INFO] [stdout]    --> src/tree_walker.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |                         advance_node = false;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |                             ScopeEnter!(node, false);
[INFO] [stdout]     |                             ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: this warning originates in the macro `Back` which comes from the expansion of the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_node` is never read
[INFO] [stdout]    --> src/tree_walker.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |                         advance_node = false;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |                         ScopeEnter!(args_con, true);
[INFO] [stdout]     |                         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: this warning originates in the macro `Back` which comes from the expansion of the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_node` is never read
[INFO] [stdout]    --> src/tree_walker.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |                         advance_node = false;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |                         ScopeEnter!(args_con, true);
[INFO] [stdout]     |                         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: this warning originates in the macro `Back` which comes from the expansion of the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/ast_parser.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 |         if let Ok(mut refactored) = refactor(tokens, &mut lines, &mut errors) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout]    = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/main.rs:47:27
[INFO] [stdout]    |
[INFO] [stdout] 47 |               tokens.0 = if let Ok(toks) =
[INFO] [stdout]    |  ___________________________^
[INFO] [stdout] 48 | |                 lexing_preprocessor::lexing_preprocessor::refactor(tokens.0, tokens.1, &mut tokens.2)
[INFO] [stdout]    | |_____________________________________________________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/lexer.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 |         if let Ok(refactored) = refactor(tokens, text_pos, &mut errors) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reader` is never constructed
[INFO] [stdout]  --> src/reader.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     struct Reader {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_file` is never used
[INFO] [stdout]   --> src/reader.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn read_file(path: String, context: Context) -> Context {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push_consts`, `push_instruction`, `read_str_range`, `read_bytes`, and `read_unumber` are never used
[INFO] [stdout]    --> src/reader.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  26 |     impl Reader {
[INFO] [stdout]     |     ----------- associated items in this implementation
[INFO] [stdout]  27 |         fn new(ctx: Context) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  34 |         fn push_consts(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |         fn push_instruction(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |         fn read_str_range(&mut self) -> std::ops::Range<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |         fn read_bytes(&mut self, size: usize) -> u128 {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |         fn read_unumber(&mut self, size: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Context` is never constructed
[INFO] [stdout]  --> src/runtime.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 |     pub struct Context {
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HeapRegistry` is never constructed
[INFO] [stdout]   --> src/runtime.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub struct HeapRegistry {
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Stack`, `HeapReg`, and `Heap` are never constructed
[INFO] [stdout]   --> src/runtime.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub enum PointerTypes {
[INFO] [stdout]    |              ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 86 |         Stack,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |         HeapReg,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |         Heap,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PointerTypes` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallStack` is never constructed
[INFO] [stdout]    --> src/runtime.rs:226:16
[INFO] [stdout]     |
[INFO] [stdout] 226 |     pub struct CallStack {
[INFO] [stdout]     |                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ID` is never used
[INFO] [stdout]  --> src/test.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 |     const ID: usize = 5;
[INFO] [stdout]   |           ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_init` is never used
[INFO] [stdout]  --> src/test.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub fn test_init(id: Option<usize>, context: &mut Context) {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/lexing_preprocessor.rs:261:23
[INFO] [stdout]     |
[INFO] [stdout] 261 |         InvalidNumber((usize, usize), String),
[INFO] [stdout]     |         ------------- ^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Errors` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 261 -         InvalidNumber((usize, usize), String),
[INFO] [stdout] 261 +         InvalidNumber((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Nothing` is never constructed
[INFO] [stdout]    --> src/tree_walker.rs:599:9
[INFO] [stdout]     |
[INFO] [stdout] 597 |     enum ReturnActions {
[INFO] [stdout]     |          ------------- variant in this enum
[INFO] [stdout] 598 |         Freeze,
[INFO] [stdout] 599 |         Nothing,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/tree_walker.rs:611:18
[INFO] [stdout]     |
[INFO] [stdout] 611 |         Expected(Tokens, Tokens),
[INFO] [stdout]     |         -------- ^^^^^^  ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 611 -         Expected(Tokens, Tokens),
[INFO] [stdout] 611 +         Expected((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/tree_walker.rs:612:23
[INFO] [stdout]     |
[INFO] [stdout] 612 |         ExpectedOneOf(Vec<Tokens>, Tokens),
[INFO] [stdout]     |         ------------- ^^^^^^^^^^^  ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 612 -         ExpectedOneOf(Vec<Tokens>, Tokens),
[INFO] [stdout] 612 +         ExpectedOneOf((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tree_walker.rs:613:13
[INFO] [stdout]     |
[INFO] [stdout] 613 |         Msg(String),
[INFO] [stdout]     |         --- ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 613 -         Msg(String),
[INFO] [stdout] 613 +         Msg(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tree_walker.rs:616:14
[INFO] [stdout]     |
[INFO] [stdout] 616 |         Pass(String),
[INFO] [stdout]     |         ---- ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 616 -         Pass(String),
[INFO] [stdout] 616 +         Pass(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/tree_walker.rs:618:26
[INFO] [stdout]     |
[INFO] [stdout] 618 |         WrongEndingToken(Tokens, Tokens),
[INFO] [stdout]     |         ---------------- ^^^^^^  ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 618 -         WrongEndingToken(Tokens, Tokens),
[INFO] [stdout] 618 +         WrongEndingToken((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `EmptyNodeParameter` is never constructed
[INFO] [stdout]    --> src/tree_walker.rs:619:9
[INFO] [stdout]     |
[INFO] [stdout] 610 |     pub enum Err {
[INFO] [stdout]     |              --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 619 |         EmptyNodeParameter(String),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `data` are never read
[INFO] [stdout]    --> src/tree_walker.rs:624:13
[INFO] [stdout]     |
[INFO] [stdout] 623 |     pub struct Node {
[INFO] [stdout]     |                ---- fields in this struct
[INFO] [stdout] 624 |         pub name: Tokens,
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 625 |         pub data: Option<Tokens>,
[INFO] [stdout]     |             ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write` is never used
[INFO] [stdout]  --> src/writer.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub fn write(code: &Vec<Instructions>, consts: &Vec<Types>, file_name: &str) {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_string` is never used
[INFO] [stdout]   --> src/writer.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn to_string(code: &Vec<Instructions>, consts: &Vec<Types>) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_str` is never used
[INFO] [stdout]   --> src/writer.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn get_str(mut index: usize, consts: &Vec<Types>) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `val_to_string` is never used
[INFO] [stdout]   --> src/writer.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn val_to_string(val: Types) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `instr_to_str` is never used
[INFO] [stdout]   --> src/writer.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn instr_to_str(instr: Instructions) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_to_hbytes` is never used
[INFO] [stdout]    --> src/writer.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn num_to_hbytes(num: usize, bytes: u8) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/reader.rs:39:40
[INFO] [stdout]    |
[INFO] [stdout] 39 |                     let int = unsafe { std::mem::transmute::<u32, i32>(bytes) };
[INFO] [stdout]    |                                        -------------------------------^^^^^^^
[INFO] [stdout]    |                                        |
[INFO] [stdout]    |                                        help: replace this with: `u32::cast_signed`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/reader.rs:44:42
[INFO] [stdout]    |
[INFO] [stdout] 44 |                     let float = unsafe { std::mem::transmute::<u64, f64>(bytes) };
[INFO] [stdout]    |                                          -------------------------------^^^^^^^
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          help: replace this with: `f64::from_bits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/writer.rs:55:38
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let bytes = unsafe { std::mem::transmute::<i32, u32>(int) };
[INFO] [stdout]    |                                      -------------------------------^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      help: replace this with: `i32::cast_unsigned`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/writer.rs:59:38
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 let bytes = unsafe { std::mem::transmute::<f64, u64>(float) };
[INFO] [stdout]    |                                      -------------------------------^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      help: replace this with: `f64::to_bits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_tok` is never read
[INFO] [stdout]    --> src/tree_walker.rs:209:33
[INFO] [stdout]     |
[INFO] [stdout] 209 |                                 advance_tok = false;
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |                         ScopeEnter!(args_con, true);
[INFO] [stdout]     |                         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_node` is never read
[INFO] [stdout]    --> src/tree_walker.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |                         advance_node = false;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |                             ScopeEnter!(node, false);
[INFO] [stdout]     |                             ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: this warning originates in the macro `Back` which comes from the expansion of the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_node` is never read
[INFO] [stdout]    --> src/tree_walker.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |                         advance_node = false;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |                             ScopeEnter!(node, false);
[INFO] [stdout]     |                             ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: this warning originates in the macro `Back` which comes from the expansion of the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_node` is never read
[INFO] [stdout]    --> src/tree_walker.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |                         advance_node = false;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |                         ScopeEnter!(args_con, true);
[INFO] [stdout]     |                         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: this warning originates in the macro `Back` which comes from the expansion of the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `advance_node` is never read
[INFO] [stdout]    --> src/tree_walker.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |                         advance_node = false;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |                         ScopeEnter!(args_con, true);
[INFO] [stdout]     |                         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: this warning originates in the macro `Back` which comes from the expansion of the macro `ScopeEnter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/main.rs:47:27
[INFO] [stdout]    |
[INFO] [stdout] 47 |               tokens.0 = if let Ok(toks) =
[INFO] [stdout]    |  ___________________________^
[INFO] [stdout] 48 | |                 lexing_preprocessor::lexing_preprocessor::refactor(tokens.0, tokens.1, &mut tokens.2)
[INFO] [stdout]    | |_____________________________________________________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reader` is never constructed
[INFO] [stdout]  --> src/reader.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     struct Reader {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_file` is never used
[INFO] [stdout]   --> src/reader.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn read_file(path: String, context: Context) -> Context {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push_consts`, `push_instruction`, `read_str_range`, `read_bytes`, and `read_unumber` are never used
[INFO] [stdout]    --> src/reader.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  26 |     impl Reader {
[INFO] [stdout]     |     ----------- associated items in this implementation
[INFO] [stdout]  27 |         fn new(ctx: Context) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  34 |         fn push_consts(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |         fn push_instruction(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |         fn read_str_range(&mut self) -> std::ops::Range<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |         fn read_bytes(&mut self, size: usize) -> u128 {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |         fn read_unumber(&mut self, size: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Context` is never constructed
[INFO] [stdout]  --> src/runtime.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 |     pub struct Context {
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HeapRegistry` is never constructed
[INFO] [stdout]   --> src/runtime.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub struct HeapRegistry {
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Stack`, `HeapReg`, and `Heap` are never constructed
[INFO] [stdout]   --> src/runtime.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub enum PointerTypes {
[INFO] [stdout]    |              ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 86 |         Stack,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |         HeapReg,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |         Heap,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PointerTypes` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallStack` is never constructed
[INFO] [stdout]    --> src/runtime.rs:226:16
[INFO] [stdout]     |
[INFO] [stdout] 226 |     pub struct CallStack {
[INFO] [stdout]     |                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ID` is never used
[INFO] [stdout]  --> src/test.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 |     const ID: usize = 5;
[INFO] [stdout]   |           ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_init` is never used
[INFO] [stdout]  --> src/test.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub fn test_init(id: Option<usize>, context: &mut Context) {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/lexing_preprocessor.rs:261:23
[INFO] [stdout]     |
[INFO] [stdout] 261 |         InvalidNumber((usize, usize), String),
[INFO] [stdout]     |         ------------- ^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Errors` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 261 -         InvalidNumber((usize, usize), String),
[INFO] [stdout] 261 +         InvalidNumber((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Nothing` is never constructed
[INFO] [stdout]    --> src/tree_walker.rs:599:9
[INFO] [stdout]     |
[INFO] [stdout] 597 |     enum ReturnActions {
[INFO] [stdout]     |          ------------- variant in this enum
[INFO] [stdout] 598 |         Freeze,
[INFO] [stdout] 599 |         Nothing,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/tree_walker.rs:611:18
[INFO] [stdout]     |
[INFO] [stdout] 611 |         Expected(Tokens, Tokens),
[INFO] [stdout]     |         -------- ^^^^^^  ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 611 -         Expected(Tokens, Tokens),
[INFO] [stdout] 611 +         Expected((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/tree_walker.rs:612:23
[INFO] [stdout]     |
[INFO] [stdout] 612 |         ExpectedOneOf(Vec<Tokens>, Tokens),
[INFO] [stdout]     |         ------------- ^^^^^^^^^^^  ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 612 -         ExpectedOneOf(Vec<Tokens>, Tokens),
[INFO] [stdout] 612 +         ExpectedOneOf((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tree_walker.rs:613:13
[INFO] [stdout]     |
[INFO] [stdout] 613 |         Msg(String),
[INFO] [stdout]     |         --- ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 613 -         Msg(String),
[INFO] [stdout] 613 +         Msg(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tree_walker.rs:616:14
[INFO] [stdout]     |
[INFO] [stdout] 616 |         Pass(String),
[INFO] [stdout]     |         ---- ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 616 -         Pass(String),
[INFO] [stdout] 616 +         Pass(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/tree_walker.rs:618:26
[INFO] [stdout]     |
[INFO] [stdout] 618 |         WrongEndingToken(Tokens, Tokens),
[INFO] [stdout]     |         ---------------- ^^^^^^  ^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 618 -         WrongEndingToken(Tokens, Tokens),
[INFO] [stdout] 618 +         WrongEndingToken((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `EmptyNodeParameter` is never constructed
[INFO] [stdout]    --> src/tree_walker.rs:619:9
[INFO] [stdout]     |
[INFO] [stdout] 610 |     pub enum Err {
[INFO] [stdout]     |              --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 619 |         EmptyNodeParameter(String),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Err` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `data` are never read
[INFO] [stdout]    --> src/tree_walker.rs:624:13
[INFO] [stdout]     |
[INFO] [stdout] 623 |     pub struct Node {
[INFO] [stdout]     |                ---- fields in this struct
[INFO] [stdout] 624 |         pub name: Tokens,
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 625 |         pub data: Option<Tokens>,
[INFO] [stdout]     |             ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write` is never used
[INFO] [stdout]  --> src/writer.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub fn write(code: &Vec<Instructions>, consts: &Vec<Types>, file_name: &str) {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_string` is never used
[INFO] [stdout]   --> src/writer.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn to_string(code: &Vec<Instructions>, consts: &Vec<Types>) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_str` is never used
[INFO] [stdout]   --> src/writer.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn get_str(mut index: usize, consts: &Vec<Types>) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `val_to_string` is never used
[INFO] [stdout]   --> src/writer.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn val_to_string(val: Types) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `instr_to_str` is never used
[INFO] [stdout]   --> src/writer.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn instr_to_str(instr: Instructions) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_to_hbytes` is never used
[INFO] [stdout]    --> src/writer.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn num_to_hbytes(num: usize, bytes: u8) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/reader.rs:39:40
[INFO] [stdout]    |
[INFO] [stdout] 39 |                     let int = unsafe { std::mem::transmute::<u32, i32>(bytes) };
[INFO] [stdout]    |                                        -------------------------------^^^^^^^
[INFO] [stdout]    |                                        |
[INFO] [stdout]    |                                        help: replace this with: `u32::cast_signed`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/reader.rs:44:42
[INFO] [stdout]    |
[INFO] [stdout] 44 |                     let float = unsafe { std::mem::transmute::<u64, f64>(bytes) };
[INFO] [stdout]    |                                          -------------------------------^^^^^^^
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          help: replace this with: `f64::from_bits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/writer.rs:55:38
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let bytes = unsafe { std::mem::transmute::<i32, u32>(int) };
[INFO] [stdout]    |                                      -------------------------------^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      help: replace this with: `i32::cast_unsigned`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/writer.rs:59:38
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 let bytes = unsafe { std::mem::transmute::<f64, u64>(float) };
[INFO] [stdout]    |                                      -------------------------------^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      help: replace this with: `f64::to_bits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 0.64s
[INFO] running `Command { std: "docker" "inspect" "0e0e589b6f38f8b027c1a567abad57e4d88e1cd37d0fde33d0973912285e9ead", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e0e589b6f38f8b027c1a567abad57e4d88e1cd37d0fde33d0973912285e9ead", kill_on_drop: false }`
[INFO] [stdout] 0e0e589b6f38f8b027c1a567abad57e4d88e1cd37d0fde33d0973912285e9ead
