[INFO] cloning repository https://github.com/jbcoe/mylang2
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jbcoe/mylang2" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjbcoe%2Fmylang2", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjbcoe%2Fmylang2'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 092b1f0bb72e24456da4fa19d425a0d1e8238a68
[INFO] testing jbcoe/mylang2 against 1.95.0 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjbcoe%2Fmylang2" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jbcoe/mylang2
[INFO] finished tweaking git repo https://github.com/jbcoe/mylang2
[INFO] tweaked toml for git repo https://github.com/jbcoe/mylang2 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jbcoe/mylang2 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jbcoe/mylang2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: bin.0.src
[INFO] [stderr] warning: unused manifest key: bin.1.src
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded phf_macros v0.11.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] eaaedb9df49e0a3f7b04277e44cfa4e2e7081f40940137343d9c77c53470feeb
[INFO] running `Command { std: "docker" "start" "-a" "eaaedb9df49e0a3f7b04277e44cfa4e2e7081f40940137343d9c77c53470feeb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "eaaedb9df49e0a3f7b04277e44cfa4e2e7081f40940137343d9c77c53470feeb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eaaedb9df49e0a3f7b04277e44cfa4e2e7081f40940137343d9c77c53470feeb", kill_on_drop: false }`
[INFO] [stdout] eaaedb9df49e0a3f7b04277e44cfa4e2e7081f40940137343d9c77c53470feeb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0461f6b6c8c5e483a1546680294656211cd67784745bb222308b2c3140281c44
[INFO] running `Command { std: "docker" "start" "-a" "0461f6b6c8c5e483a1546680294656211cd67784745bb222308b2c3140281c44", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: bin.0.src
[INFO] [stderr] warning: unused manifest key: bin.1.src
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling either v1.11.0
[INFO] [stderr]    Compiling phf_shared v0.11.2
[INFO] [stderr]    Compiling phf_generator v0.11.2
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling syn v2.0.29
[INFO] [stderr]    Compiling phf_macros v0.11.2
[INFO] [stderr]    Compiling phf v0.11.2
[INFO] [stderr]    Compiling mylang2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/lexer.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn new(input: &'a str) -> Lexer {
[INFO] [stdout]    |                    --         ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is named 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: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn new(input: &'a str) -> Lexer<'a> {
[INFO] [stdout]    |                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lexer.rs:323:33
[INFO] [stdout]     |
[INFO] [stdout] 323 |     pub fn tokenize(input_text: &str) -> Vec<Token> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 323 |     pub fn tokenize(input_text: &str) -> Vec<Token<'_>> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.23s
[INFO] running `Command { std: "docker" "inspect" "0461f6b6c8c5e483a1546680294656211cd67784745bb222308b2c3140281c44", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0461f6b6c8c5e483a1546680294656211cd67784745bb222308b2c3140281c44", kill_on_drop: false }`
[INFO] [stdout] 0461f6b6c8c5e483a1546680294656211cd67784745bb222308b2c3140281c44
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 09f0ed542d7f76d0b1424eca2eed2700754406821eaf60b7d8c7d2155e336f32
[INFO] running `Command { std: "docker" "start" "-a" "09f0ed542d7f76d0b1424eca2eed2700754406821eaf60b7d8c7d2155e336f32", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: bin.0.src
[INFO] [stderr] warning: unused manifest key: bin.1.src
[INFO] [stderr]    Compiling mylang2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `*`
[INFO] [stdout]    --> src/parser.rs:350:64
[INFO] [stdout]     |
[INFO] [stdout] 350 |     use crate::{ast, lexer::Lexer, matcher::*, parser::Parser, *};
[INFO] [stdout]     |                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/lexer.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn new(input: &'a str) -> Lexer {
[INFO] [stdout]    |                    --         ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is named 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: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn new(input: &'a str) -> Lexer<'a> {
[INFO] [stdout]    |                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lexer.rs:323:33
[INFO] [stdout]     |
[INFO] [stdout] 323 |     pub fn tokenize(input_text: &str) -> Vec<Token> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 323 |     pub fn tokenize(input_text: &str) -> Vec<Token<'_>> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/matcher.rs:556:35
[INFO] [stdout]     |
[INFO] [stdout] 556 |     fn integer_literal_expr(text: &str) -> Expression {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 556 |     fn integer_literal_expr(text: &str) -> Expression<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/matcher.rs:560:33
[INFO] [stdout]     |
[INFO] [stdout] 560 |     fn float_literal_expr(text: &str) -> Expression {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 560 |     fn float_literal_expr(text: &str) -> Expression<'_> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/matcher.rs:564:30
[INFO] [stdout]     |
[INFO] [stdout] 564 |     fn identifier_expr(name: &str) -> Expression {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 564 |     fn identifier_expr(name: &str) -> Expression<'_> {
[INFO] [stdout]     |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.47s
[INFO] running `Command { std: "docker" "inspect" "09f0ed542d7f76d0b1424eca2eed2700754406821eaf60b7d8c7d2155e336f32", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "09f0ed542d7f76d0b1424eca2eed2700754406821eaf60b7d8c7d2155e336f32", kill_on_drop: false }`
[INFO] [stdout] 09f0ed542d7f76d0b1424eca2eed2700754406821eaf60b7d8c7d2155e336f32
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] bce4148f5e7a29ed86c468137603fad6cb79e5213a2cfb74305a428c94f4b156
[INFO] running `Command { std: "docker" "start" "-a" "bce4148f5e7a29ed86c468137603fad6cb79e5213a2cfb74305a428c94f4b156", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: bin.0.src
[INFO] [stderr] warning: unused manifest key: bin.1.src
[INFO] [stderr] warning: unused import: `*`
[INFO] [stderr]    --> src/parser.rs:350:64
[INFO] [stderr]     |
[INFO] [stderr] 350 |     use crate::{ast, lexer::Lexer, matcher::*, parser::Parser, *};
[INFO] [stderr]     |                                                                ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/lexer.rs:11:31
[INFO] [stderr]    |
[INFO] [stderr] 11 |     fn new(input: &'a str) -> Lexer {
[INFO] [stderr]    |                    --         ^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                    |
[INFO] [stderr]    |                    the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 11 |     fn new(input: &'a str) -> Lexer<'a> {
[INFO] [stderr]    |                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lexer.rs:323:33
[INFO] [stderr]     |
[INFO] [stderr] 323 |     pub fn tokenize(input_text: &str) -> Vec<Token> {
[INFO] [stderr]     |                                 ^^^^         ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 323 |     pub fn tokenize(input_text: &str) -> Vec<Token<'_>> {
[INFO] [stderr]     |                                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/matcher.rs:556:35
[INFO] [stderr]     |
[INFO] [stderr] 556 |     fn integer_literal_expr(text: &str) -> Expression {
[INFO] [stderr]     |                                   ^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 556 |     fn integer_literal_expr(text: &str) -> Expression<'_> {
[INFO] [stderr]     |                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/matcher.rs:560:33
[INFO] [stderr]     |
[INFO] [stderr] 560 |     fn float_literal_expr(text: &str) -> Expression {
[INFO] [stderr]     |                                 ^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 560 |     fn float_literal_expr(text: &str) -> Expression<'_> {
[INFO] [stderr]     |                                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/matcher.rs:564:30
[INFO] [stderr]     |
[INFO] [stderr] 564 |     fn identifier_expr(name: &str) -> Expression {
[INFO] [stderr]     |                              ^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                              |
[INFO] [stderr]     |                              the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 564 |     fn identifier_expr(name: &str) -> Expression<'_> {
[INFO] [stderr]     |                                                 ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `mylang2` (lib test) generated 6 warnings (run `cargo fix --lib -p mylang2 --tests` to apply 6 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mylang2-630f19ccd8257bda)
[INFO] [stdout] 
[INFO] [stdout] running 99 tests
[INFO] [stdout] test ir::ops::tests::format_add_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_equal_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_greater_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_less_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_division_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_constant_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_greater_or_equal_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_less_or_equal_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_multiply_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_not_equal_operation ... ok
[INFO] [stdout] test ir::ops::tests::format_subtraction_operation ... ok
[INFO] [stdout] test ir::tests::check_cast ... ok
[INFO] [stdout] test ir::tests::check_api_create_single_function_within_block ... ok
[INFO] [stdout] test ir::tests::check_api_create_multiply_add_within_block ... ok
[INFO] [stdout] test ir::tests::function_validation_fails_with_malformed_operation ... ok
[INFO] [stdout] test ir::tests::function_validation_fails_with_orphan_value_as_operation_operand ... ok
[INFO] [stdout] test ir::tests::function_validation_fails_with_orphan_value_as_operation_return_value ... ok
[INFO] [stdout] test ir::ops::tests::format_return_operation ... ok
[INFO] [stdout] test lexer::tests::braces_brackets_and_parens ... ok
[INFO] [stdout] test lexer::tests::comment ... ok
[INFO] [stdout] test lexer::tests::comment_no_newline ... ok
[INFO] [stdout] test lexer::tests::equal ... ok
[INFO] [stdout] test lexer::tests::divide ... ok
[INFO] [stdout] test lexer::tests::float_with_negative_exponent ... ok
[INFO] [stdout] test lexer::tests::float16 ... ok
[INFO] [stdout] test lexer::tests::float_with_positive_exponent ... ok
[INFO] [stdout] test lexer::tests::empty_input ... ok
[INFO] [stdout] test lexer::tests::float_with_exponent ... ok
[INFO] [stdout] test lexer::tests::greater ... ok
[INFO] [stdout] test lexer::tests::greater_or_equal ... ok
[INFO] [stdout] test ir::tests::function_validation_fails_with_orphan_value_as_block_argument ... ok
[INFO] [stdout] test lexer::tests::fn_keyword_arrow_and_return ... ok
[INFO] [stdout] test lexer::tests::less_or_equal ... ok
[INFO] [stdout] test lexer::tests::if_condition ... ok
[INFO] [stdout] test lexer::tests::if_false ... ok
[INFO] [stdout] test lexer::tests::if_true ... ok
[INFO] [stdout] test lexer::tests::incomplete_string ... ok
[INFO] [stdout] test lexer::tests::less ... ok
[INFO] [stdout] test lexer::tests::let_keyword ... ok
[INFO] [stdout] test lexer::tests::multiply ... ok
[INFO] [stdout] test lexer::tests::let_statement_with_assignment_to_integer ... ok
[INFO] [stdout] test lexer::tests::let_statement ... ok
[INFO] [stdout] test lexer::tests::let_statement_with_assignment_to_mutable_integer ... ok
[INFO] [stdout] test lexer::tests::let_statement_with_assignment_to_string ... ok
[INFO] [stdout] test lexer::tests::not_equal ... ok
[INFO] [stdout] test lexer::tests::minus ... ok
[INFO] [stdout] test lexer::tests::plus ... ok
[INFO] [stdout] test lexer::tests::single_space ... ok
[INFO] [stdout] test lexer::tests::test_row_and_column ... ok
[INFO] [stdout] test lexer::tests::space_and_tab ... ok
[INFO] [stdout] test lexer::tests::x_or_y ... ok
[INFO] [stdout] test matcher::tests::test_binary_expression_matcher ... ok
[INFO] [stdout] test lexer::tests::x_xor_y ... ok
[INFO] [stdout] test matcher::tests::test_float_literal_matcher ... ok
[INFO] [stdout] test matcher::tests::test_function_call_matcher ... ok
[INFO] [stdout] test matcher::tests::test_function_declaration_matcher ... ok
[INFO] [stdout] test matcher::tests::test_integer_literal_matcher ... ok
[INFO] [stdout] test matcher::tests::test_let_statement_matcher ... ok
[INFO] [stdout] test lexer::tests::x_and_y ... ok
[INFO] [stdout] test matcher::tests::test_named_identifier_matcher ... ok
[INFO] [stdout] test matcher::tests::test_named_parameter_matcher ... ok
[INFO] [stdout] test matcher::tests::test_if_statement_matcher ... ok
[INFO] [stdout] test matcher::tests::test_named_type_matcher ... ok
[INFO] [stdout] test parser::tests::fail_to_parse_let_statement_with_no_trailing_semicolon ... ok
[INFO] [stdout] test parser::tests::parse_and_expression ... ok
[INFO] [stdout] test parser::tests::parse_binary_plus_expression_with_identifiers ... ok
[INFO] [stdout] test parser::tests::parse_binary_divide_expression ... ok
[INFO] [stdout] test parser::tests::parse_binary_minus_expression ... ok
[INFO] [stdout] test parser::tests::parse_binary_plus_expression_with_integer_literals ... ok
[INFO] [stdout] test parser::tests::parse_function_call_expression ... ok
[INFO] [stdout] test parser::tests::parse_binary_star_expression ... ok
[INFO] [stdout] test parser::tests::parse_equal_expression ... ok
[INFO] [stdout] test parser::tests::parse_function_definition_with_no_parameters ... ok
[INFO] [stdout] test parser::tests::parse_function_call_expression_with_arguments ... ok
[INFO] [stdout] test parser::tests::parse_function_definitions ... ok
[INFO] [stdout] test parser::tests::parse_function_definition ... ok
[INFO] [stdout] test parser::tests::multiple_statements_can_be_parsed ... ok
[INFO] [stdout] test parser::tests::parse_greater_than_expression ... ok
[INFO] [stdout] test parser::tests::parse_greater_than_or_equal_expression ... ok
[INFO] [stdout] test parser::tests::parse_let_statement_with_boolean_literal_false ... ok
[INFO] [stdout] test parser::tests::parse_if_statement ... ok
[INFO] [stdout] test parser::tests::parse_let_statement_with_boolean_literal_true ... ok
[INFO] [stdout] test parser::tests::parse_let_statement_with_expression ... ok
[INFO] [stdout] test matcher::tests::test_return_statement_matcher ... ok
[INFO] [stdout] test parser::tests::empty_file_can_be_parsed ... ok
[INFO] [stdout] test parser::tests::parse_let_statement_with_identifier ... ok
[INFO] [stdout] test parser::tests::parse_let_statement_with_floating_point_literal ... ok
[INFO] [stdout] test parser::tests::parse_let_statement_with_integer_literal ... ok
[INFO] [stdout] test parser::tests::parse_mutable_let_statement ... ok
[INFO] [stdout] test parser::tests::parse_return_boolean_expression ... ok
[INFO] [stdout] test parser::tests::parse_not_equal_expression ... ok
[INFO] [stdout] test parser::tests::parse_less_than_expression ... ok
[INFO] [stdout] test parser::tests::parse_return_integer_expression ... ok
[INFO] [stdout] test parser::tests::parse_return_statement ... ok
[INFO] [stdout] test ir::ops::tests::format_function_call_operation ... ok
[INFO] [stdout] test parser::tests::parse_xor_expression ... ok
[INFO] [stdout] test parser::tests::parse_or_expression ... ok
[INFO] [stdout] test parser::tests::parse_less_than_or_equal_expression ... ok
[INFO] [stdout] test parser::tests::test_matcher ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 99 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "bce4148f5e7a29ed86c468137603fad6cb79e5213a2cfb74305a428c94f4b156", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bce4148f5e7a29ed86c468137603fad6cb79e5213a2cfb74305a428c94f4b156", kill_on_drop: false }`
[INFO] [stdout] bce4148f5e7a29ed86c468137603fad6cb79e5213a2cfb74305a428c94f4b156
