[INFO] cloning repository https://github.com/glazari/monkey-language-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/glazari/monkey-language-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fglazari%2Fmonkey-language-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fglazari%2Fmonkey-language-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3a42ef9e6016039faae1244f059af36aa1a28473
[INFO] checking glazari/monkey-language-rust against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fglazari%2Fmonkey-language-rust" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/glazari/monkey-language-rust
[INFO] finished tweaking git repo https://github.com/glazari/monkey-language-rust
[INFO] tweaked toml for git repo https://github.com/glazari/monkey-language-rust written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/glazari/monkey-language-rust 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/glazari/monkey-language-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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded phf_generator v0.11.1
[INFO] [stderr]   Downloaded phf v0.11.1
[INFO] [stderr]   Downloaded phf_shared v0.11.1
[INFO] [stderr]   Downloaded phf_macros v0.11.1
[INFO] [stderr]   Downloaded output_vt100 v0.1.3
[INFO] [stderr]   Downloaded pretty_assertions v1.3.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 53a3bdb5d8b5acbc1a014424ff12ee01b6ed5cfcdbd98f4a9fca2d4d2180477b
[INFO] running `Command { std: "docker" "start" "-a" "53a3bdb5d8b5acbc1a014424ff12ee01b6ed5cfcdbd98f4a9fca2d4d2180477b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "53a3bdb5d8b5acbc1a014424ff12ee01b6ed5cfcdbd98f4a9fca2d4d2180477b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "53a3bdb5d8b5acbc1a014424ff12ee01b6ed5cfcdbd98f4a9fca2d4d2180477b", kill_on_drop: false }`
[INFO] [stdout] 53a3bdb5d8b5acbc1a014424ff12ee01b6ed5cfcdbd98f4a9fca2d4d2180477b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] aa4d465afd826c6bfcda5d56379ff25dbb5d14fdb91e6abb359fc68c5d49ef28
[INFO] running `Command { std: "docker" "start" "-a" "aa4d465afd826c6bfcda5d56379ff25dbb5d14fdb91e6abb359fc68c5d49ef28", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.56
[INFO] [stderr]    Compiling siphasher v0.3.10
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]     Checking yansi v0.5.1
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]     Checking pretty_assertions v1.3.0
[INFO] [stderr]    Compiling phf_shared v0.11.1
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling phf_generator v0.11.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling phf_macros v0.11.1
[INFO] [stderr]     Checking phf v0.11.1
[INFO] [stderr]     Checking monkey-language-rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/ast.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ast.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut out = "".to_string();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]   --> src/ast.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut out = "".to_string();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ast.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut out = match self {
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `literal` is never used
[INFO] [stdout]   --> src/token.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Token {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 46 |     pub fn literal(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_current_position` is never used
[INFO] [stdout]    --> src/lexer.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl Lexer {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn print_current_position(&self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Program` is never constructed
[INFO] [stdout]  --> src/ast.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Program {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `token_literal`, and `string` are never used
[INFO] [stdout]   --> src/ast.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Program {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout]  9 |     pub fn new() -> Program {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn token_literal(&self) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Statement` is never used
[INFO] [stdout]   --> src/ast.rs:35:10
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub enum Statement {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]   --> src/ast.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl Statement {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 42 |     fn token_literal(&self) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn string(&self) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LetStatement` is never constructed
[INFO] [stdout]   --> src/ast.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct LetStatement {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]   --> src/ast.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | impl LetStatement {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] 63 |     fn token_literal(&self) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     fn string(&self) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ReturnStatement` is never constructed
[INFO] [stdout]   --> src/ast.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct ReturnStatement {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]   --> src/ast.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | impl ReturnStatement {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] 85 |     fn token_literal(&self) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     fn string(&self) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Expression` is never used
[INFO] [stdout]   --> src/ast.rs:99:10
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub enum Expression {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]    --> src/ast.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl Expression {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 107 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn string(&self) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InfixExpression` is never constructed
[INFO] [stdout]    --> src/ast.rs:121:12
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct InfixExpression {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]    --> src/ast.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl InfixExpression {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] 129 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn string(&self) -> String {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrefixExpression` is never constructed
[INFO] [stdout]    --> src/ast.rs:146:12
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub struct PrefixExpression {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]    --> src/ast.rs:153:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | impl PrefixExpression {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] 153 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     fn string(&self) -> String {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IntegerLiteral` is never constructed
[INFO] [stdout]    --> src/ast.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub struct IntegerLiteral {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]    --> src/ast.rs:173:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | impl IntegerLiteral {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] 173 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub fn string(&self) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Identifier` is never constructed
[INFO] [stdout]    --> src/ast.rs:182:12
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub struct Identifier {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]    --> src/ast.rs:188:8
[INFO] [stdout]     |
[INFO] [stdout] 187 | impl Identifier {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 188 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     fn string(&self) -> String {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExpressionStatement` is never constructed
[INFO] [stdout]    --> src/ast.rs:197:12
[INFO] [stdout]     |
[INFO] [stdout] 197 | pub struct ExpressionStatement {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `token_literal` and `string` are never used
[INFO] [stdout]    --> src/ast.rs:203:8
[INFO] [stdout]     |
[INFO] [stdout] 202 | impl ExpressionStatement {
[INFO] [stdout]     | ------------------------ methods in this implementation
[INFO] [stdout] 203 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     fn string(&self) -> String {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parser` is never constructed
[INFO] [stdout]  --> src/parser.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Parser {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/parser.rs:16:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl Parser {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  16 |     pub fn new(lexer: Lexer) -> Parser {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  28 |     fn next_token(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn parse_program(&mut self) -> Result<Program, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     fn parse_statement(&mut self) -> Result<Statement, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  65 |     fn skip_statement(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     fn parse_expression_statement(&mut self) -> Result<Statement, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     fn parse_expression(&mut self, precedence: Precedence) -> Result<Expression, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     fn parse_infix_expression(&mut self, left: Expression) -> Result<Expression, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn parse_prefix_expression(&mut self) -> Result<Expression, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     fn parse_integer_literal(&mut self) -> Result<Expression, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     fn parser_identifier(&mut self) -> Result<Expression, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn parse_return_statement(&mut self) -> Result<Statement, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     fn parse_let_statement(&mut self) -> Result<Statement, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     fn peek_precedence(&self) -> Precedence {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     fn cur_precedence(&self) -> Precedence {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Precedence` is never used
[INFO] [stdout]    --> src/parser.rs:229:6
[INFO] [stdout]     |
[INFO] [stdout] 229 | enum Precedence {
[INFO] [stdout]     |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_token` and `value` are never used
[INFO] [stdout]    --> src/parser.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 239 | impl Precedence {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 240 |     fn from_token(token: &Token) -> Precedence {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |     fn value(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ast.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut out = "".to_string();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]   --> src/ast.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut out = "".to_string();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ast.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut out = match self {
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_program`
[INFO] [stdout]    --> src/parser.rs:397:13
[INFO] [stdout]     |
[INFO] [stdout] 397 |         let expected_program = Program {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]    --> src/parser.rs:407:13
[INFO] [stdout]     |
[INFO] [stdout] 407 |         let program = match parser.parse_program() {
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `token_literal` is never used
[INFO] [stdout]   --> src/ast.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Program {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn token_literal(&self) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `token_literal` is never used
[INFO] [stdout]   --> src/ast.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl Statement {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 42 |     fn token_literal(&self) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `token_literal` is never used
[INFO] [stdout]    --> src/ast.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl Expression {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 107 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.81s
[INFO] [stdout] warning: method `token_literal` is never used
[INFO] [stdout]    --> src/ast.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl InfixExpression {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] 129 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `token_literal` is never used
[INFO] [stdout]    --> src/ast.rs:153:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | impl PrefixExpression {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 153 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `token_literal` is never used
[INFO] [stdout]    --> src/ast.rs:173:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | impl IntegerLiteral {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] 173 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `token_literal` is never used
[INFO] [stdout]    --> src/ast.rs:188:8
[INFO] [stdout]     |
[INFO] [stdout] 187 | impl Identifier {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 188 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `token_literal` is never used
[INFO] [stdout]    --> src/ast.rs:203:8
[INFO] [stdout]     |
[INFO] [stdout] 202 | impl ExpressionStatement {
[INFO] [stdout]     | ------------------------ method in this implementation
[INFO] [stdout] 203 |     fn token_literal(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "aa4d465afd826c6bfcda5d56379ff25dbb5d14fdb91e6abb359fc68c5d49ef28", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aa4d465afd826c6bfcda5d56379ff25dbb5d14fdb91e6abb359fc68c5d49ef28", kill_on_drop: false }`
[INFO] [stdout] aa4d465afd826c6bfcda5d56379ff25dbb5d14fdb91e6abb359fc68c5d49ef28
