[INFO] cloning repository https://github.com/saegus4/lox [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/saegus4/lox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsaegus4%2Flox", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsaegus4%2Flox'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2e13601f9a064f6b6e3c824a293abefd2c483a8e [INFO] testing saegus4/lox against try#7af779037716ae4125ceabb429791b4cf5dd0a43 for pr-136932 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsaegus4%2Flox" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/saegus4/lox on toolchain 7af779037716ae4125ceabb429791b4cf5dd0a43 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7af779037716ae4125ceabb429791b4cf5dd0a43" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/saegus4/lox [INFO] finished tweaking git repo https://github.com/saegus4/lox [INFO] tweaked toml for git repo https://github.com/saegus4/lox written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/saegus4/lox 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" "+7af779037716ae4125ceabb429791b4cf5dd0a43" "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-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+7af779037716ae4125ceabb429791b4cf5dd0a43" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ea330631170d6a9942e5a10a57e1454e75e98b343ad6d20bef509321d08d86af [INFO] running `Command { std: "docker" "start" "-a" "ea330631170d6a9942e5a10a57e1454e75e98b343ad6d20bef509321d08d86af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ea330631170d6a9942e5a10a57e1454e75e98b343ad6d20bef509321d08d86af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ea330631170d6a9942e5a10a57e1454e75e98b343ad6d20bef509321d08d86af", kill_on_drop: false }` [INFO] [stdout] ea330631170d6a9942e5a10a57e1454e75e98b343ad6d20bef509321d08d86af [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+7af779037716ae4125ceabb429791b4cf5dd0a43" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 347590ccd75741744b040a8e12c9283a6faa6ab2efdc13297de918bb10154203 [INFO] running `Command { std: "docker" "start" "-a" "347590ccd75741744b040a8e12c9283a6faa6ab2efdc13297de918bb10154203", kill_on_drop: false }` [INFO] [stderr] Compiling jlox v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: variant `LEFT_PAREN` should have an upper camel case name [INFO] [stdout] --> src/token_type.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | LEFT_PAREN, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftParen` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RIGHT_PAREN` should have an upper camel case name [INFO] [stdout] --> src/token_type.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | RIGHT_PAREN, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightParen` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LEFT_BRACE` should have an upper camel case name [INFO] [stdout] --> src/token_type.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | LEFT_BRACE, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftBrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RIGHT_BRACE` should have an upper camel case name [INFO] [stdout] --> src/token_type.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | RIGHT_BRACE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightBrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `BANG_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token_type.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | BANG_EQUAL, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `BangEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EQUAL_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token_type.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | EQUAL_EQUAL, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `EqualEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `GREATER_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token_type.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | GREATER_EQUAL, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GreaterEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LESS_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token_type.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | LESS_EQUAL, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `LessEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] 38 | ")" => self.add_token(TokenType::LEFT_PAREN), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 38 - ")" => self.add_token(TokenType::LEFT_PAREN), [INFO] [stdout] 38 + ')' => self.add_token(TokenType::LEFT_PAREN), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] 38 | ")" => self.add_token(TokenType::LEFT_PAREN), [INFO] [stdout] 39 | "(" => self.add_token(TokenType::RIGHT_PAREN), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 39 - "(" => self.add_token(TokenType::RIGHT_PAREN), [INFO] [stdout] 39 + '(' => self.add_token(TokenType::RIGHT_PAREN), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] ... [INFO] [stdout] 40 | "{" => self.add_token(TokenType::LEFT_BRACE), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 40 - "{" => self.add_token(TokenType::LEFT_BRACE), [INFO] [stdout] 40 + '{' => self.add_token(TokenType::LEFT_BRACE), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] ... [INFO] [stdout] 41 | "}" => self.add_token(TokenType::RIGHT_BRACE), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 41 - "}" => self.add_token(TokenType::RIGHT_BRACE), [INFO] [stdout] 41 + '}' => self.add_token(TokenType::RIGHT_BRACE), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:42:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] ... [INFO] [stdout] 42 | "," => self.add_token(TokenType::COMMA), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 42 - "," => self.add_token(TokenType::COMMA), [INFO] [stdout] 42 + ',' => self.add_token(TokenType::COMMA), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] ... [INFO] [stdout] 43 | "." => self.add_token(TokenType::DOT), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 43 - "." => self.add_token(TokenType::DOT), [INFO] [stdout] 43 + '.' => self.add_token(TokenType::DOT), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] ... [INFO] [stdout] 44 | "+" => self.add_token(TokenType::PLUS), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 44 - "+" => self.add_token(TokenType::PLUS), [INFO] [stdout] 44 + '+' => self.add_token(TokenType::PLUS), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] ... [INFO] [stdout] 45 | ";" => self.add_token(TokenType::SEMICOLON), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 45 - ";" => self.add_token(TokenType::SEMICOLON), [INFO] [stdout] 45 + ';' => self.add_token(TokenType::SEMICOLON), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 37 | match advance { [INFO] [stdout] | ------- this expression has type `char` [INFO] [stdout] ... [INFO] [stdout] 46 | "*" => self.add_token(TokenType::STAR), [INFO] [stdout] | ^^^ expected `char`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: if you meant to write a `char` literal, use single quotes [INFO] [stdout] | [INFO] [stdout] 46 - "*" => self.add_token(TokenType::STAR), [INFO] [stdout] 46 + '*' => self.add_token(TokenType::STAR), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/scanner.rs:38:20 [INFO] [stdout] | [INFO] [stdout] 34 | fn scan_token(&mut self) -> Vec { [INFO] [stdout] | ---------- expected `Vec>` because of return type [INFO] [stdout] ... [INFO] [stdout] 38 | ")" => self.add_token(TokenType::LEFT_PAREN), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Vec>`, found `()` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Vec>` [INFO] [stdout] found unit type `()` [INFO] [stdout] note: method `add_token` modifies its receiver in-place [INFO] [stdout] --> src/scanner.rs:38:25 [INFO] [stdout] | [INFO] [stdout] 38 | ")" => self.add_token(TokenType::LEFT_PAREN), [INFO] [stdout] | ^^^^^^^^^ this call modifies `self` in-place [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `contents` [INFO] [stdout] --> src/main.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | let contents = fs::read_to_string(file); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contents` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `had_error` is assigned to, but never used [INFO] [stdout] --> src/main.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let mut had_error = false; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_had_error` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `had_error` is never read [INFO] [stdout] --> src/main.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | had_error = false; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/main.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | fn run(source: &str) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `jlox` (bin "jlox") due to 10 previous errors; 12 warnings emitted [INFO] running `Command { std: "docker" "inspect" "347590ccd75741744b040a8e12c9283a6faa6ab2efdc13297de918bb10154203", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "347590ccd75741744b040a8e12c9283a6faa6ab2efdc13297de918bb10154203", kill_on_drop: false }` [INFO] [stdout] 347590ccd75741744b040a8e12c9283a6faa6ab2efdc13297de918bb10154203