[INFO] cloning repository https://github.com/angusholder/go-compiler
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/angusholder/go-compiler" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fangusholder%2Fgo-compiler", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fangusholder%2Fgo-compiler'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 935c8fe29219a50c69594745adc17db4521583de
[INFO] checking angusholder/go-compiler against 895980e0290783bb09b1ccf1b11f14eb09b10430 for pr-160186
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fangusholder%2Fgo-compiler" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/angusholder/go-compiler
[INFO] finished tweaking git repo https://github.com/angusholder/go-compiler
[INFO] tweaked toml for git repo https://github.com/angusholder/go-compiler written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/angusholder/go-compiler on toolchain 895980e0290783bb09b1ccf1b11f14eb09b10430
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/angusholder/go-compiler 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" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `go-compiler` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b
[INFO] running `Command { std: "docker" "start" "1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `go-compiler` (manifest) generated 1 warning
[INFO] [stderr]    Compiling cc v1.0.4
[INFO] [stderr]     Checking libc v0.2.36
[INFO] [stderr]     Checking serde v1.0.27
[INFO] [stderr]     Checking cfg-if v0.1.2
[INFO] [stderr]     Checking rustc-demangle v0.1.5
[INFO] [stderr]     Checking vec_map v0.8.0
[INFO] [stderr]     Checking fnv v1.0.6
[INFO] [stderr]     Checking num-traits v0.1.41
[INFO] [stderr]     Checking smallvec v0.6.0
[INFO] [stderr]    Compiling backtrace-sys v0.1.16
[INFO] [stderr]     Checking string-interner v0.6.3
[INFO] [stderr]     Checking backtrace v0.3.5
[INFO] [stderr]     Checking go-compiler v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated module `std::u32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/utils/result.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::u32;
[INFO] [stdout]   |          ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/utils/result.rs:186:21
[INFO] [stdout]     |
[INFO] [stdout] 186 |         start: u32::MAX,
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/utils/result.rs:187:19
[INFO] [stdout]     |
[INFO] [stdout] 187 |         end: u32::MAX,
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::u32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/utils/result.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::u32;
[INFO] [stdout]   |          ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/utils/result.rs:186:21
[INFO] [stdout]     |
[INFO] [stdout] 186 |         start: u32::MAX,
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/utils/result.rs:187:19
[INFO] [stdout]     |
[INFO] [stdout] 187 |         end: u32::MAX,
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils/result.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout] 51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]    |                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/lexer.rs:89:32
[INFO] [stdout]    |
[INFO] [stdout] 89 |                         return err!(span, "Unexpected character sequence `..`");
[INFO] [stdout]    |                                ------------------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/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] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lexer.rs:222:24
[INFO] [stdout]     |
[INFO] [stdout] 222 |                 return err!(span, "unexpected character `{:#?}`", ch);
[INFO] [stdout]     |                        ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lexer.rs:268:24
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 return err!(span, "string literal terminated prematurely");
[INFO] [stdout]     |                        --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lexer.rs:305:32
[INFO] [stdout]     |
[INFO] [stdout] 305 |                         return err!(span, "unknown escape sequence '\\{}'", ch2);
[INFO] [stdout]     |                                ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout] 51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/parser.rs:63:20
[INFO] [stdout]    |
[INFO] [stdout] 63 |               return err!(self.token, "expected top level declaration or end of file, got {}",
[INFO] [stdout]    |  ____________________-
[INFO] [stdout] 64 | |                 self.token);
[INFO] [stdout]    | |___________________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |             err!(self.token, "expected token {:#?}, got {}", token_kind, self.token)
[INFO] [stdout]     |             ------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |             err!(self.token, "expected keyword {:#?}, got {}", keyword, self.token)
[INFO] [stdout]     |             ----------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |             err!(self.token, "expected identifier, got {}", self.token)
[INFO] [stdout]     |             ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |             err!(self.token, "expected string literal, got {}", self.token)
[INFO] [stdout]     |             --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:231:24
[INFO] [stdout]     |
[INFO] [stdout] 231 |                   return err!(self.token, "expected top level declaration (const/type/var/func), found {}",
[INFO] [stdout]     |  ________________________-
[INFO] [stdout] 232 | |                     self.token);
[INFO] [stdout]     | |_______________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:271:28
[INFO] [stdout]     |
[INFO] [stdout] 271 |                     return err!(span, "variadic parameter missing type");
[INFO] [stdout]     |                            --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:298:28
[INFO] [stdout]     |
[INFO] [stdout] 298 |                     return err!(span, "variadic parameter missing type");
[INFO] [stdout]     |                            --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:376:32
[INFO] [stdout]     |
[INFO] [stdout] 376 |                         return err!(param_decl.span, "can only use ... with final parameter");
[INFO] [stdout]     |                                -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:382:36
[INFO] [stdout]     |
[INFO] [stdout] 382 | ...                   return err!(param_decl.span, "can only use ... with final parameter");
[INFO] [stdout]     |                              -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:393:28
[INFO] [stdout]     |
[INFO] [stdout] 393 |                     return err!(param_decl.span, "mixed named and unnamed parameters");
[INFO] [stdout]     |                            ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:412:36
[INFO] [stdout]     |
[INFO] [stdout] 412 | ...                   return err!(param_decl.span, "can only use ... with final parameter");
[INFO] [stdout]     |                              -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:425:28
[INFO] [stdout]     |
[INFO] [stdout] 425 |                     return err!(param_decl.span, "mixed named and unnamed parameters");
[INFO] [stdout]     |                            ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:528:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |             err!(self.token, "expected type, got {}", self.token)
[INFO] [stdout]     |             ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:607:13
[INFO] [stdout]     |
[INFO] [stdout] 607 |             err!(token, "expected expression")
[INFO] [stdout]     |             ---------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:767:20
[INFO] [stdout]     |
[INFO] [stdout] 767 |             return err!(self.token, "expected expression, found {:#?}", self.token)
[INFO] [stdout]     |                    ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:814:28
[INFO] [stdout]     |
[INFO] [stdout] 814 |                     return err!(self.token, "expected ';' or '}}', got {}", self.token);
[INFO] [stdout]     |                            ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:837:24
[INFO] [stdout]     |
[INFO] [stdout] 837 |                 return err!(token, "expected declaration, got {}", token);
[INFO] [stdout]     |                        -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:868:24
[INFO] [stdout]     |
[INFO] [stdout] 868 |                 return err!(span, "expected type or =, found {:?}", self.token);
[INFO] [stdout]     |                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:917:36
[INFO] [stdout]     |
[INFO] [stdout] 917 | ...                   return err!(Span::INVALID, "{:?} used as value", other);
[INFO] [stdout]     |                              ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:921:28
[INFO] [stdout]     |
[INFO] [stdout] 921 |                       return err!(self.token.span, "unexpected {:?}, expecting {{ after if clause",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 922 | |                                 self.token.kind);
[INFO] [stdout]     | |________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:972:32
[INFO] [stdout]     |
[INFO] [stdout] 972 |                         return err!(Span::INVALID, "loop condition must be an expression, got {:#?}", simple_stmt);
[INFO] [stdout]     |                                ----------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:986:28
[INFO] [stdout]     |
[INFO] [stdout] 986 |                     return err!(self.token, "expected valid for-loop header, got {:#?} \nfollowed by {}", simple_stmt, self.token);
[INFO] [stdout]     |                            ------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1079:28
[INFO] [stdout]      |
[INFO] [stdout] 1079 |                     return err!(self.token, "expected statement, got {}", self.token);
[INFO] [stdout]      |                            ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1149:25
[INFO] [stdout]      |
[INFO] [stdout] 1149 |                         err!(self.token, "expected expression, found `range`")
[INFO] [stdout]      |                         ------------------------------------------------------ in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1161:25
[INFO] [stdout]      |
[INFO] [stdout] 1161 |                         err!(e, "non-name {:#?} on left side of :=", e)
[INFO] [stdout]      |                         ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1172:25
[INFO] [stdout]      |
[INFO] [stdout] 1172 |                         err!(self.token, "expected expression, found `range`")
[INFO] [stdout]      |                         ------------------------------------------------------ in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1180:24
[INFO] [stdout]      |
[INFO] [stdout] 1180 |                 return err!(token, "expected assignment, got {}", token)
[INFO] [stdout]      |                        ------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout] 51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]    |                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/lexer.rs:89:32
[INFO] [stdout]    |
[INFO] [stdout] 89 |                         return err!(span, "Unexpected character sequence `..`");
[INFO] [stdout]    |                                ------------------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/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] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lexer.rs:222:24
[INFO] [stdout]     |
[INFO] [stdout] 222 |                 return err!(span, "unexpected character `{:#?}`", ch);
[INFO] [stdout]     |                        ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lexer.rs:268:24
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 return err!(span, "string literal terminated prematurely");
[INFO] [stdout]     |                        --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lexer.rs:305:32
[INFO] [stdout]     |
[INFO] [stdout] 305 |                         return err!(span, "unknown escape sequence '\\{}'", ch2);
[INFO] [stdout]     |                                ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |         err!(Span::INVALID, "main function not found")
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:219:24
[INFO] [stdout]     |
[INFO] [stdout] 219 |                   return err!(span, "{} redeclared in this block, previous declaration at {:?}",
[INFO] [stdout]     |  ________________________-
[INFO] [stdout] 220 | |                             name, decl.span());
[INFO] [stdout]     | |______________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:248:20
[INFO] [stdout]     |
[INFO] [stdout] 248 |             return err!(span, "no new variables on left side of :=");
[INFO] [stdout]     |                    ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:259:24
[INFO] [stdout]     |
[INFO] [stdout] 259 |                 return err!(span, "no new variable on the left side of :=");
[INFO] [stdout]     |                        ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:289:36
[INFO] [stdout]     |
[INFO] [stdout] 289 |   ...                   return err!(right_expr.span,
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 290 | | ...                       "cannot use {:?} (of type {}) as type {} in assignment",
[INFO] [stdout] 291 | | ...                       right_expr.kind, right_ty.name(&self.env), left_ty.name(&self.env));
[INFO] [stdout]     | |_____________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:296:32
[INFO] [stdout]     |
[INFO] [stdout] 296 |                         return err!(left_expr.span, "cannot assign to {}", name);
[INFO] [stdout]     |                                ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:299:32
[INFO] [stdout]     |
[INFO] [stdout] 299 |                         return err!(left_expr.span, "type {} is not an expression", name);
[INFO] [stdout]     |                                ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:302:32
[INFO] [stdout]     |
[INFO] [stdout] 302 |                         return err!(left_expr.span, "use of undeclared identifier {}", name);
[INFO] [stdout]     |                                ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:374:28
[INFO] [stdout]     |
[INFO] [stdout] 374 |                       return err!(span, "{} operator expects boolean operands, got {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 375 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:379:28
[INFO] [stdout]     |
[INFO] [stdout] 379 |                       return err!(span, "invalid operation {}, mismatched types {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 380 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:388:28
[INFO] [stdout]     |
[INFO] [stdout] 388 |                       return err!(span, "invalid operation {}, mismatched types {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 389 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:397:28
[INFO] [stdout]     |
[INFO] [stdout] 397 |                       return err!(span, "invalid operation {}, mismatched types {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 398 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:402:28
[INFO] [stdout]     |
[INFO] [stdout] 402 |                       return err!(span, "invalid operation {}, expected integer type, got {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 403 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:411:28
[INFO] [stdout]     |
[INFO] [stdout] 411 |                       return err!(span, "invalid operation, shift count type {} must be unsigned integer",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 412 | |                                     right_ty.name(&self.env));
[INFO] [stdout]     | |_____________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:416:28
[INFO] [stdout]     |
[INFO] [stdout] 416 |                     return err!(span, "shift of type {}, must be integer", left_ty.name(&self.env));
[INFO] [stdout]     |                            ------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:432:28
[INFO] [stdout]     |
[INFO] [stdout] 432 |                       return err!(span, "{} operator expects boolean operand, got {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 433 | |                                     op, expr_ty.name(&self.env));
[INFO] [stdout]     | |________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:439:28
[INFO] [stdout]     |
[INFO] [stdout] 439 |                       return err!(span, "{} operator expects integer operand, got {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 440 | |                                     op, expr_ty.name(&self.env));
[INFO] [stdout]     | |________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:446:28
[INFO] [stdout]     |
[INFO] [stdout] 446 |                       return err!(span, "{} operator expects number operand, got {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 447 | |                                     op, expr_ty.name(&self.env));
[INFO] [stdout]     | |________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:481:32
[INFO] [stdout]     |
[INFO] [stdout] 481 |                         return err!(expr.span, "type {} is not an expression", ty.name(&self.env));
[INFO] [stdout]     |                                ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:484:32
[INFO] [stdout]     |
[INFO] [stdout] 484 |                         return err!(expr.span, "unknown identifier {}", ident);
[INFO] [stdout]     |                                ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:646:20
[INFO] [stdout]     |
[INFO] [stdout] 646 |               return err!(Span::INVALID, "non-bool {:?} (type {}) used as if condition",
[INFO] [stdout]     |  ____________________-
[INFO] [stdout] 647 | |                         stmt.cond, cond_ty.name(&self.env));
[INFO] [stdout]     | |___________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:799:32
[INFO] [stdout]     |
[INFO] [stdout] 799 |                         return err!(span, "use of undeclared identifier {}", name);
[INFO] [stdout]     |                                --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:808:32
[INFO] [stdout]     |
[INFO] [stdout] 808 |                         return err!(span, "type {} is not an expression", name);
[INFO] [stdout]     |                                ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout] 51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/parser.rs:63:20
[INFO] [stdout]    |
[INFO] [stdout] 63 |               return err!(self.token, "expected top level declaration or end of file, got {}",
[INFO] [stdout]    |  ____________________-
[INFO] [stdout] 64 | |                 self.token);
[INFO] [stdout]    | |___________________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |             err!(self.token, "expected token {:#?}, got {}", token_kind, self.token)
[INFO] [stdout]     |             ------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |             err!(self.token, "expected keyword {:#?}, got {}", keyword, self.token)
[INFO] [stdout]     |             ----------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |             err!(self.token, "expected identifier, got {}", self.token)
[INFO] [stdout]     |             ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |             err!(self.token, "expected string literal, got {}", self.token)
[INFO] [stdout]     |             --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:231:24
[INFO] [stdout]     |
[INFO] [stdout] 231 |                   return err!(self.token, "expected top level declaration (const/type/var/func), found {}",
[INFO] [stdout]     |  ________________________-
[INFO] [stdout] 232 | |                     self.token);
[INFO] [stdout]     | |_______________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:271:28
[INFO] [stdout]     |
[INFO] [stdout] 271 |                     return err!(span, "variadic parameter missing type");
[INFO] [stdout]     |                            --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:298:28
[INFO] [stdout]     |
[INFO] [stdout] 298 |                     return err!(span, "variadic parameter missing type");
[INFO] [stdout]     |                            --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:376:32
[INFO] [stdout]     |
[INFO] [stdout] 376 |                         return err!(param_decl.span, "can only use ... with final parameter");
[INFO] [stdout]     |                                -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:382:36
[INFO] [stdout]     |
[INFO] [stdout] 382 | ...                   return err!(param_decl.span, "can only use ... with final parameter");
[INFO] [stdout]     |                              -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:393:28
[INFO] [stdout]     |
[INFO] [stdout] 393 |                     return err!(param_decl.span, "mixed named and unnamed parameters");
[INFO] [stdout]     |                            ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:412:36
[INFO] [stdout]     |
[INFO] [stdout] 412 | ...                   return err!(param_decl.span, "can only use ... with final parameter");
[INFO] [stdout]     |                              -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:425:28
[INFO] [stdout]     |
[INFO] [stdout] 425 |                     return err!(param_decl.span, "mixed named and unnamed parameters");
[INFO] [stdout]     |                            ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:528:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |             err!(self.token, "expected type, got {}", self.token)
[INFO] [stdout]     |             ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:607:13
[INFO] [stdout]     |
[INFO] [stdout] 607 |             err!(token, "expected expression")
[INFO] [stdout]     |             ---------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:767:20
[INFO] [stdout]     |
[INFO] [stdout] 767 |             return err!(self.token, "expected expression, found {:#?}", self.token)
[INFO] [stdout]     |                    ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:814:28
[INFO] [stdout]     |
[INFO] [stdout] 814 |                     return err!(self.token, "expected ';' or '}}', got {}", self.token);
[INFO] [stdout]     |                            ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:837:24
[INFO] [stdout]     |
[INFO] [stdout] 837 |                 return err!(token, "expected declaration, got {}", token);
[INFO] [stdout]     |                        -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:868:24
[INFO] [stdout]     |
[INFO] [stdout] 868 |                 return err!(span, "expected type or =, found {:?}", self.token);
[INFO] [stdout]     |                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:917:36
[INFO] [stdout]     |
[INFO] [stdout] 917 | ...                   return err!(Span::INVALID, "{:?} used as value", other);
[INFO] [stdout]     |                              ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:921:28
[INFO] [stdout]     |
[INFO] [stdout] 921 |                       return err!(self.token.span, "unexpected {:?}, expecting {{ after if clause",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 922 | |                                 self.token.kind);
[INFO] [stdout]     | |________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:972:32
[INFO] [stdout]     |
[INFO] [stdout] 972 |                         return err!(Span::INVALID, "loop condition must be an expression, got {:#?}", simple_stmt);
[INFO] [stdout]     |                                ----------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parser.rs:986:28
[INFO] [stdout]     |
[INFO] [stdout] 986 |                     return err!(self.token, "expected valid for-loop header, got {:#?} \nfollowed by {}", simple_stmt, self.token);
[INFO] [stdout]     |                            ------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1079:28
[INFO] [stdout]      |
[INFO] [stdout] 1079 |                     return err!(self.token, "expected statement, got {}", self.token);
[INFO] [stdout]      |                            ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1149:25
[INFO] [stdout]      |
[INFO] [stdout] 1149 |                         err!(self.token, "expected expression, found `range`")
[INFO] [stdout]      |                         ------------------------------------------------------ in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1161:25
[INFO] [stdout]      |
[INFO] [stdout] 1161 |                         err!(e, "non-name {:#?} on left side of :=", e)
[INFO] [stdout]      |                         ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1172:25
[INFO] [stdout]      |
[INFO] [stdout] 1172 |                         err!(self.token, "expected expression, found `range`")
[INFO] [stdout]      |                         ------------------------------------------------------ in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]      |
[INFO] [stdout]   47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]   51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/parser.rs:1180:24
[INFO] [stdout]      |
[INFO] [stdout] 1180 |                 return err!(token, "expected assignment, got {}", token)
[INFO] [stdout]      |                        ------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |         err!(Span::INVALID, "main function not found")
[INFO] [stdout]     |         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:219:24
[INFO] [stdout]     |
[INFO] [stdout] 219 |                   return err!(span, "{} redeclared in this block, previous declaration at {:?}",
[INFO] [stdout]     |  ________________________-
[INFO] [stdout] 220 | |                             name, decl.span());
[INFO] [stdout]     | |______________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:248:20
[INFO] [stdout]     |
[INFO] [stdout] 248 |             return err!(span, "no new variables on left side of :=");
[INFO] [stdout]     |                    ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:259:24
[INFO] [stdout]     |
[INFO] [stdout] 259 |                 return err!(span, "no new variable on the left side of :=");
[INFO] [stdout]     |                        ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:289:36
[INFO] [stdout]     |
[INFO] [stdout] 289 |   ...                   return err!(right_expr.span,
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 290 | | ...                       "cannot use {:?} (of type {}) as type {} in assignment",
[INFO] [stdout] 291 | | ...                       right_expr.kind, right_ty.name(&self.env), left_ty.name(&self.env));
[INFO] [stdout]     | |_____________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:296:32
[INFO] [stdout]     |
[INFO] [stdout] 296 |                         return err!(left_expr.span, "cannot assign to {}", name);
[INFO] [stdout]     |                                ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:299:32
[INFO] [stdout]     |
[INFO] [stdout] 299 |                         return err!(left_expr.span, "type {} is not an expression", name);
[INFO] [stdout]     |                                ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:302:32
[INFO] [stdout]     |
[INFO] [stdout] 302 |                         return err!(left_expr.span, "use of undeclared identifier {}", name);
[INFO] [stdout]     |                                ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:374:28
[INFO] [stdout]     |
[INFO] [stdout] 374 |                       return err!(span, "{} operator expects boolean operands, got {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 375 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:379:28
[INFO] [stdout]     |
[INFO] [stdout] 379 |                       return err!(span, "invalid operation {}, mismatched types {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 380 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:388:28
[INFO] [stdout]     |
[INFO] [stdout] 388 |                       return err!(span, "invalid operation {}, mismatched types {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 389 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:397:28
[INFO] [stdout]     |
[INFO] [stdout] 397 |                       return err!(span, "invalid operation {}, mismatched types {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 398 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:402:28
[INFO] [stdout]     |
[INFO] [stdout] 402 |                       return err!(span, "invalid operation {}, expected integer type, got {} and {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 403 | |                                     op, left_ty.name(&self.env), right_ty.name(&self.env));
[INFO] [stdout]     | |__________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:411:28
[INFO] [stdout]     |
[INFO] [stdout] 411 |                       return err!(span, "invalid operation, shift count type {} must be unsigned integer",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 412 | |                                     right_ty.name(&self.env));
[INFO] [stdout]     | |_____________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:416:28
[INFO] [stdout]     |
[INFO] [stdout] 416 |                     return err!(span, "shift of type {}, must be integer", left_ty.name(&self.env));
[INFO] [stdout]     |                            ------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:432:28
[INFO] [stdout]     |
[INFO] [stdout] 432 |                       return err!(span, "{} operator expects boolean operand, got {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 433 | |                                     op, expr_ty.name(&self.env));
[INFO] [stdout]     | |________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:439:28
[INFO] [stdout]     |
[INFO] [stdout] 439 |                       return err!(span, "{} operator expects integer operand, got {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 440 | |                                     op, expr_ty.name(&self.env));
[INFO] [stdout]     | |________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:446:28
[INFO] [stdout]     |
[INFO] [stdout] 446 |                       return err!(span, "{} operator expects number operand, got {}",
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 447 | |                                     op, expr_ty.name(&self.env));
[INFO] [stdout]     | |________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:481:32
[INFO] [stdout]     |
[INFO] [stdout] 481 |                         return err!(expr.span, "type {} is not an expression", ty.name(&self.env));
[INFO] [stdout]     |                                ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:484:32
[INFO] [stdout]     |
[INFO] [stdout] 484 |                         return err!(expr.span, "unknown identifier {}", ident);
[INFO] [stdout]     |                                ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 |   macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |           let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:646:20
[INFO] [stdout]     |
[INFO] [stdout] 646 |               return err!(Span::INVALID, "non-bool {:?} (type {}) used as if condition",
[INFO] [stdout]     |  ____________________-
[INFO] [stdout] 647 | |                         stmt.cond, cond_ty.name(&self.env));
[INFO] [stdout]     | |___________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:799:32
[INFO] [stdout]     |
[INFO] [stdout] 799 |                         return err!(span, "use of undeclared identifier {}", name);
[INFO] [stdout]     |                                --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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/utils/result.rs:51:24
[INFO] [stdout]     |
[INFO] [stdout]  47 | macro_rules! err {
[INFO] [stdout] ...
[INFO] [stdout]  51 |         let has_span: &HasSpan = &$has_span;
[INFO] [stdout]     |                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/compiler.rs:808:32
[INFO] [stdout]     |
[INFO] [stdout] 808 |                         return err!(span, "type {} is not an expression", name);
[INFO] [stdout]     |                                ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils/id.rs:149:17
[INFO] [stdout]     |
[INFO] [stdout] 149 |     pub fn iter(&self) -> IdVecIter<K, V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 149 |     pub fn iter(&self) -> IdVecIter<'_, K, V> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils/id.rs:149:17
[INFO] [stdout]     |
[INFO] [stdout] 149 |     pub fn iter(&self) -> IdVecIter<K, V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 149 |     pub fn iter(&self) -> IdVecIter<'_, K, V> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.76s
[INFO] running `Command { std: "docker" "inspect" "1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b", kill_on_drop: false }`
[INFO] [stdout] 1b3f6ea1817da30a267efbea93ba69012d8038fa3b5d83b325c505fdb705648b
