[INFO] cloning repository https://github.com/arashout/craftinginterperter
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/arashout/craftinginterperter" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farashout%2Fcraftinginterperter", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farashout%2Fcraftinginterperter'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e58c8ee40d4289d943954ca6ba33f833d75f47dd
[INFO] checking arashout/craftinginterperter against try#df1b9bf194c9183fb7c0604484171064069ce232 for pr-149195-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farashout%2Fcraftinginterperter" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/arashout/craftinginterperter
[INFO] finished tweaking git repo https://github.com/arashout/craftinginterperter
[INFO] tweaked toml for git repo https://github.com/arashout/craftinginterperter written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/arashout/craftinginterperter on toolchain df1b9bf194c9183fb7c0604484171064069ce232
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+df1b9bf194c9183fb7c0604484171064069ce232" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/arashout/craftinginterperter 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" "+df1b9bf194c9183fb7c0604484171064069ce232" "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] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded strum v0.17.1
[INFO] [stderr]   Downloaded strum_macros v0.17.1
[INFO] [stderr]   Downloaded proc-macro2 v1.0.8
[INFO] [stderr]   Downloaded syn v1.0.14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:29356a839a4d14451438f794ce8414e707d72405f44418718d724d22562fe786" "/opt/rustwide/cargo-home/bin/cargo" "+df1b9bf194c9183fb7c0604484171064069ce232" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 279ea2f0223e0f2b87a6b2e4bf49dbe9c094f7358bd7233d5d414c814ee6749a
[INFO] running `Command { std: "docker" "start" "-a" "279ea2f0223e0f2b87a6b2e4bf49dbe9c094f7358bd7233d5d414c814ee6749a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "279ea2f0223e0f2b87a6b2e4bf49dbe9c094f7358bd7233d5d414c814ee6749a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "279ea2f0223e0f2b87a6b2e4bf49dbe9c094f7358bd7233d5d414c814ee6749a", kill_on_drop: false }`
[INFO] [stdout] 279ea2f0223e0f2b87a6b2e4bf49dbe9c094f7358bd7233d5d414c814ee6749a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:29356a839a4d14451438f794ce8414e707d72405f44418718d724d22562fe786" "/opt/rustwide/cargo-home/bin/cargo" "+df1b9bf194c9183fb7c0604484171064069ce232" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c35283de487558719e9da4b8b43e0f9291daa2a475d5b1f4b428c68662e5a1b3
[INFO] running `Command { std: "docker" "start" "-a" "c35283de487558719e9da4b8b43e0f9291daa2a475d5b1f4b428c68662e5a1b3", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.8
[INFO] [stderr]    Compiling syn v1.0.14
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]     Checking strum v0.17.1
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]    Compiling strum_macros v0.17.1
[INFO] [stderr]     Checking craft_interpreter v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/parser.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 |         if (!self.is_at_end()) {
[INFO] [stdout]     |            ^                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 110 -         if (!self.is_at_end()) {
[INFO] [stdout] 110 +         if !self.is_at_end()  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parser` is never constructed
[INFO] [stdout]  --> src/parser.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Parser {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/parser.rs:11:12
[INFO] [stdout]     |
[INFO] [stdout]  10 | impl Parser {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  11 |     pub fn new(tokens: Vec<TokenWrapper>) -> Parser {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  15 |     fn expression(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  19 |     fn equality(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |     fn comparison(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     fn addition(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn multiplication(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  75 |     fn unary(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     fn primary(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn check(&self, needle: &Token) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn advance(&mut self) -> &Token {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     fn is_at_end(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     fn peek(&self) -> &Token {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn previous(&self) -> &TokenWrapper {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `line` is never read
[INFO] [stdout]   --> src/token.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct LocationInfo {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 31 |     // Which line the token was seen
[INFO] [stdout] 32 |     pub line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LocationInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `location_info` is never read
[INFO] [stdout]   --> src/token.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct TokenWrapper {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 37 |     pub location_info: LocationInfo,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenWrapper` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/parser.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 |         if (!self.is_at_end()) {
[INFO] [stdout]     |            ^                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 110 -         if (!self.is_at_end()) {
[INFO] [stdout] 110 +         if !self.is_at_end()  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `discriminant` is never used
[INFO] [stdout]   --> src/scanner.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl ScannerError {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 21 |     fn discriminant(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Operator` is never used
[INFO] [stdout]  --> src/ast.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Operator {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Primitive` is never used
[INFO] [stdout]   --> src/ast.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub enum Primitive {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Expr` is never used
[INFO] [stdout]    --> src/ast.rs:100:10
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub enum Expr {
[INFO] [stdout]     |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parser` is never constructed
[INFO] [stdout]  --> src/parser.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Parser {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/parser.rs:11:12
[INFO] [stdout]     |
[INFO] [stdout]  10 | impl Parser {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  11 |     pub fn new(tokens: Vec<TokenWrapper>) -> Parser {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  15 |     fn expression(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  19 |     fn equality(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |     fn comparison(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     fn addition(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn multiplication(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  75 |     fn unary(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     fn primary(&mut self) -> Expr {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn check(&self, needle: &Token) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn advance(&mut self) -> &Token {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     fn is_at_end(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     fn peek(&self) -> &Token {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn previous(&self) -> &TokenWrapper {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rpn` is never used
[INFO] [stdout]  --> src/rpn.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn rpn(expr: &Expr) -> String {
[INFO] [stdout]   |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `line` is never read
[INFO] [stdout]   --> src/token.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct LocationInfo {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 31 |     // Which line the token was seen
[INFO] [stdout] 32 |     pub line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LocationInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `location_info` is never read
[INFO] [stdout]   --> src/token.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct TokenWrapper {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 37 |     pub location_info: LocationInfo,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenWrapper` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `join_vec_debug` is never used
[INFO] [stdout]  --> src/utils.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn join_vec_debug<T: Debug>(vec: &Vec<T>) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `s` is never used
[INFO] [stdout]   --> src/utils.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn s(_s: &'static str) -> String {
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.22s
[INFO] running `Command { std: "docker" "inspect" "c35283de487558719e9da4b8b43e0f9291daa2a475d5b1f4b428c68662e5a1b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c35283de487558719e9da4b8b43e0f9291daa2a475d5b1f4b428c68662e5a1b3", kill_on_drop: false }`
[INFO] [stdout] c35283de487558719e9da4b8b43e0f9291daa2a475d5b1f4b428c68662e5a1b3
