[INFO] cloning repository https://github.com/ronen25/rlox [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ronen25/rlox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fronen25%2Frlox", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fronen25%2Frlox'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] da6182ea09aa0d1736769c3b27f08bee7e4cc1f8 [INFO] checking ronen25/rlox against try#998b6603a58e47f42ccce7a67943234e96b6839e for pr-143170 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fronen25%2Frlox" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/ronen25/rlox [INFO] finished tweaking git repo https://github.com/ronen25/rlox [INFO] tweaked toml for git repo https://github.com/ronen25/rlox written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ronen25/rlox on toolchain 998b6603a58e47f42ccce7a67943234e96b6839e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ronen25/rlox 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" "+998b6603a58e47f42ccce7a67943234e96b6839e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 36ae704ea9544dade18566b4ee36ad798affa6ca6072c32fecb1481b9d7e4838 [INFO] running `Command { std: "docker" "start" "-a" "36ae704ea9544dade18566b4ee36ad798affa6ca6072c32fecb1481b9d7e4838", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "36ae704ea9544dade18566b4ee36ad798affa6ca6072c32fecb1481b9d7e4838", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "36ae704ea9544dade18566b4ee36ad798affa6ca6072c32fecb1481b9d7e4838", kill_on_drop: false }` [INFO] [stdout] 36ae704ea9544dade18566b4ee36ad798affa6ca6072c32fecb1481b9d7e4838 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3dc362eddfe0cd711cde8211a7bf1fd62f5c2338fa9d0c4a2dd7a501a9da26c6 [INFO] running `Command { std: "docker" "start" "-a" "3dc362eddfe0cd711cde8211a7bf1fd62f5c2338fa9d0c4a2dd7a501a9da26c6", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling syn v2.0.67 [INFO] [stderr] Compiling thiserror-impl v1.0.61 [INFO] [stderr] Checking thiserror v1.0.61 [INFO] [stderr] Checking rlox v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/compiler.rs:4:45 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::scanner::{Scanner, ScannerError, Token}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/compiler.rs:4:45 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::scanner::{Scanner, ScannerError, Token}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0621]: explicit lifetime required in the type of `source` [INFO] [stdout] --> src/vm.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'a` required [INFO] [stdout] | [INFO] [stdout] help: add explicit lifetime `'a` to the type of `source` [INFO] [stdout] | [INFO] [stdout] 44 | pub fn interpret(&mut self, source: &'a str) -> Result<(), InterpretError> { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0621]: explicit lifetime required in the type of `source` [INFO] [stdout] --> src/vm.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'a` required [INFO] [stdout] | [INFO] [stdout] help: add explicit lifetime `'a` to the type of `source` [INFO] [stdout] | [INFO] [stdout] 44 | pub fn interpret(&mut self, source: &'a str) -> Result<(), InterpretError> { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `chunk` does not live long enough [INFO] [stdout] --> src/vm.rs:46:39 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 45 | let mut chunk = Chunk::new(None); [INFO] [stdout] | --------- binding `chunk` declared here [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ------------------------------^^^^^^^^^^- [INFO] [stdout] | | | [INFO] [stdout] | | borrowed value does not live long enough [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 106 | } [INFO] [stdout] | - `chunk` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `chunk` does not live long enough [INFO] [stdout] --> src/vm.rs:46:39 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 45 | let mut chunk = Chunk::new(None); [INFO] [stdout] | --------- binding `chunk` declared here [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ------------------------------^^^^^^^^^^- [INFO] [stdout] | | | [INFO] [stdout] | | borrowed value does not live long enough [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 106 | } [INFO] [stdout] | - `chunk` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `chunk` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/vm.rs:49:36 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ----------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | mutable borrow occurs here [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 49 | let instruction_byte = chunk.get_code(self.ip).unwrap(); [INFO] [stdout] | ^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `chunk` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/vm.rs:59:21 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ----------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | mutable borrow occurs here [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 59 | chunk.disassemble_instruction(self.ip).unwrap(); [INFO] [stdout] | ^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `chunk` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/vm.rs:72:47 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ----------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | mutable borrow occurs here [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 72 | let constant_index = *chunk.get_code(self.ip).unwrap(); [INFO] [stdout] | ^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `chunk` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/vm.rs:73:47 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ----------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | mutable borrow occurs here [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 73 | let constant_value = *chunk.get_constant(constant_index as usize).unwrap(); [INFO] [stdout] | ^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `line` [INFO] [stdout] --> src/compiler.rs:27:17 [INFO] [stdout] | [INFO] [stdout] 27 | let mut line = 1usize; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_line` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/compiler.rs:26:27 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn compile(&self, source: &'a str, chunk: &'a mut Chunk) -> Result<(), CompileError> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chunk` [INFO] [stdout] --> src/compiler.rs:26:44 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn compile(&self, source: &'a str, chunk: &'a mut Chunk) -> Result<(), CompileError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_chunk` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/compiler.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut line = 1usize; [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] error[E0502]: cannot borrow `chunk` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/vm.rs:49:36 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ----------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | mutable borrow occurs here [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 49 | let instruction_byte = chunk.get_code(self.ip).unwrap(); [INFO] [stdout] | ^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `chunk` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/vm.rs:59:21 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ----------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | mutable borrow occurs here [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 59 | chunk.disassemble_instruction(self.ip).unwrap(); [INFO] [stdout] | ^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `chunk` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/vm.rs:72:47 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ----------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | mutable borrow occurs here [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 72 | let constant_index = *chunk.get_code(self.ip).unwrap(); [INFO] [stdout] | ^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `chunk` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/vm.rs:73:47 [INFO] [stdout] | [INFO] [stdout] 33 | impl<'a, 'outlives_a: 'a> VM<'a> { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 46 | self.compiler.compile(source, &mut chunk)?; [INFO] [stdout] | ----------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | mutable borrow occurs here [INFO] [stdout] | argument requires that `chunk` is borrowed for `'a` [INFO] [stdout] ... [INFO] [stdout] 73 | let constant_value = *chunk.get_constant(constant_index as usize).unwrap(); [INFO] [stdout] | ^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `line` [INFO] [stdout] --> src/compiler.rs:27:17 [INFO] [stdout] | [INFO] [stdout] 27 | let mut line = 1usize; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_line` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/compiler.rs:26:27 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn compile(&self, source: &'a str, chunk: &'a mut Chunk) -> Result<(), CompileError> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chunk` [INFO] [stdout] --> src/compiler.rs:26:44 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn compile(&self, source: &'a str, chunk: &'a mut Chunk) -> Result<(), CompileError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_chunk` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/compiler.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut line = 1usize; [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: `vm` [INFO] [stdout] --> src/main.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut vm = VM::new(&buffer); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_vm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vm` [INFO] [stdout] --> src/main.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut vm = VM::new(&buffer); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_vm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut vm = VM::new(&buffer); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0502, E0597, E0621. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0502`. [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut vm = VM::new(&buffer); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0502, E0597, E0621. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0502`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rlox` (bin "rlox") due to 6 previous errors; 7 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `rlox` (bin "rlox" test) due to 6 previous errors; 7 warnings emitted [INFO] running `Command { std: "docker" "inspect" "3dc362eddfe0cd711cde8211a7bf1fd62f5c2338fa9d0c4a2dd7a501a9da26c6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3dc362eddfe0cd711cde8211a7bf1fd62f5c2338fa9d0c4a2dd7a501a9da26c6", kill_on_drop: false }` [INFO] [stdout] 3dc362eddfe0cd711cde8211a7bf1fd62f5c2338fa9d0c4a2dd7a501a9da26c6