[INFO] cloning repository https://github.com/jedamzik/simple-interpreter-in-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jedamzik/simple-interpreter-in-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedamzik%2Fsimple-interpreter-in-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedamzik%2Fsimple-interpreter-in-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1d65f22eb48269ad446dcbcba5c13f6046e768f5
[INFO] testing jedamzik/simple-interpreter-in-rust against try#9f93af291970322f4f1c6315ccde4d7078201159 for pr-146098-6
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedamzik%2Fsimple-interpreter-in-rust" "/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/jedamzik/simple-interpreter-in-rust
[INFO] finished tweaking git repo https://github.com/jedamzik/simple-interpreter-in-rust
[INFO] tweaked toml for git repo https://github.com/jedamzik/simple-interpreter-in-rust written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jedamzik/simple-interpreter-in-rust on toolchain 9f93af291970322f4f1c6315ccde4d7078201159
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jedamzik/simple-interpreter-in-rust 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" "+9f93af291970322f4f1c6315ccde4d7078201159" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded strcursor v0.2.5
[INFO] [stderr]   Downloaded unicode-segmentation v0.1.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fa1f7ca4fa8557292962e494edb5ceba602acce8923b912a191129409aa160a9
[INFO] running `Command { std: "docker" "start" "-a" "fa1f7ca4fa8557292962e494edb5ceba602acce8923b912a191129409aa160a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fa1f7ca4fa8557292962e494edb5ceba602acce8923b912a191129409aa160a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fa1f7ca4fa8557292962e494edb5ceba602acce8923b912a191129409aa160a9", kill_on_drop: false }`
[INFO] [stdout] fa1f7ca4fa8557292962e494edb5ceba602acce8923b912a191129409aa160a9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fa73c5816e6ba0b25cf65bb91c48687e29d88261496a578843f88c47b0172785
[INFO] running `Command { std: "docker" "start" "-a" "fa73c5816e6ba0b25cf65bb91c48687e29d88261496a578843f88c47b0172785", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver v0.1.20
[INFO] [stderr]    Compiling unicode-segmentation v0.1.2
[INFO] [stderr]    Compiling rustc_version v0.1.7
[INFO] [stderr]    Compiling strcursor v0.2.5
[INFO] [stderr]    Compiling ast-interpreter v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/parser/mod.rs:54:25
[INFO] [stdout]    |
[INFO] [stdout] 54 |             _ => panic!(format!("Syntax Error: expected Integer or \"(\", found {}", token))
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 54 -             _ => panic!(format!("Syntax Error: expected Integer or \"(\", found {}", token))
[INFO] [stdout] 54 +             _ => panic!("Syntax Error: expected Integer or \"(\", found {}", token)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/interpreter/mod.rs:16:33
[INFO] [stdout]    |
[INFO] [stdout] 16 |                     _ => panic!(format!("AST Traversal Error: expected Operator, found {}.", node.token))
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 16 -                     _ => panic!(format!("AST Traversal Error: expected Operator, found {}.", node.token))
[INFO] [stdout] 16 +                     _ => panic!("AST Traversal Error: expected Operator, found {}.", node.token)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/interpreter/mod.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |                     _ => panic!(format!("AST Traversal Error: expected Number, found {}", node))
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 24 -                     _ => panic!(format!("AST Traversal Error: expected Number, found {}", node))
[INFO] [stdout] 24 +                     _ => panic!("AST Traversal Error: expected Number, found {}", node)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.40s
[INFO] running `Command { std: "docker" "inspect" "fa73c5816e6ba0b25cf65bb91c48687e29d88261496a578843f88c47b0172785", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fa73c5816e6ba0b25cf65bb91c48687e29d88261496a578843f88c47b0172785", kill_on_drop: false }`
[INFO] [stdout] fa73c5816e6ba0b25cf65bb91c48687e29d88261496a578843f88c47b0172785
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0ab2cfd203873740d2eee76af63b7f4d7a339d7f55f814ec6145b2a42566c62f
[INFO] running `Command { std: "docker" "start" "-a" "0ab2cfd203873740d2eee76af63b7f4d7a339d7f55f814ec6145b2a42566c62f", kill_on_drop: false }`
[INFO] [stderr]    Compiling ast-interpreter v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/parser/mod.rs:54:25
[INFO] [stdout]    |
[INFO] [stdout] 54 |             _ => panic!(format!("Syntax Error: expected Integer or \"(\", found {}", token))
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 54 -             _ => panic!(format!("Syntax Error: expected Integer or \"(\", found {}", token))
[INFO] [stdout] 54 +             _ => panic!("Syntax Error: expected Integer or \"(\", found {}", token)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/interpreter/mod.rs:16:33
[INFO] [stdout]    |
[INFO] [stdout] 16 |                     _ => panic!(format!("AST Traversal Error: expected Operator, found {}.", node.token))
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 16 -                     _ => panic!(format!("AST Traversal Error: expected Operator, found {}.", node.token))
[INFO] [stdout] 16 +                     _ => panic!("AST Traversal Error: expected Operator, found {}.", node.token)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/interpreter/mod.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |                     _ => panic!(format!("AST Traversal Error: expected Number, found {}", node))
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 24 -                     _ => panic!(format!("AST Traversal Error: expected Number, found {}", node))
[INFO] [stdout] 24 +                     _ => panic!("AST Traversal Error: expected Number, found {}", node)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.55s
[INFO] running `Command { std: "docker" "inspect" "0ab2cfd203873740d2eee76af63b7f4d7a339d7f55f814ec6145b2a42566c62f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0ab2cfd203873740d2eee76af63b7f4d7a339d7f55f814ec6145b2a42566c62f", kill_on_drop: false }`
[INFO] [stdout] 0ab2cfd203873740d2eee76af63b7f4d7a339d7f55f814ec6145b2a42566c62f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] cb10db895c7cabe35dd4235e84e70cfc3b0db94cdeb783c2ec67c162e9849567
[INFO] running `Command { std: "docker" "start" "-a" "cb10db895c7cabe35dd4235e84e70cfc3b0db94cdeb783c2ec67c162e9849567", kill_on_drop: false }`
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stdout] 
[INFO] [stderr]   --> src/parser/mod.rs:54:25
[INFO] [stdout] running 29 tests
[INFO] [stderr]    |
[INFO] [stderr] 54 |             _ => panic!(format!("Syntax Error: expected Integer or \"(\", found {}", token))
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 54 -             _ => panic!(format!("Syntax Error: expected Integer or \"(\", found {}", token))
[INFO] [stderr] 54 +             _ => panic!("Syntax Error: expected Integer or \"(\", found {}", token)
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/interpreter/mod.rs:16:33
[INFO] [stderr]    |
[INFO] [stderr] 16 |                     _ => panic!(format!("AST Traversal Error: expected Operator, found {}.", node.token))
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 16 -                     _ => panic!(format!("AST Traversal Error: expected Operator, found {}.", node.token))
[INFO] [stderr] 16 +                     _ => panic!("AST Traversal Error: expected Operator, found {}.", node.token)
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/interpreter/mod.rs:24:33
[INFO] [stderr]    |
[INFO] [stderr] 24 |                     _ => panic!(format!("AST Traversal Error: expected Number, found {}", node))
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]    |
[INFO] [stderr] 24 -                     _ => panic!(format!("AST Traversal Error: expected Number, found {}", node))
[INFO] [stderr] 24 +                     _ => panic!("AST Traversal Error: expected Number, found {}", node)
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `ast-interpreter` (bin "ast-interpreter" test) generated 3 warnings (run `cargo fix --bin "ast-interpreter" -p ast-interpreter --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ast_interpreter-816c620cb0325f69)
[INFO] [stdout] test interpreter::multiplication_gets_precedence_before_addition ... ok
[INFO] [stdout] test interpreter::multiplication_gets_precedence_before_subtraction ... ok
[INFO] [stdout] test interpreter::division_gets_precedence_before_subtraction ... ok
[INFO] [stdout] test interpreter::division_gets_precedence_before_addition ... ok
[INFO] [stdout] test interpreter::parenthesized_expressions_get_precedence_on_right_hand_of_operator ... ok
[INFO] [stdout] test interpreter::parenthesized_expressions_get_precedence_on_left_hand_of_operator ... ok
[INFO] [stdout] test lexer::is_integer_returns_correctly ... ok
[INFO] [stdout] test lexer::parse_digits_handles_one_digit_integers ... ok
[INFO] [stdout] test lexer::parse_digits_handles_three_digit_integers ... ok
[INFO] [stdout] test lexer::lex_returns_a_vector_of_tokens ... ok
[INFO] [stdout] test lexer::parse_digits_handles_two_digit_integers ... ok
[INFO] [stdout] test lexer::tokenize_word_returns_add_operator ... ok
[INFO] [stdout] test lexer::tokenize_word_returns_div_operator ... ok
[INFO] [stdout] test lexer::tokenize_word_returns_left_paren ... ok
[INFO] [stdout] test lexer::tokenize_word_returns_mul_operator ... ok
[INFO] [stdout] test lexer::tokenize_word_returns_right_paren ... ok
[INFO] [stdout] test lexer::tokenize_word_returns_sub_operator ... ok
[INFO] [stdout] test lexer::tokenize_word_returns_whitespace ... ok
[INFO] [stdout] test parser::eat_advances_current_token_index ... ok
[INFO] [stdout] test parser::eat_returns_current_token_if_passed_token_matches ... ok
[INFO] [stdout] test parser::factor_consumes_the_token ... ok
[INFO] [stdout] test parser::factor_returns_number_token_as_node ... ok
[INFO] [stdout] test parser::factor_skips_whitespace_tokens ... ok
[INFO] [stdout] test parser::next_token_increment_is_clamped_to_length_of_token_vector ... ok
[INFO] [stdout] test parser::next_token_increments_current_token_index ... ok
[INFO] [stdout] test lexer::tokenize_returns_a_vector_of_tokens ... ok
[INFO] [stdout] test lexer::tokenize_word_returns_integer_number ... ok
[INFO] [stdout] test parser::eat_returns_error_if_the_passed_token_is_not_the_current_token - should panic ... ok
[INFO] [stdout] test parser::factor_throws_syntax_error_on_operator - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "cb10db895c7cabe35dd4235e84e70cfc3b0db94cdeb783c2ec67c162e9849567", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cb10db895c7cabe35dd4235e84e70cfc3b0db94cdeb783c2ec67c162e9849567", kill_on_drop: false }`
[INFO] [stdout] cb10db895c7cabe35dd4235e84e70cfc3b0db94cdeb783c2ec67c162e9849567
