[INFO] cloning repository https://github.com/qingwei91/adventofcode-2023
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/qingwei91/adventofcode-2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqingwei91%2Fadventofcode-2023", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqingwei91%2Fadventofcode-2023'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1f394e8c8da5540c9838bfcdd2206c5fe182c157
[INFO] checking qingwei91/adventofcode-2023 against try#5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqingwei91%2Fadventofcode-2023" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/qingwei91/adventofcode-2023
[INFO] finished tweaking git repo https://github.com/qingwei91/adventofcode-2023
[INFO] tweaked toml for git repo https://github.com/qingwei91/adventofcode-2023 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/qingwei91/adventofcode-2023 on toolchain 5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/qingwei91/adventofcode-2023 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" "+5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] Error response from daemon: mkdir /var/lib/docker/overlay2/acec0426fa4177f83bbdec5c94b6a92e6d6f856d3e87a11164d83330a1a02d89-init/merged/dev/pts: no space left on device
[INFO] checking qingwei91/adventofcode-2023 against try#5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqingwei91%2Fadventofcode-2023" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] [stderr] fatal: sha1 file '/workspace/builds/worker-7-tc2/source/.git/index.lock' write error. Out of diskspace
[INFO] [stderr] warning: Clone succeeded, but checkout failed.
[INFO] [stderr] You can inspect what was checked out with 'git status'
[INFO] [stderr] and retry with 'git restore --source=HEAD :/'
[INFO] [stderr] 
[INFO] checking qingwei91/adventofcode-2023 against try#5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqingwei91%2Fadventofcode-2023" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] [stderr] error: unable to write file src/day_5.rs
[INFO] [stderr] error: unable to write file src/main.rs
[INFO] [stderr] fatal: unable to checkout working tree
[INFO] [stderr] warning: Clone succeeded, but checkout failed.
[INFO] [stderr] You can inspect what was checked out with 'git status'
[INFO] [stderr] and retry with 'git restore --source=HEAD :/'
[INFO] [stderr] 
[INFO] checking qingwei91/adventofcode-2023 against try#5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqingwei91%2Fadventofcode-2023" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] [stderr] fatal: cannot create directory at 'src': No space left on device
[INFO] [stderr] warning: Clone succeeded, but checkout failed.
[INFO] [stderr] You can inspect what was checked out with 'git status'
[INFO] [stderr] and retry with 'git restore --source=HEAD :/'
[INFO] [stderr] 
[INFO] checking qingwei91/adventofcode-2023 against try#5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqingwei91%2Fadventofcode-2023" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/qingwei91/adventofcode-2023
[INFO] finished tweaking git repo https://github.com/qingwei91/adventofcode-2023
[INFO] tweaked toml for git repo https://github.com/qingwei91/adventofcode-2023 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/qingwei91/adventofcode-2023 on toolchain 5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/qingwei91/adventofcode-2023 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" "+5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 50fe79bb5446a6554e3796d048b6c204c83b8473557d8d6d6bb560bf900f41ef
[INFO] running `Command { std: "docker" "start" "-a" "50fe79bb5446a6554e3796d048b6c204c83b8473557d8d6d6bb560bf900f41ef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "50fe79bb5446a6554e3796d048b6c204c83b8473557d8d6d6bb560bf900f41ef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "50fe79bb5446a6554e3796d048b6c204c83b8473557d8d6d6bb560bf900f41ef", kill_on_drop: false }`
[INFO] [stdout] 50fe79bb5446a6554e3796d048b6c204c83b8473557d8d6d6bb560bf900f41ef
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+5ef65a4ed75279dc1b7a26cedc27293a9f4ca8db" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 77ddd731fceea0c657b11161da80e24f88f737616bcc7c2349a5cf5cc2433042
[INFO] running `Command { std: "docker" "start" "-a" "77ddd731fceea0c657b11161da80e24f88f737616bcc7c2349a5cf5cc2433042", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]     Checking memchr v2.6.4
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking num-complex v0.4.4
[INFO] [stderr]     Checking num v0.4.1
[INFO] [stderr]     Checking adventofcode2023 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Parser`
[INFO] [stdout]  --> src/day_4.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use nom::{IResult, Parser};
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_state` is never read
[INFO] [stdout]   --> src/day_1.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |             current_state = MatchingWord::default();
[INFO] [stdout]    |             ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Parser`
[INFO] [stdout]  --> src/day_4.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use nom::{IResult, Parser};
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_state` is never read
[INFO] [stdout]   --> src/day_1.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |             current_state = MatchingWord::default();
[INFO] [stdout]    |             ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_1a` is never used
[INFO] [stdout]  --> src/day_1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn day_1a() {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DIGIT_WORDS` is never used
[INFO] [stdout]   --> src/day_1.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub static DIGIT_WORDS: [&str; 10] = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"];
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MatchingWord` is never constructed
[INFO] [stdout]   --> src/day_1.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct MatchingWord {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_digit` is never used
[INFO] [stdout]   --> src/day_1.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn find_digit(a: &str, reverse: bool) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_1b` is never used
[INFO] [stdout]   --> src/day_1.rs:93:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn day_1b() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Draw` is never constructed
[INFO] [stdout]   --> src/day_2.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct Draw {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Game` is never constructed
[INFO] [stdout]   --> src/day_2.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct Game {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `power` is never used
[INFO] [stdout]   --> src/day_2.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Game {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] 26 |     fn power(&self) -> u32 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_number` is never used
[INFO] [stdout]   --> src/day_2.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn parse_number(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_color` is never used
[INFO] [stdout]   --> src/day_2.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn parse_color(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_cube_count` is never used
[INFO] [stdout]   --> src/day_2.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn parse_cube_count(input: &str) -> IResult<&str, (u32, &str)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_draw` is never used
[INFO] [stdout]   --> src/day_2.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn parse_draw(input: &str) -> IResult<&str, Draw> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_game` is never used
[INFO] [stdout]   --> src/day_2.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn parse_game(input: &str) -> IResult<&str, Game> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate` is never used
[INFO] [stdout]   --> src/day_2.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn validate(truth: &Draw, draw: &Draw) -> bool {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_2a` is never used
[INFO] [stdout]   --> src/day_2.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn day_2a() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_2b` is never used
[INFO] [stdout]   --> src/day_2.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn day_2b() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `1` is never read
[INFO] [stdout]   --> src/day_3.rs:16:33
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct IndexedStr<'a> (&'a str, u32);
[INFO] [stdout]    |        ----------               ^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `IndexedStr` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Ele` is never used
[INFO] [stdout]   --> src/day_3.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 19 | enum Ele {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_dots` is never used
[INFO] [stdout]   --> src/day_3.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_dots(input:IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_symbol` is never used
[INFO] [stdout]   --> src/day_3.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn parse_symbol(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_gear` is never used
[INFO] [stdout]   --> src/day_3.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn parse_gear(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_number` is never used
[INFO] [stdout]   --> src/day_3.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn parse_number(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SingleLine` is never constructed
[INFO] [stdout]   --> src/day_3.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | struct SingleLine{
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_single_line_a` is never used
[INFO] [stdout]   --> src/day_3.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn parse_single_line_a(input: &str) -> SingleLine {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_single_line_b` is never used
[INFO] [stdout]   --> src/day_3.rs:99:4
[INFO] [stdout]    |
[INFO] [stdout] 99 | fn parse_single_line_b(input: &str) -> SingleLine {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `accumulate_2lines_a` is never used
[INFO] [stdout]    --> src/day_3.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn accumulate_2lines_a(a: &SingleLine, b: &SingleLine, line_no_of_b: usize) -> HashMap<String, u32> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `accumulate_3lines` is never used
[INFO] [stdout]    --> src/day_3.rs:166:4
[INFO] [stdout]     |
[INFO] [stdout] 166 | fn accumulate_3lines(a: &SingleLine, b: &SingleLine, c: &SingleLine, line_c: usize) -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_3a` is never used
[INFO] [stdout]    --> src/day_3.rs:213:8
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub fn day_3a() {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_3b` is never used
[INFO] [stdout]    --> src/day_3.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn day_3b() {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Hand` is never constructed
[INFO] [stdout]   --> src/day_4.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct Hand {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `winning_hands`, `points`, and `scratch_cards` are never used
[INFO] [stdout]   --> src/day_4.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Hand {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] 22 |     fn winning_hands(self: &Hand) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn points(self: &Hand) -> u32 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn scratch_cards(self: &Hand, card_winning: &mut HashMap<u32, BigInt>) -> BigInt {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_number` is never used
[INFO] [stdout]   --> src/day_4.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn parse_number(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_numbers` is never used
[INFO] [stdout]   --> src/day_4.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn parse_numbers<const C: usize>(input: &str) -> IResult<&str, [u32; C]> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_hand` is never used
[INFO] [stdout]   --> src/day_4.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn parse_hand(input: &str) -> IResult<&str, Hand> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_4a` is never used
[INFO] [stdout]   --> src/day_4.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn day_4a() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_4b` is never used
[INFO] [stdout]   --> src/day_4.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn day_4b() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `residual` is never read
[INFO] [stdout]   --> src/day_5.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 29 |     NotInRange{residual: (u64, u64)},
[INFO] [stdout]    |     ---------- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find` is never used
[INFO] [stdout]   --> src/day_5.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl LeMap {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 58 |     fn find(&self, key: u64) -> u64 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_5a` is never used
[INFO] [stdout]    --> src/day_5.rs:174:8
[INFO] [stdout]     |
[INFO] [stdout] 174 | pub fn day_5a() {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/day_3.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_dots(input:IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |                     ^^^^^^^^^^             ----------             ----- the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     |                      |
[INFO] [stdout]    |                     |                      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_dots(input:IndexedStr<'_>) -> IResult<IndexedStr<'_>, Ele, Error<& str>> {
[INFO] [stdout]    |                               ++++                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/day_3.rs:31:24
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn parse_symbol(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |                        ^^^^^^^^^^             ----------             ----- the lifetimes get resolved as `'_`
[INFO] [stdout]    |                        |                      |
[INFO] [stdout]    |                        |                      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn parse_symbol(input: IndexedStr<'_>) -> IResult<IndexedStr<'_>, Ele, Error<& str>> {
[INFO] [stdout]    |                                  ++++                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/day_3.rs:36:22
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn parse_gear(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |                      ^^^^^^^^^^             ----------             ----- the lifetimes get resolved as `'_`
[INFO] [stdout]    |                      |                      |
[INFO] [stdout]    |                      |                      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn parse_gear(input: IndexedStr<'_>) -> IResult<IndexedStr<'_>, Ele, Error<& str>> {
[INFO] [stdout]    |                                ++++                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/day_3.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn parse_number(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |                        ^^^^^^^^^^             ----------             ----- the lifetimes get resolved as `'_`
[INFO] [stdout]    |                        |                      |
[INFO] [stdout]    |                        |                      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn parse_number(input: IndexedStr<'_>) -> IResult<IndexedStr<'_>, Ele, Error<& str>> {
[INFO] [stdout]    |                                  ++++                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_1a` is never used
[INFO] [stdout]  --> src/day_1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn day_1a() {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DIGIT_WORDS` is never used
[INFO] [stdout]   --> src/day_1.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub static DIGIT_WORDS: [&str; 10] = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"];
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MatchingWord` is never constructed
[INFO] [stdout]   --> src/day_1.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct MatchingWord {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_digit` is never used
[INFO] [stdout]   --> src/day_1.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn find_digit(a: &str, reverse: bool) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_1b` is never used
[INFO] [stdout]   --> src/day_1.rs:93:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn day_1b() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Draw` is never constructed
[INFO] [stdout]   --> src/day_2.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct Draw {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Game` is never constructed
[INFO] [stdout]   --> src/day_2.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct Game {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `power` is never used
[INFO] [stdout]   --> src/day_2.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Game {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] 26 |     fn power(&self) -> u32 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_number` is never used
[INFO] [stdout]   --> src/day_2.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn parse_number(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_color` is never used
[INFO] [stdout]   --> src/day_2.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn parse_color(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_cube_count` is never used
[INFO] [stdout]   --> src/day_2.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn parse_cube_count(input: &str) -> IResult<&str, (u32, &str)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_draw` is never used
[INFO] [stdout]   --> src/day_2.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn parse_draw(input: &str) -> IResult<&str, Draw> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_game` is never used
[INFO] [stdout]   --> src/day_2.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn parse_game(input: &str) -> IResult<&str, Game> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate` is never used
[INFO] [stdout]   --> src/day_2.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn validate(truth: &Draw, draw: &Draw) -> bool {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_2a` is never used
[INFO] [stdout]   --> src/day_2.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn day_2a() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_2b` is never used
[INFO] [stdout]   --> src/day_2.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn day_2b() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `1` is never read
[INFO] [stdout]   --> src/day_3.rs:16:33
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct IndexedStr<'a> (&'a str, u32);
[INFO] [stdout]    |        ----------               ^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `IndexedStr` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Ele` is never used
[INFO] [stdout]   --> src/day_3.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 19 | enum Ele {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_dots` is never used
[INFO] [stdout]   --> src/day_3.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_dots(input:IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_symbol` is never used
[INFO] [stdout]   --> src/day_3.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn parse_symbol(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_gear` is never used
[INFO] [stdout]   --> src/day_3.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn parse_gear(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_number` is never used
[INFO] [stdout]   --> src/day_3.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn parse_number(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SingleLine` is never constructed
[INFO] [stdout]   --> src/day_3.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | struct SingleLine{
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_single_line_a` is never used
[INFO] [stdout]   --> src/day_3.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn parse_single_line_a(input: &str) -> SingleLine {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_single_line_b` is never used
[INFO] [stdout]   --> src/day_3.rs:99:4
[INFO] [stdout]    |
[INFO] [stdout] 99 | fn parse_single_line_b(input: &str) -> SingleLine {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `accumulate_2lines_a` is never used
[INFO] [stdout]    --> src/day_3.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn accumulate_2lines_a(a: &SingleLine, b: &SingleLine, line_no_of_b: usize) -> HashMap<String, u32> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `accumulate_3lines` is never used
[INFO] [stdout]    --> src/day_3.rs:166:4
[INFO] [stdout]     |
[INFO] [stdout] 166 | fn accumulate_3lines(a: &SingleLine, b: &SingleLine, c: &SingleLine, line_c: usize) -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_3a` is never used
[INFO] [stdout]    --> src/day_3.rs:213:8
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub fn day_3a() {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_3b` is never used
[INFO] [stdout]    --> src/day_3.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn day_3b() {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Hand` is never constructed
[INFO] [stdout]   --> src/day_4.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct Hand {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `winning_hands`, `points`, and `scratch_cards` are never used
[INFO] [stdout]   --> src/day_4.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Hand {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] 22 |     fn winning_hands(self: &Hand) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn points(self: &Hand) -> u32 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn scratch_cards(self: &Hand, card_winning: &mut HashMap<u32, BigInt>) -> BigInt {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_number` is never used
[INFO] [stdout]   --> src/day_4.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn parse_number(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_numbers` is never used
[INFO] [stdout]   --> src/day_4.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn parse_numbers<const C: usize>(input: &str) -> IResult<&str, [u32; C]> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_hand` is never used
[INFO] [stdout]   --> src/day_4.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn parse_hand(input: &str) -> IResult<&str, Hand> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_4a` is never used
[INFO] [stdout]   --> src/day_4.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn day_4a() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_4b` is never used
[INFO] [stdout]   --> src/day_4.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn day_4b() {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `residual` is never read
[INFO] [stdout]   --> src/day_5.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 29 |     NotInRange{residual: (u64, u64)},
[INFO] [stdout]    |     ---------- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find` is never used
[INFO] [stdout]   --> src/day_5.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl LeMap {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 58 |     fn find(&self, key: u64) -> u64 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day_5a` is never used
[INFO] [stdout]    --> src/day_5.rs:174:8
[INFO] [stdout]     |
[INFO] [stdout] 174 | pub fn day_5a() {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/day_3.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_dots(input:IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |                     ^^^^^^^^^^             ----------             ----- the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     |                      |
[INFO] [stdout]    |                     |                      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_dots(input:IndexedStr<'_>) -> IResult<IndexedStr<'_>, Ele, Error<& str>> {
[INFO] [stdout]    |                               ++++                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/day_3.rs:31:24
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn parse_symbol(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |                        ^^^^^^^^^^             ----------             ----- the lifetimes get resolved as `'_`
[INFO] [stdout]    |                        |                      |
[INFO] [stdout]    |                        |                      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn parse_symbol(input: IndexedStr<'_>) -> IResult<IndexedStr<'_>, Ele, Error<& str>> {
[INFO] [stdout]    |                                  ++++                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/day_3.rs:36:22
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn parse_gear(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |                      ^^^^^^^^^^             ----------             ----- the lifetimes get resolved as `'_`
[INFO] [stdout]    |                      |                      |
[INFO] [stdout]    |                      |                      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn parse_gear(input: IndexedStr<'_>) -> IResult<IndexedStr<'_>, Ele, Error<& str>> {
[INFO] [stdout]    |                                ++++                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/day_3.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn parse_number(input: IndexedStr) -> IResult<IndexedStr, Ele, Error<& str>> {
[INFO] [stdout]    |                        ^^^^^^^^^^             ----------             ----- the lifetimes get resolved as `'_`
[INFO] [stdout]    |                        |                      |
[INFO] [stdout]    |                        |                      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn parse_number(input: IndexedStr<'_>) -> IResult<IndexedStr<'_>, Ele, Error<& str>> {
[INFO] [stdout]    |                                  ++++                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.34s
[INFO] running `Command { std: "docker" "inspect" "77ddd731fceea0c657b11161da80e24f88f737616bcc7c2349a5cf5cc2433042", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "77ddd731fceea0c657b11161da80e24f88f737616bcc7c2349a5cf5cc2433042", kill_on_drop: false }`
[INFO] [stdout] 77ddd731fceea0c657b11161da80e24f88f737616bcc7c2349a5cf5cc2433042
