[INFO] cloning repository https://github.com/pseguin2011/monkey_interpreter [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pseguin2011/monkey_interpreter" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpseguin2011%2Fmonkey_interpreter", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpseguin2011%2Fmonkey_interpreter'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4919060c2b5e948c080fa57822602c4a5996777d [INFO] checking pseguin2011/monkey_interpreter against try#8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8 for pr-82565 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpseguin2011%2Fmonkey_interpreter" "/workspace/builds/worker-0/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/pseguin2011/monkey_interpreter on toolchain 8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/pseguin2011/monkey_interpreter [INFO] finished tweaking git repo https://github.com/pseguin2011/monkey_interpreter [INFO] tweaked toml for git repo https://github.com/pseguin2011/monkey_interpreter written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/pseguin2011/monkey_interpreter already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "rustops/crates-build-env@sha256:f2f6bcd4b43ebee4e173f653a26493129bdb64017c85f916b780ca7fbdbaa79d" "/opt/rustwide/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c484fc63ef6f39dfe1b727cc90085c86c1fae099426906e729c96421ccaa9e1a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "c484fc63ef6f39dfe1b727cc90085c86c1fae099426906e729c96421ccaa9e1a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c484fc63ef6f39dfe1b727cc90085c86c1fae099426906e729c96421ccaa9e1a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c484fc63ef6f39dfe1b727cc90085c86c1fae099426906e729c96421ccaa9e1a", kill_on_drop: false }` [INFO] [stdout] c484fc63ef6f39dfe1b727cc90085c86c1fae099426906e729c96421ccaa9e1a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:f2f6bcd4b43ebee4e173f653a26493129bdb64017c85f916b780ca7fbdbaa79d" "/opt/rustwide/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6e7c4e676f71a6603efb9d71ead351534028e3435303462395d353caccc29f6a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "6e7c4e676f71a6603efb9d71ead351534028e3435303462395d353caccc29f6a", kill_on_drop: false }` [INFO] [stderr] Checking monkey_interpreter v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Node` [INFO] [stdout] --> src/parser/parser.rs:1:102 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::parser::ast::{Expressions, ExpressionStatement, Identifier, IntegerLiteral, LetStatement, Node, Program, ReturnStatement, Stat... [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `precedence` [INFO] [stdout] --> src/parser/parser.rs:280:40 [INFO] [stdout] | [INFO] [stdout] 280 | fn parse_expression<'a>(&mut self, precedence: u8, token_type: token::TokenType) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_precedence` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LOWEST` [INFO] [stdout] --> src/parser/parser.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const LOWEST: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `EQUALS` [INFO] [stdout] --> src/parser/parser.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const EQUALS: u8 = 2; // == [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LESSGREATER` [INFO] [stdout] --> src/parser/parser.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | const LESSGREATER: u8 = 3; // < or > [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `SUM` [INFO] [stdout] --> src/parser/parser.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const SUM: u8 = 4; // + [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `PRODUCT` [INFO] [stdout] --> src/parser/parser.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const PRODUCT: u8 = 5; // * [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `PREFIX` [INFO] [stdout] --> src/parser/parser.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const PREFIX: u8 = 6; // -X or !X [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CALL` [INFO] [stdout] --> src/parser/parser.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | const CALL: u8 = 7; // myFunction(X) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `PrefixParsingFn` [INFO] [stdout] --> src/parser/parser.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | type PrefixParsingFn<'a> = dyn Fn(&Parser) -> Expressions<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `InfixParsingFn` [INFO] [stdout] --> src/parser/parser.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | type InfixParsingFn<'a> = dyn Fn(&Parser, Expressions<'a>) -> Expressions<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Parser` [INFO] [stdout] --> src/parser/parser.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | struct Parser { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/parser/parser.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn new(lexer: Lexer) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `register_prefix` [INFO] [stdout] --> src/parser/parser.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn register_prefix(&mut self, token_type: token::TokenType<'static>, func: &'static PrefixParsingFn<'static>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `register_infix` [INFO] [stdout] --> src/parser/parser.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn register_infix(&mut self, token_type: token::TokenType<'static>, func: &'static InfixParsingFn<'static>) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_program_ast_node` [INFO] [stdout] --> src/parser/parser.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | fn new_program_ast_node() -> Program<'static> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `next_token` [INFO] [stdout] --> src/parser/parser.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn next_token(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `errors` [INFO] [stdout] --> src/parser/parser.rs:85:12 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn errors(&self) -> &[String] { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `peek_error` [INFO] [stdout] --> src/parser/parser.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn peek_error(&mut self, t: token::TokenType) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_program` [INFO] [stdout] --> src/parser/parser.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 105 | pub fn parse_program(&mut self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `expected_peek` [INFO] [stdout] --> src/parser/parser.rs:133:8 [INFO] [stdout] | [INFO] [stdout] 133 | fn expected_peek(&mut self, token_type: token::TokenType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `peek_token_is` [INFO] [stdout] --> src/parser/parser.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | fn peek_token_is(&self, token_type: token::TokenType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `current_token_is` [INFO] [stdout] --> src/parser/parser.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 153 | fn current_token_is(&self, token_type: token::TokenType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_identifier` [INFO] [stdout] --> src/parser/parser.rs:168:12 [INFO] [stdout] | [INFO] [stdout] 168 | pub fn parse_identifier(&self) -> Expressions<'static> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_integer_literal` [INFO] [stdout] --> src/parser/parser.rs:181:12 [INFO] [stdout] | [INFO] [stdout] 181 | pub fn parse_integer_literal(&self) -> Expressions<'static> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_let_statement` [INFO] [stdout] --> src/parser/parser.rs:204:8 [INFO] [stdout] | [INFO] [stdout] 204 | fn parse_let_statement(&mut self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_return_statement` [INFO] [stdout] --> src/parser/parser.rs:239:8 [INFO] [stdout] | [INFO] [stdout] 239 | fn parse_return_statement(&mut self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_expression_statement` [INFO] [stdout] --> src/parser/parser.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | fn parse_expression_statement(&mut self) -> Option>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_expression` [INFO] [stdout] --> src/parser/parser.rs:280:8 [INFO] [stdout] | [INFO] [stdout] 280 | fn parse_expression<'a>(&mut self, precedence: u8, token_type: token::TokenType) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `check_parser_errors` [INFO] [stdout] --> src/parser/parser.rs:419:4 [INFO] [stdout] | [INFO] [stdout] 419 | fn check_parser_errors(parser: &Parser) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `precedence` [INFO] [stdout] --> src/parser/parser.rs:280:40 [INFO] [stdout] | [INFO] [stdout] 280 | fn parse_expression<'a>(&mut self, precedence: u8, token_type: token::TokenType) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_precedence` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 30 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `EQUALS` [INFO] [stdout] --> src/parser/parser.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const EQUALS: u8 = 2; // == [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LESSGREATER` [INFO] [stdout] --> src/parser/parser.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | const LESSGREATER: u8 = 3; // < or > [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `SUM` [INFO] [stdout] --> src/parser/parser.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const SUM: u8 = 4; // + [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `PRODUCT` [INFO] [stdout] --> src/parser/parser.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const PRODUCT: u8 = 5; // * [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `PREFIX` [INFO] [stdout] --> src/parser/parser.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const PREFIX: u8 = 6; // -X or !X [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CALL` [INFO] [stdout] --> src/parser/parser.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | const CALL: u8 = 7; // myFunction(X) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `infix_parsing_fns` [INFO] [stdout] --> src/parser/parser.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | infix_parsing_fns: HashMap, &'static InfixParsingFn<'static>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `register_infix` [INFO] [stdout] --> src/parser/parser.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn register_infix(&mut self, token_type: token::TokenType<'static>, func: &'static InfixParsingFn<'static>) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.71s [INFO] running `Command { std: "docker" "inspect" "6e7c4e676f71a6603efb9d71ead351534028e3435303462395d353caccc29f6a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6e7c4e676f71a6603efb9d71ead351534028e3435303462395d353caccc29f6a", kill_on_drop: false }` [INFO] [stdout] 6e7c4e676f71a6603efb9d71ead351534028e3435303462395d353caccc29f6a