[INFO] cloning repository https://github.com/codec-abc/synacor-challenge-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/codec-abc/synacor-challenge-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcodec-abc%2Fsynacor-challenge-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcodec-abc%2Fsynacor-challenge-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8106355e9b1dc3a97f41e0c79ff83a12e31d792e [INFO] checking codec-abc/synacor-challenge-rust against master#2e6fc425411280c658d852813de01c5157255088 for pr-128013 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcodec-abc%2Fsynacor-challenge-rust" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/codec-abc/synacor-challenge-rust on toolchain 2e6fc425411280c658d852813de01c5157255088 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2e6fc425411280c658d852813de01c5157255088" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/codec-abc/synacor-challenge-rust [INFO] finished tweaking git repo https://github.com/codec-abc/synacor-challenge-rust [INFO] tweaked toml for git repo https://github.com/codec-abc/synacor-challenge-rust written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/codec-abc/synacor-challenge-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" "+2e6fc425411280c658d852813de01c5157255088" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded chrono v0.4.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+2e6fc425411280c658d852813de01c5157255088" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ba96fa0bee7e1779b3b172c4d6964951866cec0da72712d39642842f6b5aa3bb [INFO] running `Command { std: "docker" "start" "-a" "ba96fa0bee7e1779b3b172c4d6964951866cec0da72712d39642842f6b5aa3bb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ba96fa0bee7e1779b3b172c4d6964951866cec0da72712d39642842f6b5aa3bb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ba96fa0bee7e1779b3b172c4d6964951866cec0da72712d39642842f6b5aa3bb", kill_on_drop: false }` [INFO] [stdout] ba96fa0bee7e1779b3b172c4d6964951866cec0da72712d39642842f6b5aa3bb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+2e6fc425411280c658d852813de01c5157255088" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 510fb0083b9170d0a790e654461b8fe0b069a216747e69b26a1d1f78849b9b2b [INFO] running `Command { std: "docker" "start" "-a" "510fb0083b9170d0a790e654461b8fe0b069a216747e69b26a1d1f78849b9b2b", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Checking num-traits v0.2.0 [INFO] [stderr] Checking libc v0.2.36 [INFO] [stderr] Checking byteorder v1.2.1 [INFO] [stderr] Checking time v0.1.39 [INFO] [stderr] Checking num-integer v0.1.36 [INFO] [stderr] Checking num-iter v0.1.35 [INFO] [stderr] Checking num v0.1.42 [INFO] [stderr] Checking chrono v0.4.0 [INFO] [stderr] Checking synacor_challenge v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:231:51 [INFO] [stdout] | [INFO] [stdout] 231 | let register_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 231 - let register_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] 231 + let register_result = read_mem_as_u16_le(mem, offset + 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:232:48 [INFO] [stdout] | [INFO] [stdout] 232 | let value_result = read_mem_as_u16_le(mem, (offset + 2)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 232 - let value_result = read_mem_as_u16_le(mem, (offset + 2)); [INFO] [stdout] 232 + let value_result = read_mem_as_u16_le(mem, offset + 2); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:256:48 [INFO] [stdout] | [INFO] [stdout] 256 | let value_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 256 - let value_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] 256 + let value_result = read_mem_as_u16_le(mem, offset + 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:275:48 [INFO] [stdout] | [INFO] [stdout] 275 | let value_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 275 - let value_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] 275 + let value_result = read_mem_as_u16_le(mem, offset + 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:294:47 [INFO] [stdout] | [INFO] [stdout] 294 | let cell_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 294 - let cell_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] 294 + let cell_result = read_mem_as_u16_le(mem, offset + 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:295:56 [INFO] [stdout] | [INFO] [stdout] 295 | let first_operand_result = read_mem_as_u16_le(mem, (offset + 2)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 295 - let first_operand_result = read_mem_as_u16_le(mem, (offset + 2)); [INFO] [stdout] 295 + let first_operand_result = read_mem_as_u16_le(mem, offset + 2); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:296:57 [INFO] [stdout] | [INFO] [stdout] 296 | let second_operand_result = read_mem_as_u16_le(mem, (offset + 3)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 296 - let second_operand_result = read_mem_as_u16_le(mem, (offset + 3)); [INFO] [stdout] 296 + let second_operand_result = read_mem_as_u16_le(mem, offset + 3); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:231:51 [INFO] [stdout] | [INFO] [stdout] 231 | let register_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 231 - let register_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] 231 + let register_result = read_mem_as_u16_le(mem, offset + 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:232:48 [INFO] [stdout] | [INFO] [stdout] 232 | let value_result = read_mem_as_u16_le(mem, (offset + 2)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 232 - let value_result = read_mem_as_u16_le(mem, (offset + 2)); [INFO] [stdout] 232 + let value_result = read_mem_as_u16_le(mem, offset + 2); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:256:48 [INFO] [stdout] | [INFO] [stdout] 256 | let value_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 256 - let value_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] 256 + let value_result = read_mem_as_u16_le(mem, offset + 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:275:48 [INFO] [stdout] | [INFO] [stdout] 275 | let value_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 275 - let value_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] 275 + let value_result = read_mem_as_u16_le(mem, offset + 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:294:47 [INFO] [stdout] | [INFO] [stdout] 294 | let cell_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 294 - let cell_result = read_mem_as_u16_le(mem, (offset + 1)); [INFO] [stdout] 294 + let cell_result = read_mem_as_u16_le(mem, offset + 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:295:56 [INFO] [stdout] | [INFO] [stdout] 295 | let first_operand_result = read_mem_as_u16_le(mem, (offset + 2)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 295 - let first_operand_result = read_mem_as_u16_le(mem, (offset + 2)); [INFO] [stdout] 295 + let first_operand_result = read_mem_as_u16_le(mem, offset + 2); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/opcode.rs:296:57 [INFO] [stdout] | [INFO] [stdout] 296 | let second_operand_result = read_mem_as_u16_le(mem, (offset + 3)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 296 - let second_operand_result = read_mem_as_u16_le(mem, (offset + 3)); [INFO] [stdout] 296 + let second_operand_result = read_mem_as_u16_le(mem, offset + 3); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:626:25 [INFO] [stdout] | [INFO] [stdout] 626 | let mut f = File::create(dir.clone() + "registers.txt"); [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: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:640:25 [INFO] [stdout] | [INFO] [stdout] 640 | let mut f = File::create(dir.clone() + "stack.txt"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:654:25 [INFO] [stdout] | [INFO] [stdout] 654 | let mut f = File::create(dir.clone() + "program_counter.txt"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:665:25 [INFO] [stdout] | [INFO] [stdout] 665 | let mut f = File::create(dir.clone() + "step_number.txt"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:676:25 [INFO] [stdout] | [INFO] [stdout] 676 | let mut f = File::create(dir.clone() + "memory.txt"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:27:25 [INFO] [stdout] | [INFO] [stdout] 27 | let mut should_continue = true; [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/vm.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | OpCodeParseFailure(opcode::ReadOpCodeFailure), [INFO] [stdout] | ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `RunFailure` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 25 | OpCodeParseFailure(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:626:25 [INFO] [stdout] | [INFO] [stdout] 626 | let mut f = File::create(dir.clone() + "registers.txt"); [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: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:640:25 [INFO] [stdout] | [INFO] [stdout] 640 | let mut f = File::create(dir.clone() + "stack.txt"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:654:25 [INFO] [stdout] | [INFO] [stdout] 654 | let mut f = File::create(dir.clone() + "program_counter.txt"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:665:25 [INFO] [stdout] | [INFO] [stdout] 665 | let mut f = File::create(dir.clone() + "step_number.txt"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:676:25 [INFO] [stdout] | [INFO] [stdout] 676 | let mut f = File::create(dir.clone() + "memory.txt"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:27:25 [INFO] [stdout] | [INFO] [stdout] 27 | let mut should_continue = true; [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/vm.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | OpCodeParseFailure(opcode::ReadOpCodeFailure), [INFO] [stdout] | ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `RunFailure` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 25 | OpCodeParseFailure(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.22s [INFO] running `Command { std: "docker" "inspect" "510fb0083b9170d0a790e654461b8fe0b069a216747e69b26a1d1f78849b9b2b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "510fb0083b9170d0a790e654461b8fe0b069a216747e69b26a1d1f78849b9b2b", kill_on_drop: false }` [INFO] [stdout] 510fb0083b9170d0a790e654461b8fe0b069a216747e69b26a1d1f78849b9b2b