[INFO] cloning repository https://github.com/stwen77/interpreter
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/stwen77/interpreter" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstwen77%2Finterpreter", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstwen77%2Finterpreter'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6f29cecd76e3d05ffac6be9e9ef6e26b78af63cc
[INFO] checking stwen77/interpreter against try#0bdee9e879c87b7211d316e9152109cfd46c576b for pr-150097
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstwen77%2Finterpreter" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/stwen77/interpreter
[INFO] finished tweaking git repo https://github.com/stwen77/interpreter
[INFO] tweaked toml for git repo https://github.com/stwen77/interpreter written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/stwen77/interpreter on toolchain 0bdee9e879c87b7211d316e9152109cfd46c576b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/stwen77/interpreter 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" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3ea4250895eb802176f612eaa1d19dda2bd7e43c05f77a0a4a6192249791d3c9
[INFO] running `Command { std: "docker" "start" "-a" "3ea4250895eb802176f612eaa1d19dda2bd7e43c05f77a0a4a6192249791d3c9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3ea4250895eb802176f612eaa1d19dda2bd7e43c05f77a0a4a6192249791d3c9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3ea4250895eb802176f612eaa1d19dda2bd7e43c05f77a0a4a6192249791d3c9", kill_on_drop: false }`
[INFO] [stdout] 3ea4250895eb802176f612eaa1d19dda2bd7e43c05f77a0a4a6192249791d3c9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8382eead2c1f48439fe8917ccd5b10aeb74a5e91afce30d3d765bd4339df1f87
[INFO] running `Command { std: "docker" "start" "-a" "8382eead2c1f48439fe8917ccd5b10aeb74a5e91afce30d3d765bd4339df1f87", kill_on_drop: false }`
[INFO] [stderr]     Checking interpreter v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Deref`
[INFO] [stdout]  --> src/module/engine.rs:5:44
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ops::{Add, BitAnd, BitOr, BitXor, Deref, Div, Mul, Neg, Rem, Shl, Shr, Sub};
[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: `Deref`
[INFO] [stdout]  --> src/module/engine.rs:5:44
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ops::{Add, BitAnd, BitOr, BitXor, Deref, Div, Mul, Neg, Rem, Shl, Shr, Sub};
[INFO] [stdout]   |                                            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/module/parser.rs:383:23
[INFO] [stdout]     |
[INFO] [stdout] 383 |             let lhs = r#try!(parse_unary(input));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/module/parser.rs:420:27
[INFO] [stdout]     |
[INFO] [stdout] 420 |             let mut rhs = r#try!(parse_unary(input));
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/module/parser.rs:383:23
[INFO] [stdout]     |
[INFO] [stdout] 383 |             let lhs = r#try!(parse_unary(input));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/module/parser.rs:429:23
[INFO] [stdout]     |
[INFO] [stdout] 429 |                 rhs = r#try!(parse_binary_operation(input, curr_prec + 1, rhs));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/module/parser.rs:420:27
[INFO] [stdout]     |
[INFO] [stdout] 420 |             let mut rhs = r#try!(parse_unary(input));
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/module/parser.rs:429:23
[INFO] [stdout]     |
[INFO] [stdout] 429 |                 rhs = r#try!(parse_binary_operation(input, curr_prec + 1, rhs));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/module/parser.rs:432:23
[INFO] [stdout]     |
[INFO] [stdout] 432 |                 rhs = r#try!(parse_binary_operation(input, curr_prec, rhs));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/module/parser.rs:432:23
[INFO] [stdout]     |
[INFO] [stdout] 432 |                 rhs = r#try!(parse_binary_operation(input, curr_prec, rhs));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:736:20
[INFO] [stdout]     |
[INFO] [stdout] 736 |                 '0'...'9' => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:736:20
[INFO] [stdout]     |
[INFO] [stdout] 736 |                 '0'...'9' => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:743:32
[INFO] [stdout]     |
[INFO] [stdout] 743 | ...                   '0'...'9' => {
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:743:32
[INFO] [stdout]     |
[INFO] [stdout] 743 | ...                   '0'...'9' => {
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:752:44
[INFO] [stdout]     |
[INFO] [stdout] 752 | ...                   '0'...'9' => {
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:752:44
[INFO] [stdout]     |
[INFO] [stdout] 752 | ...                   '0'...'9' => {
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:772:20
[INFO] [stdout]     |
[INFO] [stdout] 772 |                 'A'...'Z' | 'a'...'z' | '_' => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:772:20
[INFO] [stdout]     |
[INFO] [stdout] 772 |                 'A'...'Z' | 'a'...'z' | '_' => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:772:32
[INFO] [stdout]     |
[INFO] [stdout] 772 |                 'A'...'Z' | 'a'...'z' | '_' => {
[INFO] [stdout]     |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/module/parser.rs:772:32
[INFO] [stdout]     |
[INFO] [stdout] 772 |                 'A'...'Z' | 'a'...'z' | '_' => {
[INFO] [stdout]     |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:66:20
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Clone for Box<Any> {
[INFO] [stdout]    |                    ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Clone for Box<dyn Any> {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:66:20
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Clone for Box<Any> {
[INFO] [stdout]    |                    ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Clone for Box<dyn Any> {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:24:32
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn box_clone(&self) -> Box<Any> {
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn box_clone(&self) -> Box<dyn Any> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/module/any.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn box_clone(&self) -> Box<Any>;
[INFO] [stdout]   |                                ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn box_clone(&self) -> Box<dyn Any>;
[INFO] [stdout]   |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:24:32
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn box_clone(&self) -> Box<Any> {
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn box_clone(&self) -> Box<dyn Any> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/module/any.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn box_clone(&self) -> Box<Any>;
[INFO] [stdout]   |                                ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn box_clone(&self) -> Box<dyn Any>;
[INFO] [stdout]   |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:25:18
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = dyn Fn(Vec<&mut Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:25:30
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut dyn Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:25:50
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut Any>) -> Result<Box<dyn Any>, ()>;
[INFO] [stdout]    |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:25:18
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = dyn Fn(Vec<&mut Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:25:30
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut dyn Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:33:6
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Any {
[INFO] [stdout]    |      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl dyn Any {
[INFO] [stdout]    |      +++
[INFO] [stdout] help: you might have intended to implement this trait for a given type
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Any for /* Type */ {
[INFO] [stdout]    |          ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:25:50
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut Any>) -> Result<Box<Any>, ()>;
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub type FnAny = Fn(Vec<&mut Any>) -> Result<Box<dyn Any>, ()>;
[INFO] [stdout]    |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:33:6
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Any {
[INFO] [stdout]    |      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl dyn Any {
[INFO] [stdout]    |      +++
[INFO] [stdout] help: you might have intended to implement this trait for a given type
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Any for /* Type */ {
[INFO] [stdout]    |          ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:72:21
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl fmt::Debug for Any {
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl fmt::Debug for dyn Any {
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:72:21
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl fmt::Debug for Any {
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl fmt::Debug for dyn Any {
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 | impl AnyExt for Box<Any> {
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 | impl AnyExt for Box<dyn Any> {
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 | impl AnyExt for Box<Any> {
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 | impl AnyExt for Box<dyn Any> {
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type Scope = Vec<(String, Box<Any>)>;
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type Scope = Vec<(String, Box<dyn Any>)>;
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type Scope = Vec<(String, Box<Any>)>;
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type Scope = Vec<(String, Box<dyn Any>)>;
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:35:32
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn box_clone(&self) -> Box<Any> {
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn box_clone(&self) -> Box<dyn Any> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:35:32
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn box_clone(&self) -> Box<Any> {
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn box_clone(&self) -> Box<dyn Any> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:43:57
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn call_fn(&self, ident: String, args: Vec<&mut Any>) -> Result<Box<Any>, ()> {
[INFO] [stdout]    |                                                         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn call_fn(&self, ident: String, args: Vec<&mut dyn Any>) -> Result<Box<Any>, ()> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:43:57
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn call_fn(&self, ident: String, args: Vec<&mut Any>) -> Result<Box<Any>, ()> {
[INFO] [stdout]    |                                                         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn call_fn(&self, ident: String, args: Vec<&mut dyn Any>) -> Result<Box<Any>, ()> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:43:77
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn call_fn(&self, ident: String, args: Vec<&mut Any>) -> Result<Box<Any>, ()> {
[INFO] [stdout]    |                                                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn call_fn(&self, ident: String, args: Vec<&mut Any>) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:43:77
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn call_fn(&self, ident: String, args: Vec<&mut Any>) -> Result<Box<Any>, ()> {
[INFO] [stdout]    |                                                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn call_fn(&self, ident: String, args: Vec<&mut Any>) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:66:27
[INFO] [stdout]    |
[INFO] [stdout] 66 |         F: FnOnce(&'a mut Any) -> Result<T, ()>,
[INFO] [stdout]    |                           ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |         F: FnOnce(&'a mut dyn Any) -> Result<T, ()>,
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:66:27
[INFO] [stdout]    |
[INFO] [stdout] 66 |         F: FnOnce(&'a mut Any) -> Result<T, ()>,
[INFO] [stdout]    |                           ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |         F: FnOnce(&'a mut dyn Any) -> Result<T, ()>,
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:81:36
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ) -> Result<(usize, usize, Box<Any>), ()> {
[INFO] [stdout]    |                                    ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ) -> Result<(usize, usize, Box<dyn Any>), ()> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:81:36
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ) -> Result<(usize, usize, Box<Any>), ()> {
[INFO] [stdout]    |                                    ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ) -> Result<(usize, usize, Box<dyn Any>), ()> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:97:24
[INFO] [stdout]    |
[INFO] [stdout] 97 |         this_ptr: &mut Any,
[INFO] [stdout]    |                        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 97 |         this_ptr: &mut dyn Any,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:99:29
[INFO] [stdout]    |
[INFO] [stdout] 99 |         mut source_val: Box<Any>,
[INFO] [stdout]    |                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |         mut source_val: Box<dyn Any>,
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:97:24
[INFO] [stdout]    |
[INFO] [stdout] 97 |         this_ptr: &mut Any,
[INFO] [stdout]    |                        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 97 |         this_ptr: &mut dyn Any,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:100:21
[INFO] [stdout]     |
[INFO] [stdout] 100 |     ) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     ) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:130:25
[INFO] [stdout]     |
[INFO] [stdout] 130 |         source_val: Box<Any>,
[INFO] [stdout]     |                         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 130 |         source_val: Box<dyn Any>,
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:99:29
[INFO] [stdout]    |
[INFO] [stdout] 99 |         mut source_val: Box<Any>,
[INFO] [stdout]    |                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |         mut source_val: Box<dyn Any>,
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |     ) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 |     ) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:100:21
[INFO] [stdout]     |
[INFO] [stdout] 100 |     ) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     ) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:161:21
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:130:25
[INFO] [stdout]     |
[INFO] [stdout] 130 |         source_val: Box<Any>,
[INFO] [stdout]     |                         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 130 |         source_val: Box<dyn Any>,
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |     ) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 |     ) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:161:21
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:189:24
[INFO] [stdout]     |
[INFO] [stdout] 189 |         this_ptr: &mut Any,
[INFO] [stdout]     |                        ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 189 |         this_ptr: &mut dyn Any,
[INFO] [stdout]     |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:189:24
[INFO] [stdout]     |
[INFO] [stdout] 189 |         this_ptr: &mut Any,
[INFO] [stdout]     |                        ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 189 |         this_ptr: &mut dyn Any,
[INFO] [stdout]     |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:191:21
[INFO] [stdout]     |
[INFO] [stdout] 191 |     ) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 191 |     ) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:191:21
[INFO] [stdout]     |
[INFO] [stdout] 191 |     ) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 191 |     ) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:243:82
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn evaluate_express(&self, scope: &mut Scope, expr: &Expr) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                                                                                  ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn evaluate_express(&self, scope: &mut Scope, expr: &Expr) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:243:82
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn evaluate_express(&self, scope: &mut Scope, expr: &Expr) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                                                                                  ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn evaluate_express(&self, scope: &mut Scope, expr: &Expr) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:324:75
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn eval_stmt(&self, scope: &mut Scope, stmt: &Statment) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                                                                           ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn eval_stmt(&self, scope: &mut Scope, stmt: &Statment) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:324:75
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn eval_stmt(&self, scope: &mut Scope, stmt: &Statment) -> Result<Box<Any>, ()> {
[INFO] [stdout]     |                                                                           ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn eval_stmt(&self, scope: &mut Scope, stmt: &Statment) -> Result<Box<dyn Any>, ()> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:42:22
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let boxed = <Any as Any>::type_id(self);
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let boxed = <dyn Any as Any>::type_id(self);
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:42:22
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let boxed = <Any as Any>::type_id(self);
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let boxed = <dyn Any as Any>::type_id(self);
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:50:45
[INFO] [stdout]    |
[INFO] [stdout] 50 |             unsafe { Some(&*(self as *const Any as *const T)) }
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 50 |             unsafe { Some(&*(self as *const dyn Any as *const T)) }
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:50:45
[INFO] [stdout]    |
[INFO] [stdout] 50 |             unsafe { Some(&*(self as *const Any as *const T)) }
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 50 |             unsafe { Some(&*(self as *const dyn Any as *const T)) }
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:59:47
[INFO] [stdout]    |
[INFO] [stdout] 59 |             unsafe { Some(&mut *(self as *mut Any as *mut T)) }
[INFO] [stdout]    |                                               ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 59 |             unsafe { Some(&mut *(self as *mut dyn Any as *mut T)) }
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:59:47
[INFO] [stdout]    |
[INFO] [stdout] 59 |             unsafe { Some(&mut *(self as *mut Any as *mut T)) }
[INFO] [stdout]    |                                               ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 59 |             unsafe { Some(&mut *(self as *mut dyn Any as *mut T)) }
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:68:42
[INFO] [stdout]    |
[INFO] [stdout] 68 |         Any::box_clone(self.as_ref() as &Any)
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |         Any::box_clone(self.as_ref() as &dyn Any)
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:68:42
[INFO] [stdout]    |
[INFO] [stdout] 68 |         Any::box_clone(self.as_ref() as &Any)
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |         Any::box_clone(self.as_ref() as &dyn Any)
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:86:31
[INFO] [stdout]    |
[INFO] [stdout] 86 |                 let raw: *mut Any = Box::into_raw(self);
[INFO] [stdout]    |                               ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 86 |                 let raw: *mut dyn Any = Box::into_raw(self);
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/any.rs:86:31
[INFO] [stdout]    |
[INFO] [stdout] 86 |                 let raw: *mut Any = Box::into_raw(self);
[INFO] [stdout]    |                               ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 86 |                 let raw: *mut dyn Any = Box::into_raw(self);
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:46:45
[INFO] [stdout]    |
[INFO] [stdout] 46 |             args: Some(args.iter().map(|a| <Any as Any>::type_id(&**a)).collect()),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |             args: Some(args.iter().map(|a| <dyn Any as Any>::type_id(&**a)).collect()),
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:46:45
[INFO] [stdout]    |
[INFO] [stdout] 46 |             args: Some(args.iter().map(|a| <Any as Any>::type_id(&**a)).collect()),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |             args: Some(args.iter().map(|a| <dyn Any as Any>::type_id(&**a)).collect()),
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:88:59
[INFO] [stdout]    |
[INFO] [stdout] 88 |             ((*val).downcast_mut() as Option<&mut Vec<Box<Any>>>)
[INFO] [stdout]    |                                                           ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |             ((*val).downcast_mut() as Option<&mut Vec<Box<dyn Any>>>)
[INFO] [stdout]    |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module/engine.rs:88:59
[INFO] [stdout]    |
[INFO] [stdout] 88 |             ((*val).downcast_mut() as Option<&mut Vec<Box<Any>>>)
[INFO] [stdout]    |                                                           ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |             ((*val).downcast_mut() as Option<&mut Vec<Box<dyn Any>>>)
[INFO] [stdout]    |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:149:56
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 scope[sc_idx].1.downcast_mut::<Vec<Box<Any>>>().unwrap()[idx] = target;
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 scope[sc_idx].1.downcast_mut::<Vec<Box<dyn Any>>>().unwrap()[idx] = target;
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:149:56
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 scope[sc_idx].1.downcast_mut::<Vec<Box<Any>>>().unwrap()[idx] = target;
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 scope[sc_idx].1.downcast_mut::<Vec<Box<dyn Any>>>().unwrap()[idx] = target;
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:179:56
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 scope[sc_idx].1.downcast_mut::<Vec<Box<Any>>>().unwrap()[idx] = target;
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 scope[sc_idx].1.downcast_mut::<Vec<Box<dyn Any>>>().unwrap()[idx] = target;
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:196:39
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 let mut args: Vec<Box<Any>> = args
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 let mut args: Vec<Box<dyn Any>> = args
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:179:56
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 scope[sc_idx].1.downcast_mut::<Vec<Box<Any>>>().unwrap()[idx] = target;
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 scope[sc_idx].1.downcast_mut::<Vec<Box<dyn Any>>>().unwrap()[idx] = target;
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:196:39
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 let mut args: Vec<Box<Any>> = args
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 let mut args: Vec<Box<dyn Any>> = args
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:217:63
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 ((*val).downcast_mut() as Option<&mut Vec<Box<Any>>>)
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 ((*val).downcast_mut() as Option<&mut Vec<Box<dyn Any>>>)
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:217:63
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 ((*val).downcast_mut() as Option<&mut Vec<Box<Any>>>)
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 ((*val).downcast_mut() as Option<&mut Vec<Box<dyn Any>>>)
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:283:86
[INFO] [stdout]     |
[INFO] [stdout] 283 | ...                   (*val).downcast_mut() as Option<&mut Vec<Box<Any>>>
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 283 |                                         (*val).downcast_mut() as Option<&mut Vec<Box<dyn Any>>>
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:283:86
[INFO] [stdout]     |
[INFO] [stdout] 283 | ...                   (*val).downcast_mut() as Option<&mut Vec<Box<Any>>>
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 283 |                                         (*val).downcast_mut() as Option<&mut Vec<Box<dyn Any>>>
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:329:49
[INFO] [stdout]     |
[INFO] [stdout] 329 |                 let mut last_result: Result<Box<Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 329 |                 let mut last_result: Result<Box<dyn Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:329:49
[INFO] [stdout]     |
[INFO] [stdout] 329 |                 let mut last_result: Result<Box<Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 329 |                 let mut last_result: Result<Box<dyn Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:436:39
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 let mut x: Result<Box<Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 let mut x: Result<Box<dyn Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:436:39
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 let mut x: Result<Box<Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 let mut x: Result<Box<dyn Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:608:44
[INFO] [stdout]     |
[INFO] [stdout] 608 |         let fun = move |mut args: Vec<&mut Any>| {
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 608 |         let fun = move |mut args: Vec<&mut dyn Any>| {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:608:44
[INFO] [stdout]     |
[INFO] [stdout] 608 |         let fun = move |mut args: Vec<&mut Any>| {
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 608 |         let fun = move |mut args: Vec<&mut dyn Any>| {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:614:92
[INFO] [stdout]     |
[INFO] [stdout] 614 |             Ok(Box::new(f((Clone::clone)(P), (Clone::clone)(Q), (Clone::clone)(R))) as Box<Any>)
[INFO] [stdout]     |                                                                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 614 |             Ok(Box::new(f((Clone::clone)(P), (Clone::clone)(Q), (Clone::clone)(R))) as Box<dyn Any>)
[INFO] [stdout]     |                                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:614:92
[INFO] [stdout]     |
[INFO] [stdout] 614 |             Ok(Box::new(f((Clone::clone)(P), (Clone::clone)(Q), (Clone::clone)(R))) as Box<Any>)
[INFO] [stdout]     |                                                                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 614 |             Ok(Box::new(f((Clone::clone)(P), (Clone::clone)(Q), (Clone::clone)(R))) as Box<dyn Any>)
[INFO] [stdout]     |                                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:635:44
[INFO] [stdout]     |
[INFO] [stdout] 635 |         let fun = move |mut args: Vec<&mut Any>| {
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 |         let fun = move |mut args: Vec<&mut dyn Any>| {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:635:44
[INFO] [stdout]     |
[INFO] [stdout] 635 |         let fun = move |mut args: Vec<&mut Any>| {
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 |         let fun = move |mut args: Vec<&mut dyn Any>| {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:640:73
[INFO] [stdout]     |
[INFO] [stdout] 640 |             Ok(Box::new(f((Clone::clone)(P), (Clone::clone)(Q))) as Box<Any>)
[INFO] [stdout]     |                                                                         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 640 |             Ok(Box::new(f((Clone::clone)(P), (Clone::clone)(Q))) as Box<dyn Any>)
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:640:73
[INFO] [stdout]     |
[INFO] [stdout] 640 |             Ok(Box::new(f((Clone::clone)(P), (Clone::clone)(Q))) as Box<Any>)
[INFO] [stdout]     |                                                                         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 640 |             Ok(Box::new(f((Clone::clone)(P), (Clone::clone)(Q))) as Box<dyn Any>)
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:656:44
[INFO] [stdout]     |
[INFO] [stdout] 656 |         let fun = move |mut args: Vec<&mut Any>| {
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 656 |         let fun = move |mut args: Vec<&mut dyn Any>| {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:656:44
[INFO] [stdout]     |
[INFO] [stdout] 656 |         let fun = move |mut args: Vec<&mut Any>| {
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 656 |         let fun = move |mut args: Vec<&mut dyn Any>| {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:660:54
[INFO] [stdout]     |
[INFO] [stdout] 660 |             Ok(Box::new(f((Clone::clone)(P))) as Box<Any>)
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 660 |             Ok(Box::new(f((Clone::clone)(P))) as Box<dyn Any>)
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:660:54
[INFO] [stdout]     |
[INFO] [stdout] 660 |             Ok(Box::new(f((Clone::clone)(P))) as Box<Any>)
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 660 |             Ok(Box::new(f((Clone::clone)(P))) as Box<dyn Any>)
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:675:44
[INFO] [stdout]     |
[INFO] [stdout] 675 |         let fun = move |mut args: Vec<&mut Any>| {
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 675 |         let fun = move |mut args: Vec<&mut dyn Any>| {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:677:37
[INFO] [stdout]     |
[INFO] [stdout] 677 |             Ok(Box::new(f()) as Box<Any>)
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 677 |             Ok(Box::new(f()) as Box<dyn Any>)
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:675:44
[INFO] [stdout]     |
[INFO] [stdout] 675 |         let fun = move |mut args: Vec<&mut Any>| {
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 675 |         let fun = move |mut args: Vec<&mut dyn Any>| {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module/engine.rs:677:37
[INFO] [stdout]     |
[INFO] [stdout] 677 |             Ok(Box::new(f()) as Box<Any>)
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 677 |             Ok(Box::new(f()) as Box<dyn Any>)
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]   --> src/module/engine.rs:53:31
[INFO] [stdout]    |
[INFO] [stdout] 53 |                 FnIntExt::Int(ref f) => Err(()),
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]   --> src/module/engine.rs:53:31
[INFO] [stdout]    |
[INFO] [stdout] 53 |                 FnIntExt::Int(ref f) => Err(()),
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/module/engine.rs:315:39
[INFO] [stdout]     |
[INFO] [stdout] 315 |             Expr::FnCall(ref fn_name, ref args) => {
[INFO] [stdout]     |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/module/engine.rs:315:39
[INFO] [stdout]     |
[INFO] [stdout] 315 |             Expr::FnCall(ref fn_name, ref args) => {
[INFO] [stdout]     |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/module/engine.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |             _ => Err(()),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/module/engine.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             Statment::Expr(ref e) => self.evaluate_express(scope, e),
[INFO] [stdout]     |             --------------------- matches some of the same values
[INFO] [stdout] 327 |             Statment::Block(ref b) => {
[INFO] [stdout]     |             ---------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 345 |             Statment::If(ref guard, ref body) => {
[INFO] [stdout]     |             --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 358 |             Statment::IfElse(ref guard, ref body, ref else_body) => {
[INFO] [stdout]     |             ---------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 411 |             _ => Err(()),
[INFO] [stdout]     |             ^ ...and 6 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/module/engine.rs:378:33
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...                   Err(()) => return Ok(Box::new(())), //It couldn't support break, since err type is deleted
[INFO] [stdout]     |                       ------- matches all the relevant values
[INFO] [stdout] 378 | ...                   Err(x) => return Err(x),
[INFO] [stdout]     |                       ^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/module/engine.rs:391:21
[INFO] [stdout]     |
[INFO] [stdout] 390 |                     Err(()) => return Ok(Box::new(())), //same as while
[INFO] [stdout]     |                     ------- matches all the relevant values
[INFO] [stdout] 391 |                     Err(x) => return Err(x),
[INFO] [stdout]     |                     ^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/module/engine.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |             _ => Err(()),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/module/engine.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             Statment::Expr(ref e) => self.evaluate_express(scope, e),
[INFO] [stdout]     |             --------------------- matches some of the same values
[INFO] [stdout] 327 |             Statment::Block(ref b) => {
[INFO] [stdout]     |             ---------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 345 |             Statment::If(ref guard, ref body) => {
[INFO] [stdout]     |             --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 358 |             Statment::IfElse(ref guard, ref body, ref else_body) => {
[INFO] [stdout]     |             ---------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 411 |             _ => Err(()),
[INFO] [stdout]     |             ^ ...and 6 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/module/engine.rs:378:33
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...                   Err(()) => return Ok(Box::new(())), //It couldn't support break, since err type is deleted
[INFO] [stdout]     |                       ------- matches all the relevant values
[INFO] [stdout] 378 | ...                   Err(x) => return Err(x),
[INFO] [stdout]     |                       ^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/module/engine.rs:391:21
[INFO] [stdout]     |
[INFO] [stdout] 390 |                     Err(()) => return Ok(Box::new(())), //same as while
[INFO] [stdout]     |                     ------- matches all the relevant values
[INFO] [stdout] 391 |                     Err(x) => return Err(x),
[INFO] [stdout]     |                     ^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/module/engine.rs:452:29
[INFO] [stdout]     |
[INFO] [stdout] 452 |                         Err(e) => Err(()),
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `x` is never read
[INFO] [stdout]    --> src/module/engine.rs:436:51
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 let mut x: Result<Box<Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/module/engine.rs:452:29
[INFO] [stdout]     |
[INFO] [stdout] 452 |                         Err(e) => Err(()),
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `x` is never read
[INFO] [stdout]    --> src/module/engine.rs:436:51
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 let mut x: Result<Box<Any>, ()> = Ok(Box::new(()));
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/module/engine.rs:557:20
[INFO] [stdout]     |
[INFO] [stdout] 557 |         fn unit_eq(a: (), b: ()) -> bool {
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/module/engine.rs:557:27
[INFO] [stdout]     |
[INFO] [stdout] 557 |         fn unit_eq(a: (), b: ()) -> bool {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/module/engine.rs:557:20
[INFO] [stdout]     |
[INFO] [stdout] 557 |         fn unit_eq(a: (), b: ()) -> bool {
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/module/engine.rs:557:27
[INFO] [stdout]     |
[INFO] [stdout] 557 |         fn unit_eq(a: (), b: ()) -> bool {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module/engine.rs:676:17
[INFO] [stdout]     |
[INFO] [stdout] 676 |             let mut drain = args.drain(..);
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `drain`
[INFO] [stdout]    --> src/module/engine.rs:676:17
[INFO] [stdout]     |
[INFO] [stdout] 676 |             let mut drain = args.drain(..);
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_drain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module/engine.rs:676:17
[INFO] [stdout]     |
[INFO] [stdout] 676 |             let mut drain = args.drain(..);
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `drain`
[INFO] [stdout]    --> src/module/engine.rs:676:17
[INFO] [stdout]     |
[INFO] [stdout] 676 |             let mut drain = args.drain(..);
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_drain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/module/parser.rs:207:20
[INFO] [stdout]     |
[INFO] [stdout] 207 |     while let Some(a) = token_iterator.char_stream.peek() {
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/module/parser.rs:207:20
[INFO] [stdout]     |
[INFO] [stdout] 207 |     while let Some(a) = token_iterator.char_stream.peek() {
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module/parser.rs:738:25
[INFO] [stdout]     |
[INFO] [stdout] 738 |                     let mut radix_base: Option<u32> = None;
[INFO] [stdout]     |                         ----^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `radix_base`
[INFO] [stdout]    --> src/module/parser.rs:738:25
[INFO] [stdout]     |
[INFO] [stdout] 738 |                     let mut radix_base: Option<u32> = None;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_radix_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/module/parser.rs:803:25
[INFO] [stdout]     |
[INFO] [stdout] 803 |                     Err(e) => return Some(Token::LexErr),
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/main.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn test_fn(a: i32, b: i32, c: i32) {
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/main.rs:18:20
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn test_fn(a: i32, b: i32, c: i32) {
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/main.rs:18:28
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn test_fn(a: i32, b: i32, c: i32) {
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module/parser.rs:738:25
[INFO] [stdout]     |
[INFO] [stdout] 738 |                     let mut radix_base: Option<u32> = None;
[INFO] [stdout]     |                         ----^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `box_clone` is never used
[INFO] [stdout]   --> src/module/any.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Any {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] 34 |     #[inline]
[INFO] [stdout] 35 |     fn box_clone(&self) -> Box<Any> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `radix_base`
[INFO] [stdout]    --> src/module/parser.rs:738:25
[INFO] [stdout]     |
[INFO] [stdout] 738 |                     let mut radix_base: Option<u32> = None;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_radix_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/module/parser.rs:803:25
[INFO] [stdout]     |
[INFO] [stdout] 803 |                     Err(e) => return Some(Token::LexErr),
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `types` is never read
[INFO] [stdout]   --> src/module/engine.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Engine {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 10 |     pub functions: HashMap<FnSpec, Arc<FnIntExt>>,
[INFO] [stdout] 11 |     pub types: HashMap<TypeId, String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Engine` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `params` and `body` are never read
[INFO] [stdout]  --> src/module/parser.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct FnDef {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 6 |     pub name: String,
[INFO] [stdout] 7 |     pub params: Vec<String>,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 8 |     pub body: Box<Statment>,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FnDef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TempStub` is never constructed
[INFO] [stdout]   --> src/module/parser.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum Expr {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 40 |     TempStub,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `CharConst`, `Divide`, and `DivideAssign` are never constructed
[INFO] [stdout]   --> src/module/parser.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub enum Token {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 48 |     CharConst(char),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     Divide,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     DivideAssign,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     engine_vm.call_fn("test".to_string(), vec![&mut a, &mut b, &mut c]);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let _ = engine_vm.call_fn("test".to_string(), vec![&mut a, &mut b, &mut c]);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         engine_vm.eval_file::<()>(&fname);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let _ = engine_vm.eval_file::<()>(&fname);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/main.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn test_fn(a: i32, b: i32, c: i32) {
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/main.rs:18:20
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn test_fn(a: i32, b: i32, c: i32) {
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/module/engine.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | /         self.functions
[INFO] [stdout] 49 | |             .get(&spec)
[INFO] [stdout] 50 | |             .ok_or(())
[INFO] [stdout] 51 | |             .and_then(move |f| match **f {
[INFO] [stdout] 52 | |                 FnIntExt::Ext(ref f) => f(args),
[INFO] [stdout] 53 | |                 FnIntExt::Int(ref f) => Err(()),
[INFO] [stdout] 54 | |             });
[INFO] [stdout]    | |______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let _ = self.functions
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/main.rs:18:28
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn test_fn(a: i32, b: i32, c: i32) {
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/module/engine.rs:421:17
[INFO] [stdout]     |
[INFO] [stdout] 421 |                 self.eval::<T>(&mut contents);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 421 |                 let _ = self.eval::<T>(&mut contents);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:610:17
[INFO] [stdout]     |
[INFO] [stdout] 610 |             let P = ((*drain.next().unwrap()).downcast_mut() as Option<&mut P>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Q` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:611:17
[INFO] [stdout]     |
[INFO] [stdout] 611 |             let Q = ((*drain.next().unwrap()).downcast_mut() as Option<&mut Q>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:612:17
[INFO] [stdout]     |
[INFO] [stdout] 612 |             let R = ((*drain.next().unwrap()).downcast_mut() as Option<&mut R>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:637:17
[INFO] [stdout]     |
[INFO] [stdout] 637 |             let P = ((*drain.next().unwrap()).downcast_mut() as Option<&mut P>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Q` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:638:17
[INFO] [stdout]     |
[INFO] [stdout] 638 |             let Q = ((*drain.next().unwrap()).downcast_mut() as Option<&mut Q>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:658:17
[INFO] [stdout]     |
[INFO] [stdout] 658 |             let P = ((*drain.next().unwrap()).downcast_mut() as Option<&mut P>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `box_clone` is never used
[INFO] [stdout]   --> src/module/any.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Any {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] 34 |     #[inline]
[INFO] [stdout] 35 |     fn box_clone(&self) -> Box<Any> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `types` is never read
[INFO] [stdout]   --> src/module/engine.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Engine {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 10 |     pub functions: HashMap<FnSpec, Arc<FnIntExt>>,
[INFO] [stdout] 11 |     pub types: HashMap<TypeId, String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Engine` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `params` and `body` are never read
[INFO] [stdout]  --> src/module/parser.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct FnDef {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 6 |     pub name: String,
[INFO] [stdout] 7 |     pub params: Vec<String>,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 8 |     pub body: Box<Statment>,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FnDef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TempStub` is never constructed
[INFO] [stdout]   --> src/module/parser.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum Expr {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 40 |     TempStub,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `CharConst`, `Divide`, and `DivideAssign` are never constructed
[INFO] [stdout]   --> src/module/parser.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub enum Token {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 48 |     CharConst(char),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     Divide,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     DivideAssign,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     engine_vm.call_fn("test".to_string(), vec![&mut a, &mut b, &mut c]);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let _ = engine_vm.call_fn("test".to_string(), vec![&mut a, &mut b, &mut c]);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         engine_vm.eval_file::<()>(&fname);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let _ = engine_vm.eval_file::<()>(&fname);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/module/engine.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | /         self.functions
[INFO] [stdout] 49 | |             .get(&spec)
[INFO] [stdout] 50 | |             .ok_or(())
[INFO] [stdout] 51 | |             .and_then(move |f| match **f {
[INFO] [stdout] 52 | |                 FnIntExt::Ext(ref f) => f(args),
[INFO] [stdout] 53 | |                 FnIntExt::Int(ref f) => Err(()),
[INFO] [stdout] 54 | |             });
[INFO] [stdout]    | |______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let _ = self.functions
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/module/engine.rs:421:17
[INFO] [stdout]     |
[INFO] [stdout] 421 |                 self.eval::<T>(&mut contents);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 421 |                 let _ = self.eval::<T>(&mut contents);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:610:17
[INFO] [stdout]     |
[INFO] [stdout] 610 |             let P = ((*drain.next().unwrap()).downcast_mut() as Option<&mut P>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Q` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:611:17
[INFO] [stdout]     |
[INFO] [stdout] 611 |             let Q = ((*drain.next().unwrap()).downcast_mut() as Option<&mut Q>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:612:17
[INFO] [stdout]     |
[INFO] [stdout] 612 |             let R = ((*drain.next().unwrap()).downcast_mut() as Option<&mut R>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:637:17
[INFO] [stdout]     |
[INFO] [stdout] 637 |             let P = ((*drain.next().unwrap()).downcast_mut() as Option<&mut P>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Q` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:638:17
[INFO] [stdout]     |
[INFO] [stdout] 638 |             let Q = ((*drain.next().unwrap()).downcast_mut() as Option<&mut Q>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/module/engine.rs:658:17
[INFO] [stdout]     |
[INFO] [stdout] 658 |             let P = ((*drain.next().unwrap()).downcast_mut() as Option<&mut P>).ok_or(())?;
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.24s
[INFO] running `Command { std: "docker" "inspect" "8382eead2c1f48439fe8917ccd5b10aeb74a5e91afce30d3d765bd4339df1f87", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8382eead2c1f48439fe8917ccd5b10aeb74a5e91afce30d3d765bd4339df1f87", kill_on_drop: false }`
[INFO] [stdout] 8382eead2c1f48439fe8917ccd5b10aeb74a5e91afce30d3d765bd4339df1f87
