[INFO] cloning repository https://github.com/jostly/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/jostly/advent-of-code-2020" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjostly%2Fadvent-of-code-2020", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjostly%2Fadvent-of-code-2020'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b9c24a3f1addc94a48d7f346ee2e8c4b7cf9e752
[INFO] checking jostly/advent-of-code-2020 against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjostly%2Fadvent-of-code-2020" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jostly/advent-of-code-2020
[INFO] finished tweaking git repo https://github.com/jostly/advent-of-code-2020
[INFO] tweaked toml for git repo https://github.com/jostly/advent-of-code-2020 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jostly/advent-of-code-2020 on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jostly/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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 924a3d869df76dafe0394794a2045a2e5d0252240b63dd5858bac380ab171809
[INFO] running `Command { std: "docker" "start" "-a" "924a3d869df76dafe0394794a2045a2e5d0252240b63dd5858bac380ab171809", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "924a3d869df76dafe0394794a2045a2e5d0252240b63dd5858bac380ab171809", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "924a3d869df76dafe0394794a2045a2e5d0252240b63dd5858bac380ab171809", kill_on_drop: false }`
[INFO] [stdout] 924a3d869df76dafe0394794a2045a2e5d0252240b63dd5858bac380ab171809
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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 -Dunmustuse_in_always_ok" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b223679b3375ae09bdcac025ad8771c5674d01fbe1e363cbe91177fa68f84efd
[INFO] running `Command { std: "docker" "start" "-a" "b223679b3375ae09bdcac025ad8771c5674d01fbe1e363cbe91177fa68f84efd", kill_on_drop: false }`
[INFO] [stderr]     Checking year-2020 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `read_lines` is never used
[INFO] [stdout]  --> src/util/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn read_lines<P>(filename: P) -> io::Result<io::Lines<io::BufReader<File>>>
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_records` is never used
[INFO] [stdout]   --> src/util/mod.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn read_records<P: AsRef<Path>>(filename: P) -> io::Result<Vec<Vec<String>>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_file` is never used
[INFO] [stdout]   --> src/util/mod.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn read_file<T, P>(filename: P) -> Result<Vec<T>, T::Err>
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash_set` is never used
[INFO] [stdout]   --> src/util/mod.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn hash_set<T: Eq + Hash>(v: Vec<T>) -> HashSet<T> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_pair` is never used
[INFO] [stdout]  --> src/day01/mod.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn find_pair(target: i64, head: i64, tail: &[i64]) -> Option<(i64, i64)> {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_2020_in_2` is never used
[INFO] [stdout]   --> src/day01/mod.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn find_2020_in_2(numbers: &[i64]) -> Option<(i64, i64)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_2020_in_3` is never used
[INFO] [stdout]   --> src/day01/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn find_2020_in_3(numbers: &[i64]) -> Option<(i64, i64, i64)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `is_valid` are never used
[INFO] [stdout]   --> src/day02/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl PasswordAndPolicy {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 11 |     fn new(input: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn is_valid(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Map` is never constructed
[INFO] [stdout]  --> src/day03/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Map {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `goal_at`, `tree_at`, and `count_trees` are never used
[INFO] [stdout]   --> src/day03/mod.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl Map {
[INFO] [stdout]    | -------- associated items in this implementation
[INFO] [stdout] 10 |     fn new(filename: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn goal_at(&self, row: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn tree_at(&self, row: usize, column: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn count_trees(&self, delta_row: usize, delta_column: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Line` is never constructed
[INFO] [stdout]   --> src/day03/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | struct Line {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `tree_at` is never used
[INFO] [stdout]   --> src/day03/mod.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl Line {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] 44 |     fn tree_at(&self, i: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Line` is never used
[INFO] [stdout]  --> src/day04/mod.rs:8:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | enum Line {
[INFO] [stdout]   |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Field` is never used
[INFO] [stdout]   --> src/day04/mod.rs:35:6
[INFO] [stdout]    |
[INFO] [stdout] 35 | enum Field {
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_pid` is never used
[INFO] [stdout]   --> src/day04/mod.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn valid_pid(data: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_ecl` is never used
[INFO] [stdout]   --> src/day04/mod.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn valid_ecl(data: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_hcl` is never used
[INFO] [stdout]   --> src/day04/mod.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn valid_hcl(data: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_hgt` is never used
[INFO] [stdout]   --> src/day04/mod.rs:89:4
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn valid_hgt(data: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_byr` is never used
[INFO] [stdout]    --> src/day04/mod.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn valid_byr(data: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_iyr` is never used
[INFO] [stdout]    --> src/day04/mod.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn valid_iyr(data: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_eyr` is never used
[INFO] [stdout]    --> src/day04/mod.rs:126:4
[INFO] [stdout]     |
[INFO] [stdout] 126 | fn valid_eyr(data: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Passport` is never constructed
[INFO] [stdout]    --> src/day04/mod.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | struct Passport {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_valid` is never used
[INFO] [stdout]    --> src/day04/mod.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl Passport {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] 139 |     fn is_valid(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_passports` is never used
[INFO] [stdout]    --> src/day04/mod.rs:152:4
[INFO] [stdout]     |
[INFO] [stdout] 152 | fn parse_passports(lines: Vec<Line>) -> Vec<Passport> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Seat` is never constructed
[INFO] [stdout]  --> src/day05/mod.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Seat(u32);
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/day05/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | impl Seat {
[INFO] [stdout]   | --------- associated function in this implementation
[INFO] [stdout] 7 |     fn new(s: &str) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_answers_in_records` is never used
[INFO] [stdout]  --> src/day06/mod.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn count_answers_in_records<F>(records: Vec<Vec<String>>, initial: u32, join_func: F) -> u32
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_answers` is never used
[INFO] [stdout]   --> src/day06/mod.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn count_answers<T, F>(answers: &[T], initial: u32, join_func: &F) -> u32
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `answer_to_bitfield` is never used
[INFO] [stdout]   --> src/day06/mod.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn answer_to_bitfield(s: &str) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bag` is never constructed
[INFO] [stdout]  --> src/day07/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Bag(String);
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/day07/mod.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl Bag {
[INFO] [stdout]   | -------- associated function in this implementation
[INFO] [stdout] 9 |     fn new(s: &str) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BagManifest` is never constructed
[INFO] [stdout]   --> src/day07/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct BagManifest(Vec<(u32, Bag)>);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/day07/mod.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl BagManifest {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 19 |     fn new(s: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Line` is never constructed
[INFO] [stdout]   --> src/day07/mod.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | struct Line(Bag, BagManifest);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Instruction` is never used
[INFO] [stdout]  --> src/day08/mod.rs:5:6
[INFO] [stdout]   |
[INFO] [stdout] 5 | enum Instruction {
[INFO] [stdout]   |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Processor` is never constructed
[INFO] [stdout]   --> src/day08/mod.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Processor {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_file`, `is_terminated`, `execute`, `handle_operation`, `swap_at`, and `change_to_terminate` are never used
[INFO] [stdout]   --> src/day08/mod.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Processor {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 34 |     fn from_file(filename: &str) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn is_terminated(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn execute(&mut self) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     fn handle_operation(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     fn swap_at(&mut self, index: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn change_to_terminate(self) -> (Self, usize) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Validator` is never constructed
[INFO] [stdout]  --> src/day09/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Validator {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `check` are never used
[INFO] [stdout]   --> src/day09/mod.rs:8:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl Validator {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout]  8 |     fn new(preamble: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     fn check(&self, numbers: &[i64]) -> Option<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_contiguous_set_in_list` is never used
[INFO] [stdout]   --> src/day09/mod.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn find_contiguous_set_in_list(list: &[i64], target: i64) -> Option<&[i64]> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `differences` is never used
[INFO] [stdout]  --> src/day10/mod.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn differences(input: &[i32]) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_entries` is never used
[INFO] [stdout]   --> src/day10/mod.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn count_entries<T>(input: &[T]) -> HashMap<T, usize>
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jolts` is never used
[INFO] [stdout]   --> src/day10/mod.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn jolts(mut input: Vec<i32>) -> (usize, usize) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_consecutive_ones` is never used
[INFO] [stdout]   --> src/day10/mod.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn count_consecutive_ones(diffs: &[i32]) -> Vec<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combinations` is never used
[INFO] [stdout]   --> src/day10/mod.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn combinations(consec: usize) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FLOOR` is never used
[INFO] [stdout]  --> src/day11/mod.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const FLOOR: u8 = '.' as u8;
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EMPTY_SEAT` is never used
[INFO] [stdout]  --> src/day11/mod.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const EMPTY_SEAT: u8 = 'L' as u8;
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAKEN_SEAT` is never used
[INFO] [stdout]  --> src/day11/mod.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const TAKEN_SEAT: u8 = '#' as u8;
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SeatAlgorithm` is never used
[INFO] [stdout]   --> src/day11/mod.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | enum SeatAlgorithm {
[INFO] [stdout]    |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WaitingArea` is never constructed
[INFO] [stdout]   --> src/day11/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct WaitingArea {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/day11/mod.rs:24:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl WaitingArea {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  24 |     fn new(data: &[String]) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  43 |     fn from_file(filename: &str) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  48 |     fn with_seat_algorithm(mut self, seat_algorithm: SeatAlgorithm) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  53 |     fn pos(&self, row: i32, column: i32) -> u8 {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |     fn surrounding_taken_seats(&self, row: i32, column: i32) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     fn count_taken_seats(&self) -> Vec<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn iterate(&mut self) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn count_occupied_seats(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ferry` is never constructed
[INFO] [stdout]  --> src/day12/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Ferry {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]   --> src/day12/mod.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Direction {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `turn_steps` is never used
[INFO] [stdout]   --> src/day12/mod.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Direction {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 21 |     fn turn_steps(&self, mut steps: i32) -> Direction {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/day12/mod.rs:46:8
[INFO] [stdout]     |
[INFO] [stdout]  45 | impl Ferry {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  46 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     fn go(&mut self, instruction: &str) {
[INFO] [stdout]     |        ^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     fn apply_turn(&mut self, turns: i32) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     fn apply_movement(&mut self, direction: Direction, distance: i32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     fn nav(&mut self, instruction: &str) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     fn turn_waypoint(&mut self, mut turns: i32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     fn move_waypoint(&mut self, direction: Direction, distance: i32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn move_to_waypoint(&mut self, times: i32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     fn manhattan_distance(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_next_bus` is never used
[INFO] [stdout]  --> src/day13/mod.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn find_next_bus(timestamp: u128, buses: &[u128]) -> (u128, u128) {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_it` is never used
[INFO] [stdout]   --> src/day13/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn parse_it(s: &str) -> Vec<(u128, u128)> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_it` is never used
[INFO] [stdout]   --> src/day13/mod.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn solve_it(parameters: &[(u128, u128)]) -> u128 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/day13/mod.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn solve(s: &str) -> u128 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mask` is never constructed
[INFO] [stdout]  --> src/day14/mod.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Mask {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `apply`, `apply_mem`, and `add_mutations` are never used
[INFO] [stdout]   --> src/day14/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Mask {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 11 |     fn new(mask: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn apply(&self, value: u64) -> u64 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn apply_mem(&self, mut address: u64) -> Vec<u64> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn add_mutations(out: &mut HashSet<u64>, base: u64, floatings: &[u64]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Processor` is never constructed
[INFO] [stdout]   --> src/day14/mod.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | struct Processor {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `execute` are never used
[INFO] [stdout]   --> src/day14/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl Processor {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 76 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     fn execute<T: Into<String>>(&mut self, src: Vec<T>) -> u64 {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessorV2` is never constructed
[INFO] [stdout]    --> src/day14/mod.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | struct ProcessorV2 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `execute` are never used
[INFO] [stdout]    --> src/day14/mod.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 110 | impl ProcessorV2 {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 111 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn execute<T: Into<String>>(&mut self, src: Vec<T>) -> u64 {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Vec<String>, Infallible>
[INFO] [stdout]   --> src/day11/mod.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let data = read_file(filename).unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `year-2020` (bin "year-2020") due to 1 previous error; 65 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: this type will no longer be must used: Result<Vec<String>, Infallible>
[INFO] [stdout]   --> src/day11/mod.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let data = read_file(filename).unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Vec<String>, Infallible>
[INFO] [stdout]    --> src/day12/mod.rs:244:38
[INFO] [stdout]     |
[INFO] [stdout] 244 |         let movements: Vec<String> = read_file("./src/day12/input.txt").unwrap();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Vec<String>, Infallible>
[INFO] [stdout]    --> src/day12/mod.rs:267:38
[INFO] [stdout]     |
[INFO] [stdout] 267 |         let movements: Vec<String> = read_file("./src/day12/input.txt").unwrap();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Vec<String>, Infallible>
[INFO] [stdout]   --> src/day13/mod.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let lines: Vec<String> = read_file("./src/day13/input.txt").unwrap();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Vec<String>, Infallible>
[INFO] [stdout]   --> src/day13/mod.rs:81:34
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let lines: Vec<String> = read_file("./src/day13/input.txt").unwrap();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Vec<String>, Infallible>
[INFO] [stdout]    --> src/day14/mod.rs:171:32
[INFO] [stdout]     |
[INFO] [stdout] 171 |         let src: Vec<String> = read_file("./src/day14/input.txt").unwrap();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Vec<String>, Infallible>
[INFO] [stdout]    --> src/day14/mod.rs:192:32
[INFO] [stdout]     |
[INFO] [stdout] 192 |         let src: Vec<String> = read_file("./src/day14/input.txt").unwrap();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `year-2020` (bin "year-2020" test) due to 7 previous errors
[INFO] running `Command { std: "docker" "inspect" "b223679b3375ae09bdcac025ad8771c5674d01fbe1e363cbe91177fa68f84efd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b223679b3375ae09bdcac025ad8771c5674d01fbe1e363cbe91177fa68f84efd", kill_on_drop: false }`
[INFO] [stdout] b223679b3375ae09bdcac025ad8771c5674d01fbe1e363cbe91177fa68f84efd
