[INFO] updating cached repository Nazariglez/monkeylang-rs [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/Nazariglez/monkeylang-rs [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/Nazariglez/monkeylang-rs" "work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/Nazariglez/monkeylang-rs"` [INFO] [stderr] Cloning into 'work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/Nazariglez/monkeylang-rs'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/Nazariglez/monkeylang-rs" "work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/Nazariglez/monkeylang-rs"` [INFO] [stderr] Cloning into 'work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/Nazariglez/monkeylang-rs'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 5900888c8130244f4f6c8d7fa69d0c8c7dcb4473 [INFO] sha for GitHub repo Nazariglez/monkeylang-rs: 5900888c8130244f4f6c8d7fa69d0c8c7dcb4473 [INFO] validating manifest of Nazariglez/monkeylang-rs on toolchain master#a850a426491e14186af2250549bf41256b5938d2 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+a850a426491e14186af2250549bf41256b5938d2-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of Nazariglez/monkeylang-rs on toolchain try#06a150c7d11500b41499224f165e9de1de096768 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+06a150c7d11500b41499224f165e9de1de096768-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing Nazariglez/monkeylang-rs [INFO] finished frobbing Nazariglez/monkeylang-rs [INFO] frobbed toml for Nazariglez/monkeylang-rs written to work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/Nazariglez/monkeylang-rs/Cargo.toml [INFO] started frobbing Nazariglez/monkeylang-rs [INFO] finished frobbing Nazariglez/monkeylang-rs [INFO] frobbed toml for Nazariglez/monkeylang-rs written to work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/Nazariglez/monkeylang-rs/Cargo.toml [INFO] crate Nazariglez/monkeylang-rs already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+a850a426491e14186af2250549bf41256b5938d2-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+06a150c7d11500b41499224f165e9de1de096768-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking Nazariglez/monkeylang-rs against master#a850a426491e14186af2250549bf41256b5938d2 for pr-60162 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-60162/worker-1/master#a850a426491e14186af2250549bf41256b5938d2:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/Nazariglez/monkeylang-rs:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+a850a426491e14186af2250549bf41256b5938d2-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] ad446e11638e63e191dca327963b217cc6c93871171cc41cf10471fc6bc7a939 [INFO] running `"docker" "start" "-a" "ad446e11638e63e191dca327963b217cc6c93871171cc41cf10471fc6bc7a939"` [INFO] [stderr] Checking monkey v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/token.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 67 | _Illegal => "Illegal", [INFO] [stderr] | -------- matches any value [INFO] [stderr] 68 | _EOF => "EOF", [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/token.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 67 | _Illegal => "Illegal", [INFO] [stderr] | -------- matches any value [INFO] [stderr] 68 | _EOF => "EOF", [INFO] [stderr] 69 | _Ident => "Ident", [INFO] [stderr] | ^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/token.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 67 | _Illegal => "Illegal", [INFO] [stderr] | -------- matches any value [INFO] [stderr] ... [INFO] [stderr] 70 | _ => "Unimplemented!" [INFO] [stderr] | ^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/token.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn new(typ: TokenType, literal: &str) -> Token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `from_char` [INFO] [stderr] --> src/token.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn from_char(typ: TokenType, ch: char) -> Token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `default` [INFO] [stderr] --> src/token.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn default() -> Token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Illegal` [INFO] [stderr] --> src/token.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | Illegal, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `EOF` [INFO] [stderr] --> src/token.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | EOF, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Ident` [INFO] [stderr] --> src/token.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | Ident, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Int` [INFO] [stderr] --> src/token.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | Int, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `String` [INFO] [stderr] --> src/token.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Assign` [INFO] [stderr] --> src/token.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | Assign, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Plus` [INFO] [stderr] --> src/token.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | Plus, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Minus` [INFO] [stderr] --> src/token.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | Minus, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Bang` [INFO] [stderr] --> src/token.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | Bang, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Asterisk` [INFO] [stderr] --> src/token.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | Asterisk, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Slash` [INFO] [stderr] --> src/token.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | Slash, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `LT` [INFO] [stderr] --> src/token.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | LT, [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `GT` [INFO] [stderr] --> src/token.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | GT, [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Equal` [INFO] [stderr] --> src/token.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | Equal, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `NotEqual` [INFO] [stderr] --> src/token.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | NotEqual, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Comma` [INFO] [stderr] --> src/token.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | Comma, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Semicolon` [INFO] [stderr] --> src/token.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | Semicolon, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Lparen` [INFO] [stderr] --> src/token.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | Lparen, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Rparen` [INFO] [stderr] --> src/token.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | Rparen, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Lbrace` [INFO] [stderr] --> src/token.rs:52:5 [INFO] [stderr] | [INFO] [stderr] 52 | Lbrace, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Rbrace` [INFO] [stderr] --> src/token.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | Rbrace, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Function` [INFO] [stderr] --> src/token.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | Function, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Let` [INFO] [stderr] --> src/token.rs:56:5 [INFO] [stderr] | [INFO] [stderr] 56 | Let, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `True` [INFO] [stderr] --> src/token.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | True, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `False` [INFO] [stderr] --> src/token.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | False, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `If` [INFO] [stderr] --> src/token.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | If, [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Else` [INFO] [stderr] --> src/token.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | Else, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Return` [INFO] [stderr] --> src/token.rs:61:5 [INFO] [stderr] | [INFO] [stderr] 61 | Return, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lookup_ident` [INFO] [stderr] --> src/token.rs:77:1 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn lookup_ident(ident: &str) -> TokenType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `ZERO_CHAR` [INFO] [stderr] --> src/lexer.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | const ZERO_CHAR:char = 0u8 as char; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_letter` [INFO] [stderr] --> src/lexer.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | fn is_letter(ch: char) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_digit` [INFO] [stderr] --> src/lexer.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | fn is_digit(ch: char) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Lexer` [INFO] [stderr] --> src/lexer.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub struct Lexer { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/lexer.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn new(input: &str) -> Lexer { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `read_char` [INFO] [stderr] --> src/lexer.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | fn read_char(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `read_number` [INFO] [stderr] --> src/lexer.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | fn read_number(&mut self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `read_identifier` [INFO] [stderr] --> src/lexer.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | fn read_identifier(&mut self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `peek_char` [INFO] [stderr] --> src/lexer.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | fn peek_char(&self) -> char { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `next_token` [INFO] [stderr] --> src/lexer.rs:80:5 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn next_token(&mut self) -> Token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `skip_whitespace` [INFO] [stderr] --> src/lexer.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | fn skip_whitespace(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Identifier` [INFO] [stderr] --> src/ast.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub struct Identifier { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/ast.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn new(tok: Token, val: &str) -> Identifier { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `token_literal` [INFO] [stderr] --> src/ast.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn token_literal(&self) -> &str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Let` [INFO] [stderr] --> src/ast.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | Let(Identifier, Expression), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Return` [INFO] [stderr] --> src/ast.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | Return(Expression), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Expression` [INFO] [stderr] --> src/ast.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | Expression(Expression), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Expression` [INFO] [stderr] --> src/ast.rs:65:1 [INFO] [stderr] | [INFO] [stderr] 65 | pub enum Expression { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Literal` [INFO] [stderr] --> src/ast.rs:82:1 [INFO] [stderr] | [INFO] [stderr] 82 | pub enum Literal { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Program` [INFO] [stderr] --> src/ast.rs:100:1 [INFO] [stderr] | [INFO] [stderr] 100 | pub struct Program { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/ast.rs:105:5 [INFO] [stderr] | [INFO] [stderr] 105 | pub fn new() -> Program { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `token_literal` [INFO] [stderr] --> src/ast.rs:111:5 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn token_literal(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Parser` [INFO] [stderr] --> src/parser.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | struct Parser { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/parser.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn new(lexer: Lexer) -> Parser { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `errors` [INFO] [stderr] --> src/parser.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | fn errors(&self) -> &Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `peek_error` [INFO] [stderr] --> src/parser.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | fn peek_error(&mut self, typ: &TokenType) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `next_token` [INFO] [stderr] --> src/parser.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | fn next_token(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_program` [INFO] [stderr] --> src/parser.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | fn parse_program(&mut self) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_statement` [INFO] [stderr] --> src/parser.rs:56:5 [INFO] [stderr] | [INFO] [stderr] 56 | fn parse_statement(&mut self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_let_statement` [INFO] [stderr] --> src/parser.rs:64:5 [INFO] [stderr] | [INFO] [stderr] 64 | fn parse_let_statement(&mut self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_return_statement` [INFO] [stderr] --> src/parser.rs:93:5 [INFO] [stderr] | [INFO] [stderr] 93 | fn parse_return_statement(&mut self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `cur_token_is` [INFO] [stderr] --> src/parser.rs:108:5 [INFO] [stderr] | [INFO] [stderr] 108 | fn cur_token_is(&self, typ: TokenType) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `peek_token_is` [INFO] [stderr] --> src/parser.rs:112:5 [INFO] [stderr] | [INFO] [stderr] 112 | fn peek_token_is(&self, typ: &TokenType) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `expect_peek` [INFO] [stderr] --> src/parser.rs:116:5 [INFO] [stderr] | [INFO] [stderr] 116 | fn expect_peek(&mut self, typ: TokenType) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `_Illegal` should have a snake case name [INFO] [stderr] --> src/token.rs:67:13 [INFO] [stderr] | [INFO] [stderr] 67 | _Illegal => "Illegal", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `_illegal` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `_EOF` should have a snake case name [INFO] [stderr] --> src/token.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | _EOF => "EOF", [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `_eof` [INFO] [stderr] [INFO] [stderr] warning: variable `_Ident` should have a snake case name [INFO] [stderr] --> src/token.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | _Ident => "Ident", [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `_ident` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/token.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 67 | _Illegal => "Illegal", [INFO] [stderr] | -------- matches any value [INFO] [stderr] 68 | _EOF => "EOF", [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/token.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 67 | _Illegal => "Illegal", [INFO] [stderr] | -------- matches any value [INFO] [stderr] 68 | _EOF => "EOF", [INFO] [stderr] 69 | _Ident => "Ident", [INFO] [stderr] | ^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/token.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 67 | _Illegal => "Illegal", [INFO] [stderr] | -------- matches any value [INFO] [stderr] ... [INFO] [stderr] 70 | _ => "Unimplemented!" [INFO] [stderr] | ^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Expression` [INFO] [stderr] --> src/ast.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | Expression(Expression), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Literal` [INFO] [stderr] --> src/ast.rs:67:5 [INFO] [stderr] | [INFO] [stderr] 67 | Literal(Literal), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Int` [INFO] [stderr] --> src/ast.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 83 | Int(i32), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `String` [INFO] [stderr] --> src/ast.rs:84:5 [INFO] [stderr] | [INFO] [stderr] 84 | String(String), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Bool` [INFO] [stderr] --> src/ast.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | Bool(bool) [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `token_literal` [INFO] [stderr] --> src/ast.rs:111:5 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn token_literal(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `errors` [INFO] [stderr] --> src/parser.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | fn errors(&self) -> &Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `_Illegal` should have a snake case name [INFO] [stderr] --> src/token.rs:67:13 [INFO] [stderr] | [INFO] [stderr] 67 | _Illegal => "Illegal", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `_illegal` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `_EOF` should have a snake case name [INFO] [stderr] --> src/token.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | _EOF => "EOF", [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `_eof` [INFO] [stderr] [INFO] [stderr] warning: variable `_Ident` should have a snake case name [INFO] [stderr] --> src/token.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | _Ident => "Ident", [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `_ident` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.78s [INFO] running `"docker" "inspect" "ad446e11638e63e191dca327963b217cc6c93871171cc41cf10471fc6bc7a939"` [INFO] running `"docker" "rm" "-f" "ad446e11638e63e191dca327963b217cc6c93871171cc41cf10471fc6bc7a939"` [INFO] [stdout] ad446e11638e63e191dca327963b217cc6c93871171cc41cf10471fc6bc7a939