[INFO] cloning repository https://github.com/linxunhuan/INTERPRETER_Rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/linxunhuan/INTERPRETER_Rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flinxunhuan%2FINTERPRETER_Rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flinxunhuan%2FINTERPRETER_Rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a1629b0f278baf1ddb33714bb27286426429ab93
[INFO] checking linxunhuan/INTERPRETER_Rust against master#9e293ae9f8abecb0be5105787d181518c9012a19 for pr-146440-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flinxunhuan%2FINTERPRETER_Rust" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/linxunhuan/INTERPRETER_Rust
[INFO] finished tweaking git repo https://github.com/linxunhuan/INTERPRETER_Rust
[INFO] tweaked toml for git repo https://github.com/linxunhuan/INTERPRETER_Rust written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/linxunhuan/INTERPRETER_Rust on toolchain 9e293ae9f8abecb0be5105787d181518c9012a19
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9e293ae9f8abecb0be5105787d181518c9012a19" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/linxunhuan/INTERPRETER_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" "+9e293ae9f8abecb0be5105787d181518c9012a19" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+9e293ae9f8abecb0be5105787d181518c9012a19" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c3e4ae300a85d4e28b62642d282f6bd3183354bcb841638fb9225a999a6db7aa
[INFO] running `Command { std: "docker" "start" "-a" "c3e4ae300a85d4e28b62642d282f6bd3183354bcb841638fb9225a999a6db7aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c3e4ae300a85d4e28b62642d282f6bd3183354bcb841638fb9225a999a6db7aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3e4ae300a85d4e28b62642d282f6bd3183354bcb841638fb9225a999a6db7aa", kill_on_drop: false }`
[INFO] [stdout] c3e4ae300a85d4e28b62642d282f6bd3183354bcb841638fb9225a999a6db7aa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+9e293ae9f8abecb0be5105787d181518c9012a19" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7ec3809e6b8e0c8191d0f949260d0b3c50378d28888645ef423821d6d0b2c1aa
[INFO] running `Command { std: "docker" "start" "-a" "7ec3809e6b8e0c8191d0f949260d0b3c50378d28888645ef423821d6d0b2c1aa", kill_on_drop: false }`
[INFO] [stderr]     Checking INTERPRETER_Rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::any`
[INFO] [stdout]  --> src/parser.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::any;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `PrefixParseFn` is never used
[INFO] [stdout]  --> src/parser.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type PrefixParseFn = fn(parser:&mut Parser) -> Option<ExpressionNode>;
[INFO] [stdout]   |      ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InfixParseFn` is never used
[INFO] [stdout]   --> src/parser.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | type InfixParseFn = fn(parser:&mut Parser, exp: ExpressionNode) -> Option<ExpressionNode>;
[INFO] [stdout]    |      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PrecedenceLevel` is never used
[INFO] [stdout]   --> src/parser.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum PrecedenceLevel{
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `precedence_map` is never used
[INFO] [stdout]   --> src/parser.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn precedence_map(kind:&TokenKind) -> PrecedenceLevel{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parser` is never constructed
[INFO] [stdout]   --> src/parser.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | struct Parser{
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/parser.rs:48:8
[INFO] [stdout]     |
[INFO] [stdout]  47 | impl Parser{
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  48 |     fn new(lexer: Lexer) -> Self{
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     fn parse_identifier(&mut self) -> Option<ExpressionNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     fn parse_integer_literal(&mut self)-> Option<ExpressionNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     fn parse_prefix_expression(&mut self) -> Option<ExpressionNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn parse_infix_expression(&mut self, left: ExpressionNode) -> Option<ExpressionNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     fn parse_boolean(&mut self) -> Option<ExpressionNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     fn parse_grouped_expression(&mut self) -> Option<ExpressionNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn next_token(&mut self){
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn parse_program(&mut self) -> Option<Program>{
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     fn parse_statement(&mut self) -> Option<StatementNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     fn parse_expression_statement(&mut self) -> Option<StatementNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     fn parse_expression(&mut self, precedence: PrecedenceLevel) -> Option<ExpressionNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     fn no_prefix_error(&mut self, kind: TokenKind){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     fn parse_let_statement(&mut self) -> Option<StatementNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 257 |     fn parse_return_statement(&mut self) -> Option<StatementNode>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 273 |     fn expect_peek(&mut self, kind: TokenKind) -> bool{
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |     fn errors(&self) -> &Vec<String>{
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn peek_error(&mut self, expected: TokenKind){
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     fn register_prefix(&mut self, token_kind: TokenKind, prefix_fn: PrefixParseFn){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 |     fn register_infix(&mut self, token_kind: TokenKind, infix_fn: InfixParseFn){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |     fn peek_precedence(&self) -> PrecedenceLevel{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 |     fn current_precedence(&self) -> PrecedenceLevel{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Call` is never constructed
[INFO] [stdout]   --> src/parser.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum PrecedenceLevel{
[INFO] [stdout]    |      --------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 20 |     Call            = 6,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PrecedenceLevel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `peek_error` is never used
[INFO] [stdout]    --> src/parser.rs:287:8
[INFO] [stdout]     |
[INFO] [stdout]  47 | impl Parser{
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn peek_error(&mut self, expected: TokenKind){
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.29s
[INFO] running `Command { std: "docker" "inspect" "7ec3809e6b8e0c8191d0f949260d0b3c50378d28888645ef423821d6d0b2c1aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7ec3809e6b8e0c8191d0f949260d0b3c50378d28888645ef423821d6d0b2c1aa", kill_on_drop: false }`
[INFO] [stdout] 7ec3809e6b8e0c8191d0f949260d0b3c50378d28888645ef423821d6d0b2c1aa
