[INFO] cloning repository https://github.com/jinbijin/advent-of-code-2022
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jinbijin/advent-of-code-2022" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjinbijin%2Fadvent-of-code-2022", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjinbijin%2Fadvent-of-code-2022'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7f7c87dc2f92db793f54bc78a64941f9bf3df0ac
[INFO] checking jinbijin/advent-of-code-2022 against master#32cd9114712a24010b0583624dc52ac302194128 for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjinbijin%2Fadvent-of-code-2022" "/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/jinbijin/advent-of-code-2022
[INFO] finished tweaking git repo https://github.com/jinbijin/advent-of-code-2022
[INFO] tweaked toml for git repo https://github.com/jinbijin/advent-of-code-2022 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jinbijin/advent-of-code-2022 on toolchain 32cd9114712a24010b0583624dc52ac302194128
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jinbijin/advent-of-code-2022 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" "+32cd9114712a24010b0583624dc52ac302194128" "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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 92accad0c93cb2d6148e84932ac248cbec20d96c84a12456f6b5f3863f464414
[INFO] running `Command { std: "docker" "start" "-a" "92accad0c93cb2d6148e84932ac248cbec20d96c84a12456f6b5f3863f464414", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "92accad0c93cb2d6148e84932ac248cbec20d96c84a12456f6b5f3863f464414", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "92accad0c93cb2d6148e84932ac248cbec20d96c84a12456f6b5f3863f464414", kill_on_drop: false }`
[INFO] [stdout] 92accad0c93cb2d6148e84932ac248cbec20d96c84a12456f6b5f3863f464414
[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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 152b44aa2165b386644782a1f085a6bd687935089de91955c9d19010ca8b3ad0
[INFO] running `Command { std: "docker" "start" "-a" "152b44aa2165b386644782a1f085a6bd687935089de91955c9d19010ca8b3ad0", kill_on_drop: false }`
[INFO] [stderr]     Checking advent-of-code-2022 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]   --> src/common/interval.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     EndBeforeStart { start: T, end: T },
[INFO] [stdout]    |     --------------   ^^^^^     ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuildIntervalError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ByChars` is never constructed
[INFO] [stdout]   --> src/parse/chars.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct ByChars<T>(pub Vec<T>);
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/parse/sections.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 54 |     Continue(char),
[INFO] [stdout]    |     -------- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContentSectionCharIterationResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 54 -     Continue(char),
[INFO] [stdout] 54 +     Continue(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/puzzles/no_space_left_on_device/file_tree.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct File {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 7 |     pub size: usize,
[INFO] [stdout] 8 |     pub name: String,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `File` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `opponent_choice` is never read
[INFO] [stdout]   --> src/puzzles/rock_paper_scissors/rps_match.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct RpsMatch {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 13 |     pub opponent_choice: RpsType,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `required` is never read
[INFO] [stdout]    --> src/puzzles/rock_paper_scissors/strategy.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |     Empty {
[INFO] [stdout]     |     ----- field in this variant
[INFO] [stdout] 112 |         required: True,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParseRpsStrategyError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VectorChunkIterator` is never constructed
[INFO] [stdout]    --> src/puzzles/rucksack_reorganization/lib.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct VectorChunkIterator<'a, const N: usize, T, U>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/puzzles/monkey_map/crazy_map.rs:224:19
[INFO] [stdout]     |
[INFO] [stdout] 224 |     fn transverse(&self) -> CrazyMapTransverser;
[INFO] [stdout]     |                   ^^^^^     ------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                   |
[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] 224 |     fn transverse(&self) -> CrazyMapTransverser<'_>;
[INFO] [stdout]     |                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/puzzles/monkey_map/crazy_map.rs:228:19
[INFO] [stdout]     |
[INFO] [stdout] 228 |     fn transverse(&self) -> CrazyMapTransverser {
[INFO] [stdout]     |                   ^^^^^     ------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                   |
[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] 228 |     fn transverse(&self) -> CrazyMapTransverser<'_> {
[INFO] [stdout]     |                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/puzzles/not_enough_minerals/potential_production.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn iter(&self) -> Iter<Resources, PotentialResources> {
[INFO] [stdout]    |                 ^^^^^     ----------------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |                 |
[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] 25 |     pub fn iter(&self) -> Iter<'_, Resources, PotentialResources> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/puzzles/regolith_reservoir/cave_in.rs:83:19
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn into_floor(&self) -> IntoFloor;
[INFO] [stdout]    |                   ^^^^^     --------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |                   |
[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] 83 |     fn into_floor(&self) -> IntoFloor<'_>;
[INFO] [stdout]    |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/puzzles/regolith_reservoir/cave_in.rs:87:19
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn into_floor(&self) -> IntoFloor {
[INFO] [stdout]    |                   ^^^^^     --------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |                   |
[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] 87 |     fn into_floor(&self) -> IntoFloor<'_> {
[INFO] [stdout]    |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/puzzles/rucksack_reorganization/lib.rs:74:25
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn compartments(&self) -> Vec<RucksackCompartment> {
[INFO] [stdout]    |                         ^^^^^         ------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |                         |
[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] 74 |     pub fn compartments(&self) -> Vec<RucksackCompartment<'_>> {
[INFO] [stdout]    |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]   --> src/common/interval.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     EndBeforeStart { start: T, end: T },
[INFO] [stdout]    |     --------------   ^^^^^     ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuildIntervalError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ByChars` is never constructed
[INFO] [stdout]   --> src/parse/chars.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct ByChars<T>(pub Vec<T>);
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/parse/sections.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 54 |     Continue(char),
[INFO] [stdout]    |     -------- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContentSectionCharIterationResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 54 -     Continue(char),
[INFO] [stdout] 54 +     Continue(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/puzzles/no_space_left_on_device/file_tree.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct File {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 7 |     pub size: usize,
[INFO] [stdout] 8 |     pub name: String,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `File` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `opponent_choice` is never read
[INFO] [stdout]   --> src/puzzles/rock_paper_scissors/rps_match.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct RpsMatch {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 13 |     pub opponent_choice: RpsType,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `required` is never read
[INFO] [stdout]    --> src/puzzles/rock_paper_scissors/strategy.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |     Empty {
[INFO] [stdout]     |     ----- field in this variant
[INFO] [stdout] 112 |         required: True,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParseRpsStrategyError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VectorChunkIterator` is never constructed
[INFO] [stdout]    --> src/puzzles/rucksack_reorganization/lib.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct VectorChunkIterator<'a, const N: usize, T, U>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/puzzles/monkey_map/crazy_map.rs:224:19
[INFO] [stdout]     |
[INFO] [stdout] 224 |     fn transverse(&self) -> CrazyMapTransverser;
[INFO] [stdout]     |                   ^^^^^     ------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                   |
[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] 224 |     fn transverse(&self) -> CrazyMapTransverser<'_>;
[INFO] [stdout]     |                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/puzzles/monkey_map/crazy_map.rs:228:19
[INFO] [stdout]     |
[INFO] [stdout] 228 |     fn transverse(&self) -> CrazyMapTransverser {
[INFO] [stdout]     |                   ^^^^^     ------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                   |
[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] 228 |     fn transverse(&self) -> CrazyMapTransverser<'_> {
[INFO] [stdout]     |                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/puzzles/not_enough_minerals/potential_production.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn iter(&self) -> Iter<Resources, PotentialResources> {
[INFO] [stdout]    |                 ^^^^^     ----------------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |                 |
[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] 25 |     pub fn iter(&self) -> Iter<'_, Resources, PotentialResources> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/puzzles/regolith_reservoir/cave_in.rs:83:19
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn into_floor(&self) -> IntoFloor;
[INFO] [stdout]    |                   ^^^^^     --------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |                   |
[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] 83 |     fn into_floor(&self) -> IntoFloor<'_>;
[INFO] [stdout]    |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/puzzles/regolith_reservoir/cave_in.rs:87:19
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn into_floor(&self) -> IntoFloor {
[INFO] [stdout]    |                   ^^^^^     --------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |                   |
[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] 87 |     fn into_floor(&self) -> IntoFloor<'_> {
[INFO] [stdout]    |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/puzzles/rucksack_reorganization/lib.rs:74:25
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn compartments(&self) -> Vec<RucksackCompartment> {
[INFO] [stdout]    |                         ^^^^^         ------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |                         |
[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] 74 |     pub fn compartments(&self) -> Vec<RucksackCompartment<'_>> {
[INFO] [stdout]    |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.58s
[INFO] running `Command { std: "docker" "inspect" "152b44aa2165b386644782a1f085a6bd687935089de91955c9d19010ca8b3ad0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "152b44aa2165b386644782a1f085a6bd687935089de91955c9d19010ca8b3ad0", kill_on_drop: false }`
[INFO] [stdout] 152b44aa2165b386644782a1f085a6bd687935089de91955c9d19010ca8b3ad0
