[INFO] cloning repository https://github.com/AndyBarnard/lox_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/AndyBarnard/lox_interpreter_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndyBarnard%2Flox_interpreter_rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndyBarnard%2Flox_interpreter_rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4904f4f3cef18f08c7d0504749bfb1f840c93103
[INFO] checking AndyBarnard/lox_interpreter_rust against master#36b21637e93b038453924d3c66821089e71d8baa for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndyBarnard%2Flox_interpreter_rust" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AndyBarnard/lox_interpreter_rust
[INFO] finished tweaking git repo https://github.com/AndyBarnard/lox_interpreter_rust
[INFO] tweaked toml for git repo https://github.com/AndyBarnard/lox_interpreter_rust written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AndyBarnard/lox_interpreter_rust on toolchain 36b21637e93b038453924d3c66821089e71d8baa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AndyBarnard/lox_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" "+36b21637e93b038453924d3c66821089e71d8baa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded clap_derive v3.2.18
[INFO] [stderr]   Downloaded once_cell v1.14.0
[INFO] [stderr]   Downloaded os_str_bytes v6.3.0
[INFO] [stderr]   Downloaded clap v3.2.20
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ec6ef5208a16a7bd2cfb9aaa5fb6766b700d644b3ed267b2f8462bd31667e9d1
[INFO] running `Command { std: "docker" "start" "-a" "ec6ef5208a16a7bd2cfb9aaa5fb6766b700d644b3ed267b2f8462bd31667e9d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ec6ef5208a16a7bd2cfb9aaa5fb6766b700d644b3ed267b2f8462bd31667e9d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ec6ef5208a16a7bd2cfb9aaa5fb6766b700d644b3ed267b2f8462bd31667e9d1", kill_on_drop: false }`
[INFO] [stdout] ec6ef5208a16a7bd2cfb9aaa5fb6766b700d644b3ed267b2f8462bd31667e9d1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 80128de3b2480b4d6d144fb90e230d82e0269e50f913dfb94de9d3441ee40a8f
[INFO] running `Command { std: "docker" "start" "-a" "80128de3b2480b4d6d144fb90e230d82e0269e50f913dfb94de9d3441ee40a8f", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.43
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling unicode-ident v1.0.3
[INFO] [stderr]    Compiling syn v1.0.99
[INFO] [stderr]    Compiling libc v0.2.132
[INFO] [stderr]    Compiling indexmap v1.9.1
[INFO] [stderr]    Compiling anyhow v1.0.65
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking os_str_bytes v6.3.0
[INFO] [stderr]     Checking once_cell v1.14.0
[INFO] [stderr]     Checking textwrap v0.15.0
[INFO] [stderr]     Checking termcolor v1.1.3
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling clap_derive v3.2.18
[INFO] [stderr]     Checking clap v3.2.20
[INFO] [stderr]     Checking lox_interpreter_rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io::stdin`
[INFO] [stdout]  --> src/lox.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::stdin;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::stdin`
[INFO] [stdout]  --> src/lox.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::stdin;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lox.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut buffer = String::new();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/lox.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let expression = parser.parse();
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lox` is never read
[INFO] [stdout]   --> src/scanner.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub struct Scanner<'a> {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     lox: Lox,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]   --> src/token.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'a> Token<'a> {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn to_string(&self) -> String {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/parser.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |             self.consume(&TokenType::RightParen, "Expected ')' after expression");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let _ = self.consume(&TokenType::RightParen, "Expected ')' after expression");
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/parser.rs:135:17
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 self.advance();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 let _ = self.advance();
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lox.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut buffer = String::new();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/lox.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let expression = parser.parse();
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lox` is never read
[INFO] [stdout]   --> src/scanner.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub struct Scanner<'a> {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     lox: Lox,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]   --> src/token.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'a> Token<'a> {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn to_string(&self) -> String {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/parser.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |             self.consume(&TokenType::RightParen, "Expected ')' after expression");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let _ = self.consume(&TokenType::RightParen, "Expected ')' after expression");
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/parser.rs:135:17
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 self.advance();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 let _ = self.advance();
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.42s
[INFO] running `Command { std: "docker" "inspect" "80128de3b2480b4d6d144fb90e230d82e0269e50f913dfb94de9d3441ee40a8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "80128de3b2480b4d6d144fb90e230d82e0269e50f913dfb94de9d3441ee40a8f", kill_on_drop: false }`
[INFO] [stdout] 80128de3b2480b4d6d144fb90e230d82e0269e50f913dfb94de9d3441ee40a8f
