[INFO] cloning repository https://github.com/reiterative/aoc2020
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/reiterative/aoc2020" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freiterative%2Faoc2020", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freiterative%2Faoc2020'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 954dbd3b38eb7874d958c7fa516265eaecab4c11
[INFO] building reiterative/aoc2020 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freiterative%2Faoc2020" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/reiterative/aoc2020
[INFO] finished tweaking git repo https://github.com/reiterative/aoc2020
[INFO] tweaked toml for git repo https://github.com/reiterative/aoc2020 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/reiterative/aoc2020 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/reiterative/aoc2020 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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 21be51751a1197aeb407e0abfe0d8d610bb789ef6d57e9f30705dcb784553d9e
[INFO] running `Command { std: "docker" "start" "-a" "21be51751a1197aeb407e0abfe0d8d610bb789ef6d57e9f30705dcb784553d9e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "21be51751a1197aeb407e0abfe0d8d610bb789ef6d57e9f30705dcb784553d9e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "21be51751a1197aeb407e0abfe0d8d610bb789ef6d57e9f30705dcb784553d9e", kill_on_drop: false }`
[INFO] [stdout] 21be51751a1197aeb407e0abfe0d8d610bb789ef6d57e9f30705dcb784553d9e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6c3427696be15e09e86607f836003a9ddb211182bbc2f99b46a2b4ef3f521a0b
[INFO] running `Command { std: "docker" "start" "-a" "6c3427696be15e09e86607f836003a9ddb211182bbc2f99b46a2b4ef3f521a0b", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling regex-syntax v0.6.21
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]    Compiling aho-corasick v0.7.15
[INFO] [stderr]    Compiling regex v1.4.2
[INFO] [stderr]    Compiling aoc2020 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `get_signed` and `get_unsigned`
[INFO] [stdout]  --> src/main.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::utils::{get_signed, get_strings, get_unsigned};
[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: `min`
[INFO] [stdout]  --> src/main.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::cmp::{max, min};
[INFO] [stdout]   |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/main.rs:257:20
[INFO] [stdout]     |
[INFO] [stdout] 257 |                 if (wait < earliest) {
[INFO] [stdout]     |                    ^               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 257 -                 if (wait < earliest) {
[INFO] [stdout] 257 +                 if wait < earliest {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> src/main.rs:634:11
[INFO] [stdout]     |
[INFO] [stdout] 634 |     while (stable == false) {
[INFO] [stdout]     |           ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 634 -     while (stable == false) {
[INFO] [stdout] 634 +     while stable == false {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> src/main.rs:648:11
[INFO] [stdout]     |
[INFO] [stdout] 648 |     while (stable == false) {
[INFO] [stdout]     |           ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 648 -     while (stable == false) {
[INFO] [stdout] 648 +     while stable == false {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> src/main.rs:931:15
[INFO] [stdout]     |
[INFO] [stdout] 931 |         while (self.run) {
[INFO] [stdout]     |               ^        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 931 -         while (self.run) {
[INFO] [stdout] 931 +         while self.run {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/main.rs:70:14
[INFO] [stdout]    |
[INFO] [stdout] 70 |         for (a, count) in ing.a_map.iter() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/main.rs:269:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |     let mut result: u64 = 0;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 269 |     let mut result: u64 = 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: `searching`
[INFO] [stdout]    --> src/main.rs:781:13
[INFO] [stdout]     |
[INFO] [stdout] 781 |     let mut searching = true;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_searching`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:781:9
[INFO] [stdout]     |
[INFO] [stdout] 781 |     let mut searching = true;
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min`
[INFO] [stdout]    --> src/main.rs:810:13
[INFO] [stdout]     |
[INFO] [stdout] 810 |     let mut min: u64 = 0;
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:810:9
[INFO] [stdout]     |
[INFO] [stdout] 810 |     let mut min: u64 = 0;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/main.rs:956:23
[INFO] [stdout]     |
[INFO] [stdout] 956 |     fn nop(&mut self, val: i32) {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:986:21
[INFO] [stdout]     |
[INFO] [stdout] 986 |         if let Some(mut it) = self.code.get_mut(i) {
[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:1007:9
[INFO] [stdout]      |
[INFO] [stdout] 1007 |     for mut it in vm.code {
[INFO] [stdout]      |         ----^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num`
[INFO] [stdout]     --> src/main.rs:1047:14
[INFO] [stdout]      |
[INFO] [stdout] 1047 |         for (num, name) in r {
[INFO] [stdout]      |              ^^^ help: if this is intentional, prefix it with an underscore: `_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bagset`
[INFO] [stdout]     --> src/main.rs:1099:13
[INFO] [stdout]      |
[INFO] [stdout] 1099 |     let mut bagset: HashSet<String> = HashSet::new();
[INFO] [stdout]      |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bagset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:1098:9
[INFO] [stdout]      |
[INFO] [stdout] 1098 |     let mut rules: HashMap<String, Vec<(u8, String)>> = get_bag_rules(strings);
[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:1099:9
[INFO] [stdout]      |
[INFO] [stdout] 1099 |     let mut bagset: HashSet<String> = HashSet::new();
[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:1105:9
[INFO] [stdout]      |
[INFO] [stdout] 1105 |     let mut rules: HashMap<String, Vec<(u8, String)>> = get_bag_rules(strings);
[INFO] [stdout]      |         ----^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day14_1` is never used
[INFO] [stdout]    --> src/main.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn day14_1(strings: &Vec<String>) -> u64 {
[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 `day14_2` is never used
[INFO] [stdout]    --> src/main.rs:131:4
[INFO] [stdout]     |
[INFO] [stdout] 131 | fn day14_2(strings: &Vec<String>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]    --> src/main.rs:158:4
[INFO] [stdout]     |
[INFO] [stdout] 158 | fn parse_line(line: &str) -> (&str, &str) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_mem` is never used
[INFO] [stdout]    --> src/main.rs:170:4
[INFO] [stdout]     |
[INFO] [stdout] 170 | fn get_mem(label: &str, value: &str) -> (u64, u64) {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bitmask` is never constructed
[INFO] [stdout]    --> src/main.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | struct Bitmask {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `decode_value` and `decode_address` are never used
[INFO] [stdout]    --> src/main.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 189 | impl Bitmask {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] 190 |     fn decode_value(&self, value: u64) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     fn decode_address(&self, address: u64) -> Vec<u64> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day13_1` is never used
[INFO] [stdout]    --> src/main.rs:249:4
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn day13_1(strings: &Vec<String>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day13_2` is never used
[INFO] [stdout]    --> src/main.rs:268:4
[INFO] [stdout]     |
[INFO] [stdout] 268 | fn day13_2(strings: &Vec<String>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NORTH` is never used
[INFO] [stdout]    --> src/main.rs:324:7
[INFO] [stdout]     |
[INFO] [stdout] 324 | const NORTH: u16 = 0;
[INFO] [stdout]     |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EAST` is never used
[INFO] [stdout]    --> src/main.rs:325:7
[INFO] [stdout]     |
[INFO] [stdout] 325 | const EAST: u16 = 90;
[INFO] [stdout]     |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SOUTH` is never used
[INFO] [stdout]    --> src/main.rs:326:7
[INFO] [stdout]     |
[INFO] [stdout] 326 | const SOUTH: u16 = 180;
[INFO] [stdout]     |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WEST` is never used
[INFO] [stdout]    --> src/main.rs:327:7
[INFO] [stdout]     |
[INFO] [stdout] 327 | const WEST: u16 = 270;
[INFO] [stdout]     |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Waypoint` is never constructed
[INFO] [stdout]    --> src/main.rs:329:8
[INFO] [stdout]     |
[INFO] [stdout] 329 | struct Waypoint {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/main.rs:336:8
[INFO] [stdout]     |
[INFO] [stdout] 335 | impl Waypoint {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] 336 |     fn north(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     fn south(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     fn east(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 345 |     fn west(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 |     fn left(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     fn right(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 |     fn forward(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 372 |     fn manhattan(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Location` is never constructed
[INFO] [stdout]    --> src/main.rs:382:8
[INFO] [stdout]     |
[INFO] [stdout] 382 | struct Location {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/main.rs:389:8
[INFO] [stdout]     |
[INFO] [stdout] 388 | impl Location {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] 389 |     fn north(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     fn south(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     fn east(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 |     fn west(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 401 |     fn left(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 409 |     fn right(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 415 |     fn forward(&mut self, value: u16) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 424 |     fn manhattan(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day12_1` is never used
[INFO] [stdout]    --> src/main.rs:430:4
[INFO] [stdout]     |
[INFO] [stdout] 430 | fn day12_1(strings: &Vec<String>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day12_2` is never used
[INFO] [stdout]    --> src/main.rs:455:4
[INFO] [stdout]     |
[INFO] [stdout] 455 | fn day12_2(strings: &Vec<String>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SeatMap` is never constructed
[INFO] [stdout]    --> src/main.rs:505:8
[INFO] [stdout]     |
[INFO] [stdout] 505 | struct SeatMap {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `count_occupied`, `seat_passengers`, `COORDS`, `check_seats`, and `print` are never used
[INFO] [stdout]    --> src/main.rs:515:8
[INFO] [stdout]     |
[INFO] [stdout] 514 | impl SeatMap {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 515 |     fn new(strings: &Vec<String>) -> SeatMap {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 537 |     fn count_occupied(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 547 |     fn seat_passengers(&mut self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 570 |     const COORDS: [(i16, i16); 8] = [
[INFO] [stdout]     |           ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 581 |     fn check_seats(&self, row: u8, col: u8) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 617 |     fn print(&self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day11_1` is never used
[INFO] [stdout]    --> src/main.rs:630:4
[INFO] [stdout]     |
[INFO] [stdout] 630 | fn day11_1(strings: &Vec<String>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day11_2` is never used
[INFO] [stdout]    --> src/main.rs:641:4
[INFO] [stdout]     |
[INFO] [stdout] 641 | fn day11_2(strings: &Vec<String>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day10_1` is never used
[INFO] [stdout]    --> src/main.rs:678:4
[INFO] [stdout]     |
[INFO] [stdout] 678 | fn day10_1(numbers: &Vec<u64>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day10_2` is never used
[INFO] [stdout]    --> src/main.rs:700:4
[INFO] [stdout]     |
[INFO] [stdout] 700 | fn day10_2(numbers: &Vec<u64>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trib` is never used
[INFO] [stdout]    --> src/main.rs:727:4
[INFO] [stdout]     |
[INFO] [stdout] 727 | fn trib(max: u32) -> Vec<u32> {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day9_1` is never used
[INFO] [stdout]    --> src/main.rs:762:4
[INFO] [stdout]     |
[INFO] [stdout] 762 | fn day9_1(preamble: u16, numbers: &Vec<u64>) -> u64 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day9_2` is never used
[INFO] [stdout]    --> src/main.rs:780:4
[INFO] [stdout]     |
[INFO] [stdout] 780 | fn day9_2(invalid: u64, numbers: &Vec<u64>) -> u64 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_range` is never used
[INFO] [stdout]    --> src/main.rs:799:4
[INFO] [stdout]     |
[INFO] [stdout] 799 | fn max_range(range: Option<&[u64]>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_range` is never used
[INFO] [stdout]    --> src/main.rs:809:4
[INFO] [stdout]     |
[INFO] [stdout] 809 | fn min_range(range: Option<&[u64]>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum_range` is never used
[INFO] [stdout]    --> src/main.rs:820:4
[INFO] [stdout]     |
[INFO] [stdout] 820 | fn sum_range(range: Option<&[u64]>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checksum` is never used
[INFO] [stdout]    --> src/main.rs:830:4
[INFO] [stdout]     |
[INFO] [stdout] 830 | fn checksum(target: u64, buffer: &Vec<u64>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VmOp` is never used
[INFO] [stdout]    --> src/main.rs:861:6
[INFO] [stdout]     |
[INFO] [stdout] 861 | enum VmOp {
[INFO] [stdout]     |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instruction` is never constructed
[INFO] [stdout]    --> src/main.rs:869:8
[INFO] [stdout]     |
[INFO] [stdout] 869 | struct Instruction {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VirtualMachine` is never constructed
[INFO] [stdout]    --> src/main.rs:875:8
[INFO] [stdout]     |
[INFO] [stdout] 875 | struct VirtualMachine {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/main.rs:885:8
[INFO] [stdout]     |
[INFO] [stdout] 884 | impl VirtualMachine {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 885 |     fn new(strings: &Vec<String>, debug: bool) -> VirtualMachine {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 926 |     fn run_to_repeat(&mut self) -> i64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 956 |     fn nop(&mut self, val: i32) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 961 |     fn acc(&mut self, val: i32) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 966 |     fn jmp(&mut self, val: i32) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 976 |     fn err(&mut self) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 981 |     fn normal_exit(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 985 |     fn switch(&mut self, i: usize) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day8_1` is never used
[INFO] [stdout]    --> src/main.rs:998:4
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn day8_1(strings: &Vec<String>) -> i64 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day8_2` is never used
[INFO] [stdout]     --> src/main.rs:1002:4
[INFO] [stdout]      |
[INFO] [stdout] 1002 | fn day8_2(strings: &Vec<String>) -> i64 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bag` and `contents` are never read
[INFO] [stdout]     --> src/main.rs:1040:5
[INFO] [stdout]      |
[INFO] [stdout] 1039 | pub struct BagRule {
[INFO] [stdout]      |            ------- fields in this struct
[INFO] [stdout] 1040 |     bag: String,
[INFO] [stdout]      |     ^^^
[INFO] [stdout] 1041 |     contents: Vec<(u8, String)>,
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_outer_bags` is never used
[INFO] [stdout]     --> src/main.rs:1044:4
[INFO] [stdout]      |
[INFO] [stdout] 1044 | fn get_outer_bags<'a>(target: &str, rules: &'a HashMap<String, Vec<(u8, String)>>) -> Vec<&'a str> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_inner_bags` is never used
[INFO] [stdout]     --> src/main.rs:1056:4
[INFO] [stdout]      |
[INFO] [stdout] 1056 | fn get_inner_bags<'a>(target: &str, rules: &'a HashMap<String, Vec<(u8, String)>>) -> u64 {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_bag_rules` is never used
[INFO] [stdout]     --> src/main.rs:1073:4
[INFO] [stdout]      |
[INFO] [stdout] 1073 | fn get_bag_rules(strings: &Vec<String>) -> HashMap<String, Vec<(u8, String)>> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day7_2` is never used
[INFO] [stdout]     --> src/main.rs:1097:4
[INFO] [stdout]      |
[INFO] [stdout] 1097 | fn day7_2(strings: &Vec<String>) -> u64 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day7_1` is never used
[INFO] [stdout]     --> src/main.rs:1104:4
[INFO] [stdout]      |
[INFO] [stdout] 1104 | fn day7_1(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnswerGroup` is never constructed
[INFO] [stdout]     --> src/main.rs:1156:8
[INFO] [stdout]      |
[INFO] [stdout] 1156 | struct AnswerGroup {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]     --> src/main.rs:1162:8
[INFO] [stdout]      |
[INFO] [stdout] 1161 | impl AnswerGroup {
[INFO] [stdout]      | ---------------- associated function in this implementation
[INFO] [stdout] 1162 |     fn new() -> AnswerGroup {
[INFO] [stdout]      |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_answer_groups` is never used
[INFO] [stdout]     --> src/main.rs:1168:4
[INFO] [stdout]      |
[INFO] [stdout] 1168 | fn get_answer_groups(strings: &Vec<String>) -> Vec<AnswerGroup> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day6_1` is never used
[INFO] [stdout]     --> src/main.rs:1194:4
[INFO] [stdout]      |
[INFO] [stdout] 1194 | fn day6_1(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day6_2` is never used
[INFO] [stdout]     --> src/main.rs:1213:4
[INFO] [stdout]      |
[INFO] [stdout] 1213 | fn day6_2(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day5_1` is never used
[INFO] [stdout]     --> src/main.rs:1243:4
[INFO] [stdout]      |
[INFO] [stdout] 1243 | fn day5_1(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day5_2` is never used
[INFO] [stdout]     --> src/main.rs:1252:4
[INFO] [stdout]      |
[INFO] [stdout] 1252 | fn day5_2(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_seats` is never used
[INFO] [stdout]     --> src/main.rs:1268:4
[INFO] [stdout]      |
[INFO] [stdout] 1268 | fn get_seats(strings: &Vec<String>) -> Vec<u32> {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lower` is never used
[INFO] [stdout]     --> src/main.rs:1290:4
[INFO] [stdout]      |
[INFO] [stdout] 1290 | fn lower(range: (u16, u16, u16)) -> (u16, u16, u16) {
[INFO] [stdout]      |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `upper` is never used
[INFO] [stdout]     --> src/main.rs:1294:4
[INFO] [stdout]      |
[INFO] [stdout] 1294 | fn upper(range: (u16, u16, u16)) -> (u16, u16, u16) {
[INFO] [stdout]      |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PassportEntry` is never constructed
[INFO] [stdout]     --> src/main.rs:1321:8
[INFO] [stdout]      |
[INFO] [stdout] 1321 | struct PassportEntry {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]     --> src/main.rs:1326:8
[INFO] [stdout]      |
[INFO] [stdout] 1325 | impl PassportEntry {
[INFO] [stdout]      | ------------------ associated items in this implementation
[INFO] [stdout] 1326 |     fn required_fields() -> Vec<(&'static str, bool)> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1340 |     fn check_fields(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1352 |     fn validate_fields(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1363 |     fn check_byr(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1367 |     fn check_iyr(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1371 |     fn check_eyr(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1375 |     fn check_year_range(&self, field: &str, min: u64, max: u64) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1388 |     fn check_hgt(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1417 |     fn check_hcl(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1437 |     fn check_ecl(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1454 |     fn check_pid(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_num_range` is never used
[INFO] [stdout]     --> src/main.rs:1463:4
[INFO] [stdout]      |
[INFO] [stdout] 1463 | fn check_num_range(value: &str, min: u64, max: u64) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_num` is never used
[INFO] [stdout]     --> src/main.rs:1472:4
[INFO] [stdout]      |
[INFO] [stdout] 1472 | fn check_num(value: &str, required_len: usize) -> Result<u64, String> {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_passports` is never used
[INFO] [stdout]     --> src/main.rs:1484:4
[INFO] [stdout]      |
[INFO] [stdout] 1484 | fn read_passports(strings: &Vec<String>) -> Vec<PassportEntry> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day4_1` is never used
[INFO] [stdout]     --> src/main.rs:1506:4
[INFO] [stdout]      |
[INFO] [stdout] 1506 | fn day4_1(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day4_2` is never used
[INFO] [stdout]     --> src/main.rs:1518:4
[INFO] [stdout]      |
[INFO] [stdout] 1518 | fn day4_2(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day3_rules` is never used
[INFO] [stdout]     --> src/main.rs:1546:4
[INFO] [stdout]      |
[INFO] [stdout] 1546 | fn day3_rules() -> Vec<(i32, i32)> {
[INFO] [stdout]      |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day3_2` is never used
[INFO] [stdout]     --> src/main.rs:1557:4
[INFO] [stdout]      |
[INFO] [stdout] 1557 | fn day3_2(strings: &Vec<String>, rules: &Vec<(i32, i32)>) -> u64 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day3_1` is never used
[INFO] [stdout]     --> src/main.rs:1584:4
[INFO] [stdout]      |
[INFO] [stdout] 1584 | fn day3_1(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TREE` is never used
[INFO] [stdout]     --> src/main.rs:1601:8
[INFO] [stdout]      |
[INFO] [stdout] 1601 | static TREE: &'static str = "#";
[INFO] [stdout]      |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_for_trees` is never used
[INFO] [stdout]     --> src/main.rs:1602:4
[INFO] [stdout]      |
[INFO] [stdout] 1602 | fn check_for_trees(xpos: &i32, map: &str) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day2_1` is never used
[INFO] [stdout]     --> src/main.rs:1627:4
[INFO] [stdout]      |
[INFO] [stdout] 1627 | fn day2_1(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day2_2` is never used
[INFO] [stdout]     --> src/main.rs:1648:4
[INFO] [stdout]      |
[INFO] [stdout] 1648 | fn day2_2(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day1_1` is never used
[INFO] [stdout]     --> src/main.rs:1691:4
[INFO] [stdout]      |
[INFO] [stdout] 1691 | fn day1_1(numbers: Vec<i64>) -> u64 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day1_2` is never used
[INFO] [stdout]     --> src/main.rs:1705:4
[INFO] [stdout]      |
[INFO] [stdout] 1705 | fn day1_2(numbers: Vec<i64>) -> u64 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_signed` is never used
[INFO] [stdout]   --> src/utils.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn get_signed(filename: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_unsigned` is never used
[INFO] [stdout]   --> src/utils.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn get_unsigned(filename: &str) -> Vec<u64> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_unsigned` is never used
[INFO] [stdout]   --> src/utils.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn read_unsigned(lines: io::Lines<io::BufReader<File>>) -> Vec<u64> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_signed` is never used
[INFO] [stdout]   --> src/utils.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn read_signed(lines: io::Lines<io::BufReader<File>>) -> Vec<i64> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.79s
[INFO] running `Command { std: "docker" "inspect" "6c3427696be15e09e86607f836003a9ddb211182bbc2f99b46a2b4ef3f521a0b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6c3427696be15e09e86607f836003a9ddb211182bbc2f99b46a2b4ef3f521a0b", kill_on_drop: false }`
[INFO] [stdout] 6c3427696be15e09e86607f836003a9ddb211182bbc2f99b46a2b4ef3f521a0b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c64e95376e309e738acd3262dc321d097b86f8b5b797d658b682703356ebcbb8
[INFO] running `Command { std: "docker" "start" "-a" "c64e95376e309e738acd3262dc321d097b86f8b5b797d658b682703356ebcbb8", kill_on_drop: false }`
[INFO] [stderr]    Compiling aoc2020 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `min`
[INFO] [stdout]  --> src/main.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::cmp::{max, min};
[INFO] [stdout]   |                     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/main.rs:257:20
[INFO] [stdout]     |
[INFO] [stdout] 257 |                 if (wait < earliest) {
[INFO] [stdout]     |                    ^               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 257 -                 if (wait < earliest) {
[INFO] [stdout] 257 +                 if wait < earliest {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> src/main.rs:634:11
[INFO] [stdout]     |
[INFO] [stdout] 634 |     while (stable == false) {
[INFO] [stdout]     |           ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 634 -     while (stable == false) {
[INFO] [stdout] 634 +     while stable == false {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> src/main.rs:648:11
[INFO] [stdout]     |
[INFO] [stdout] 648 |     while (stable == false) {
[INFO] [stdout]     |           ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 648 -     while (stable == false) {
[INFO] [stdout] 648 +     while stable == false {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> src/main.rs:931:15
[INFO] [stdout]     |
[INFO] [stdout] 931 |         while (self.run) {
[INFO] [stdout]     |               ^        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 931 -         while (self.run) {
[INFO] [stdout] 931 +         while self.run {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/main.rs:70:14
[INFO] [stdout]    |
[INFO] [stdout] 70 |         for (a, count) in ing.a_map.iter() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/main.rs:269:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |     let mut result: u64 = 0;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 269 |     let mut result: u64 = 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: `searching`
[INFO] [stdout]    --> src/main.rs:781:13
[INFO] [stdout]     |
[INFO] [stdout] 781 |     let mut searching = true;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_searching`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:781:9
[INFO] [stdout]     |
[INFO] [stdout] 781 |     let mut searching = true;
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min`
[INFO] [stdout]    --> src/main.rs:810:13
[INFO] [stdout]     |
[INFO] [stdout] 810 |     let mut min: u64 = 0;
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:810:9
[INFO] [stdout]     |
[INFO] [stdout] 810 |     let mut min: u64 = 0;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/main.rs:956:23
[INFO] [stdout]     |
[INFO] [stdout] 956 |     fn nop(&mut self, val: i32) {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:986:21
[INFO] [stdout]     |
[INFO] [stdout] 986 |         if let Some(mut it) = self.code.get_mut(i) {
[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:1007:9
[INFO] [stdout]      |
[INFO] [stdout] 1007 |     for mut it in vm.code {
[INFO] [stdout]      |         ----^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num`
[INFO] [stdout]     --> src/main.rs:1047:14
[INFO] [stdout]      |
[INFO] [stdout] 1047 |         for (num, name) in r {
[INFO] [stdout]      |              ^^^ help: if this is intentional, prefix it with an underscore: `_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bagset`
[INFO] [stdout]     --> src/main.rs:1099:13
[INFO] [stdout]      |
[INFO] [stdout] 1099 |     let mut bagset: HashSet<String> = HashSet::new();
[INFO] [stdout]      |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bagset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:1098:9
[INFO] [stdout]      |
[INFO] [stdout] 1098 |     let mut rules: HashMap<String, Vec<(u8, String)>> = get_bag_rules(strings);
[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:1099:9
[INFO] [stdout]      |
[INFO] [stdout] 1099 |     let mut bagset: HashSet<String> = HashSet::new();
[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:1105:9
[INFO] [stdout]      |
[INFO] [stdout] 1105 |     let mut rules: HashMap<String, Vec<(u8, String)>> = get_bag_rules(strings);
[INFO] [stdout]      |         ----^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of variable of type `u64` to itself
[INFO] [stdout]    --> src/main.rs:197:24
[INFO] [stdout]     |
[INFO] [stdout] 197 |                 '0' => newvalue = newvalue,
[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 `day13_2` is never used
[INFO] [stdout]    --> src/main.rs:268:4
[INFO] [stdout]     |
[INFO] [stdout] 268 | fn day13_2(strings: &Vec<String>) -> u64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print` is never used
[INFO] [stdout]    --> src/main.rs:617:8
[INFO] [stdout]     |
[INFO] [stdout] 514 | impl SeatMap {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 617 |     fn print(&self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bag` and `contents` are never read
[INFO] [stdout]     --> src/main.rs:1040:5
[INFO] [stdout]      |
[INFO] [stdout] 1039 | pub struct BagRule {
[INFO] [stdout]      |            ------- fields in this struct
[INFO] [stdout] 1040 |     bag: String,
[INFO] [stdout]      |     ^^^
[INFO] [stdout] 1041 |     contents: Vec<(u8, String)>,
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day5_2` is never used
[INFO] [stdout]     --> src/main.rs:1252:4
[INFO] [stdout]      |
[INFO] [stdout] 1252 | fn day5_2(strings: &Vec<String>) -> u32 {
[INFO] [stdout]      |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TEST_FILE_R1` is never used
[INFO] [stdout]    --> src/main.rs:489:12
[INFO] [stdout]     |
[INFO] [stdout] 489 |     static TEST_FILE_R1: &str = "./test/test11_r1";
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TEST_FILE_R2` is never used
[INFO] [stdout]    --> src/main.rs:490:12
[INFO] [stdout]     |
[INFO] [stdout] 490 |     static TEST_FILE_R2: &str = "./test/test11_r2";
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TEST_FILE_R3` is never used
[INFO] [stdout]    --> src/main.rs:491:12
[INFO] [stdout]     |
[INFO] [stdout] 491 |     static TEST_FILE_R3: &str = "./test/test11_r3";
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.44s
[INFO] running `Command { std: "docker" "inspect" "c64e95376e309e738acd3262dc321d097b86f8b5b797d658b682703356ebcbb8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c64e95376e309e738acd3262dc321d097b86f8b5b797d658b682703356ebcbb8", kill_on_drop: false }`
[INFO] [stdout] c64e95376e309e738acd3262dc321d097b86f8b5b797d658b682703356ebcbb8
