[INFO] cloning repository https://github.com/robertprp/aoc2024
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/robertprp/aoc2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frobertprp%2Faoc2024", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frobertprp%2Faoc2024'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8bd7274bad149b45caf6e76fe227a47e59569191
[INFO] checking robertprp/aoc2024 against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145342
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frobertprp%2Faoc2024" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/robertprp/aoc2024
[INFO] finished tweaking git repo https://github.com/robertprp/aoc2024
[INFO] tweaked toml for git repo https://github.com/robertprp/aoc2024 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/robertprp/aoc2024 on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/robertprp/aoc2024 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" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 778c98966b740cb89d09822ffcf49a2e8436644d6716c182a40ebcb25b7cd7a9
[INFO] running `Command { std: "docker" "start" "-a" "778c98966b740cb89d09822ffcf49a2e8436644d6716c182a40ebcb25b7cd7a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "778c98966b740cb89d09822ffcf49a2e8436644d6716c182a40ebcb25b7cd7a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "778c98966b740cb89d09822ffcf49a2e8436644d6716c182a40ebcb25b7cd7a9", kill_on_drop: false }`
[INFO] [stdout] 778c98966b740cb89d09822ffcf49a2e8436644d6716c182a40ebcb25b7cd7a9
[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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e27e77d7f15a9a4ae61ba201d3ff5a4eeeba68c46ccf21a7fda8516b2029b7b7
[INFO] running `Command { std: "docker" "start" "-a" "e27e77d7f15a9a4ae61ba201d3ff5a4eeeba68c46ccf21a7fda8516b2029b7b7", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling thiserror v2.0.3
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]    Compiling libc v0.2.167
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking pin-project-lite v0.2.15
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking bytes v1.9.0
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]     Checking socket2 v0.5.8
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling thiserror-impl v2.0.3
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking tokio v1.42.0
[INFO] [stderr]     Checking lib v0.1.0 (/opt/rustwide/workdir/lib)
[INFO] [stderr]     Checking day4 v0.1.0 (/opt/rustwide/workdir/day4)
[INFO] [stderr]     Checking day1 v0.1.0 (/opt/rustwide/workdir/day1)
[INFO] [stderr]     Checking day6 v0.1.0 (/opt/rustwide/workdir/day6)
[INFO] [stderr]     Checking day3 v0.1.0 (/opt/rustwide/workdir/day3)
[INFO] [stderr]     Checking day10 v0.1.0 (/opt/rustwide/workdir/day10)
[INFO] [stderr]     Checking day12 v0.1.0 (/opt/rustwide/workdir/day12)
[INFO] [stderr]     Checking day19 v0.1.0 (/opt/rustwide/workdir/day19)
[INFO] [stderr]     Checking day5 v0.1.0 (/opt/rustwide/workdir/day5)
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]  --> day12/src/main.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, str::FromStr};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> day5/src/main.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |         if (text.contains("|")) {
[INFO] [stdout]    |            ^                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 58 -         if (text.contains("|")) {
[INFO] [stdout] 58 +         if text.contains("|") {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]  --> day12/src/main.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, str::FromStr};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lines`
[INFO] [stdout]    --> day6/src/main.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let lines = parse_file_content(file_content);
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_lines`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_grid` is never used
[INFO] [stdout]   --> day6/src/main.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl GuardGrid {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn print_grid(&self) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking day2 v0.1.0 (/opt/rustwide/workdir/day2)
[INFO] [stdout] warning: unused variable: `lines`
[INFO] [stdout]    --> day6/src/main.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let lines = parse_file_content(file_content);
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_lines`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_grid` is never used
[INFO] [stdout]   --> day6/src/main.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl GuardGrid {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn print_grid(&self) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> day5/src/main.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |         if (text.contains("|")) {
[INFO] [stdout]    |            ^                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 58 -         if (text.contains("|")) {
[INFO] [stdout] 58 +         if text.contains("|") {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part1` is never used
[INFO] [stdout]   --> day12/src/main.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn part1() -> u32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_same_vertical_side` and `is_same_horizontal_side` are never used
[INFO] [stdout]   --> day12/src/main.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl Spot {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] 62 |     pub fn is_same_vertical_side(&self, spot: &Spot) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn is_same_horizontal_side(&self, spot: &Spot) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `perimeter` and `price` are never used
[INFO] [stdout]    --> day12/src/main.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | impl Region {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn perimeter(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn price(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> day10/src/main.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             (width, _) => {
[INFO] [stdout]     |             ^^^^^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> day10/src/main.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout]  92 |             (0, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 104 |             (0, _) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 121 |             (_, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 138 |             (_, height) => {
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 155 |             (width, _) => {
[INFO] [stdout]     |             ^^^^^^^^^^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> day10/src/main.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |             (width, height) => {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> day10/src/main.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout]  92 |             (0, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 104 |             (0, _) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 121 |             (_, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 138 |             (_, height) => {
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 172 |             (width, height) => {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> day10/src/main.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             (_, _) => {
[INFO] [stdout]     |             ^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> day10/src/main.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout]  92 |             (0, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 104 |             (0, _) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 121 |             (_, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 138 |             (_, height) => {
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 184 |             (_, _) => {
[INFO] [stdout]     |             ^^^^^^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> day10/src/main.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |         let height = grid.grid.len();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]   --> day10/src/main.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let width = grid.grid[0].len();
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> day10/src/main.rs:138:17
[INFO] [stdout]     |
[INFO] [stdout] 138 |             (_, height) => {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> day10/src/main.rs:155:14
[INFO] [stdout]     |
[INFO] [stdout] 155 |             (width, _) => {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> day10/src/main.rs:172:14
[INFO] [stdout]     |
[INFO] [stdout] 172 |             (width, height) => {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> day10/src/main.rs:172:21
[INFO] [stdout]     |
[INFO] [stdout] 172 |             (width, height) => {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> day10/src/main.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             (width, _) => {
[INFO] [stdout]     |             ^^^^^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> day10/src/main.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout]  92 |             (0, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 104 |             (0, _) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 121 |             (_, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 138 |             (_, height) => {
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 155 |             (width, _) => {
[INFO] [stdout]     |             ^^^^^^^^^^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> day10/src/main.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |             (width, height) => {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> day10/src/main.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout]  92 |             (0, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 104 |             (0, _) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 121 |             (_, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 138 |             (_, height) => {
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 172 |             (width, height) => {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> day10/src/main.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             (_, _) => {
[INFO] [stdout]     |             ^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> day10/src/main.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout]  92 |             (0, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 104 |             (0, _) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 121 |             (_, 0) => {
[INFO] [stdout]     |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 138 |             (_, height) => {
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 184 |             (_, _) => {
[INFO] [stdout]     |             ^^^^^^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part1` is never used
[INFO] [stdout]   --> day12/src/main.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn part1() -> u32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_same_vertical_side` and `is_same_horizontal_side` are never used
[INFO] [stdout]   --> day12/src/main.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl Spot {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] 62 |     pub fn is_same_vertical_side(&self, spot: &Spot) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn is_same_horizontal_side(&self, spot: &Spot) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `perimeter` and `price` are never used
[INFO] [stdout]    --> day12/src/main.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | impl Region {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn perimeter(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn price(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> day10/src/main.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |         let height = grid.grid.len();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]   --> day10/src/main.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let width = grid.grid[0].len();
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> day10/src/main.rs:138:17
[INFO] [stdout]     |
[INFO] [stdout] 138 |             (_, height) => {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> day10/src/main.rs:155:14
[INFO] [stdout]     |
[INFO] [stdout] 155 |             (width, _) => {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> day10/src/main.rs:172:14
[INFO] [stdout]     |
[INFO] [stdout] 172 |             (width, height) => {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> day10/src/main.rs:172:21
[INFO] [stdout]     |
[INFO] [stdout] 172 |             (width, height) => {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking day7 v0.1.0 (/opt/rustwide/workdir/day7)
[INFO] [stdout] warning: unused import: `std::os::unix::raw::pid_t`
[INFO] [stdout]  --> day7/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::os::unix::raw::pid_t;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::unix::raw::pid_t`
[INFO] [stdout]  --> day7/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::os::unix::raw::pid_t;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> day7/src/main.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 203 |         if (!expr.contains('+') && !expr.contains('*') && expr.contains('|')) {
[INFO] [stdout]     |            ^                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 203 -         if (!expr.contains('+') && !expr.contains('*') && expr.contains('|')) {
[INFO] [stdout] 203 +         if !expr.contains('+') && !expr.contains('*') && expr.contains('|') {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> day7/src/main.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 203 |         if (!expr.contains('+') && !expr.contains('*') && expr.contains('|')) {
[INFO] [stdout]     |            ^                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 203 -         if (!expr.contains('+') && !expr.contains('*') && expr.contains('|')) {
[INFO] [stdout] 203 +         if !expr.contains('+') && !expr.contains('*') && expr.contains('|') {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `std::os::unix::raw::pid_t`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions
[INFO] [stdout]  --> day7/src/main.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::os::unix::raw::pid_t;
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `std::os::unix::raw::pid_t`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions
[INFO] [stdout]  --> day7/src/main.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::os::unix::raw::pid_t;
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> day7/src/main.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn part_1() -> i64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `evaluate`, `evaluate_expression`, and `generate_combinations` are never used
[INFO] [stdout]    --> day7/src/main.rs:95:8
[INFO] [stdout]     |
[INFO] [stdout]  94 | impl CalibrationEquations {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout]  95 |     fn evaluate(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     fn evaluate_expression(&self, expression: String) -> i64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     fn generate_combinations(&self) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> day7/src/main.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn part_1() -> i64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `evaluate`, `evaluate_expression`, and `generate_combinations` are never used
[INFO] [stdout]    --> day7/src/main.rs:95:8
[INFO] [stdout]     |
[INFO] [stdout]  94 | impl CalibrationEquations {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout]  95 |     fn evaluate(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     fn evaluate_expression(&self, expression: String) -> i64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     fn generate_combinations(&self) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.62s
[INFO] running `Command { std: "docker" "inspect" "e27e77d7f15a9a4ae61ba201d3ff5a4eeeba68c46ccf21a7fda8516b2029b7b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e27e77d7f15a9a4ae61ba201d3ff5a4eeeba68c46ccf21a7fda8516b2029b7b7", kill_on_drop: false }`
[INFO] [stdout] e27e77d7f15a9a4ae61ba201d3ff5a4eeeba68c46ccf21a7fda8516b2029b7b7
