[INFO] cloning repository https://github.com/Jassob/advent-of-code-2020
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jassob/advent-of-code-2020" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJassob%2Fadvent-of-code-2020", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJassob%2Fadvent-of-code-2020'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5558d293b2c0ef1fde9fa29c05a583f686d0f7f7
[INFO] checking Jassob/advent-of-code-2020 against try#79452e8441468c5568c20bfca2aa1fe75b645b2d for pr-152210
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJassob%2Fadvent-of-code-2020" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Jassob/advent-of-code-2020
[INFO] finished tweaking git repo https://github.com/Jassob/advent-of-code-2020
[INFO] tweaked toml for git repo https://github.com/Jassob/advent-of-code-2020 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Jassob/advent-of-code-2020 on toolchain 79452e8441468c5568c20bfca2aa1fe75b645b2d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Jassob/advent-of-code-2020 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" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "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-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a7d0ca1f9373e30e398eb760300af8b0ea39b2818d08acd146531058355699f2
[INFO] running `Command { std: "docker" "start" "-a" "a7d0ca1f9373e30e398eb760300af8b0ea39b2818d08acd146531058355699f2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a7d0ca1f9373e30e398eb760300af8b0ea39b2818d08acd146531058355699f2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7d0ca1f9373e30e398eb760300af8b0ea39b2818d08acd146531058355699f2", kill_on_drop: false }`
[INFO] [stdout] a7d0ca1f9373e30e398eb760300af8b0ea39b2818d08acd146531058355699f2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a0ed206d2acec92c5fb28e7e96fd61d677a9407fc3a479ee3aa5da060d45cd4d
[INFO] running `Command { std: "docker" "start" "-a" "a0ed206d2acec92c5fb28e7e96fd61d677a9407fc3a479ee3aa5da060d45cd4d", kill_on_drop: false }`
[INFO] [stderr]     Checking aoc-2020 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/bin/day4.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/bin/day4.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]  --> src/bin/day21.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, collections::HashSet, str::FromStr};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]  --> src/bin/day21.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, collections::HashSet, str::FromStr};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/bin/day18.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     loop {}
[INFO] [stdout]    |     ------- any code following this expression is unreachable
[INFO] [stdout] 14 |     unimplemented!()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/bin/day18.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     loop {}
[INFO] [stdout]    |     ------- any code following this expression is unreachable
[INFO] [stdout] 14 |     unimplemented!()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/bin/day15.rs:50:10
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn part2(input: &str) -> Result<u32, String> {
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/day18.rs:34:29
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn from_str(s: &str) -> Result<Self, Self::Err> {}
[INFO] [stdout]    |        --------             ^^^^^^^^^^^^^^^^^^^^^^^ expected `Result<Expr, String>`, found `()`
[INFO] [stdout]    |        |
[INFO] [stdout]    |        implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<Expr, String>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/bin/day7.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/day18.rs:34:29
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn from_str(s: &str) -> Result<Self, Self::Err> {}
[INFO] [stdout]    |        --------             ^^^^^^^^^^^^^^^^^^^^^^^ expected `Result<Expr, String>`, found `()`
[INFO] [stdout]    |        |
[INFO] [stdout]    |        implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<Expr, String>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/day18.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut val = 0;
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/day18.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut words = line.split(' ');
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]   --> src/bin/day18.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut val = 0;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/day18.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut val = 0;
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `words`
[INFO] [stdout]   --> src/bin/day18.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut words = line.split(' ');
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_words`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `aoc-2020` (bin "day18") due to 1 previous error; 6 warnings emitted
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/day18.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut words = line.split(' ');
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/bin/day18.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn part1(input: Vec<String>) -> u32 {
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]   --> src/bin/day18.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut val = 0;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `words`
[INFO] [stdout]   --> src/bin/day18.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut words = line.split(' ');
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_words`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/bin/day18.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn part1(input: Vec<String>) -> u32 {
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/bin/day21.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | /         &foods.iter().for_each(|f| {
[INFO] [stdout] 22 | |             all_foods.push(String::from(f));
[INFO] [stdout] 23 | |         });
[INFO] [stdout]    | |__________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let _ = &foods.iter().for_each(|f| {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cid` is never read
[INFO] [stdout]   --> src/bin/day4.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 86 | struct Passport {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 94 |     cid: Option<String>, // (Country ID)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Passport` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] warning: field `cid` is never read
[INFO] [stdout]   --> src/bin/day4.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 86 | struct Passport {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 94 |     cid: Option<String>, // (Country ID)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Passport` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `aoc-2020` (bin "day18" test) due to 1 previous error; 6 warnings emitted
[INFO] [stdout] warning: unused `Map` that must be used
[INFO] [stdout]   --> src/bin/day21.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 | /             possible_allergens.iter().map(|(a, is)| {
[INFO] [stdout] 54 | |                 (
[INFO] [stdout] 55 | |                     a,
[INFO] [stdout] 56 | |                     is.iter()
[INFO] [stdout] ...  |
[INFO] [stdout] 61 | |             });
[INFO] [stdout]    | |______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: iterators are lazy and do nothing unless consumed
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let _ = possible_allergens.iter().map(|(a, is)| {
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/bin/day21.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | /         &foods.iter().for_each(|f| {
[INFO] [stdout] 22 | |             all_foods.push(String::from(f));
[INFO] [stdout] 23 | |         });
[INFO] [stdout]    | |__________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let _ = &foods.iter().for_each(|f| {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Map` that must be used
[INFO] [stdout]   --> src/bin/day21.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 | /             possible_allergens.iter().map(|(a, is)| {
[INFO] [stdout] 54 | |                 (
[INFO] [stdout] 55 | |                     a,
[INFO] [stdout] 56 | |                     is.iter()
[INFO] [stdout] ...  |
[INFO] [stdout] 61 | |             });
[INFO] [stdout]    | |______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: iterators are lazy and do nothing unless consumed
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let _ = possible_allergens.iter().map(|(a, is)| {
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `str::FromStr`
[INFO] [stdout]  --> src/bin/day20.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, str::FromStr};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/bin/day20.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn part1(input: String) -> u32 {
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other`
[INFO] [stdout]   --> src/bin/day20.rs:25:23
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn matches(&self, other: &Tile) {
[INFO] [stdout]    |                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_x`
[INFO] [stdout]   --> src/bin/day20.rs:26:14
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let (max_x, max_y) = self.dimensions;
[INFO] [stdout]    |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_max_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_y`
[INFO] [stdout]   --> src/bin/day20.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let (max_x, max_y) = self.dimensions;
[INFO] [stdout]    |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_max_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tile` is never constructed
[INFO] [stdout]   --> src/bin/day20.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Tile {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `matches` is never used
[INFO] [stdout]   --> src/bin/day20.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Tile {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] 25 |     fn matches(&self, other: &Tile) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Puzzle` is never constructed
[INFO] [stdout]   --> src/bin/day20.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | struct Puzzle {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a0ed206d2acec92c5fb28e7e96fd61d677a9407fc3a479ee3aa5da060d45cd4d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a0ed206d2acec92c5fb28e7e96fd61d677a9407fc3a479ee3aa5da060d45cd4d", kill_on_drop: false }`
[INFO] [stdout] a0ed206d2acec92c5fb28e7e96fd61d677a9407fc3a479ee3aa5da060d45cd4d
