[INFO] cloning repository https://github.com/Ratismal/adventofcode2018 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Ratismal/adventofcode2018" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRatismal%2Fadventofcode2018", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRatismal%2Fadventofcode2018'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8ed412b3d04c39a2f6d7895d57fc2f1d9b39a759 [INFO] checking Ratismal/adventofcode2018 against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRatismal%2Fadventofcode2018" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Ratismal/adventofcode2018 on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Ratismal/adventofcode2018 [INFO] finished tweaking git repo https://github.com/Ratismal/adventofcode2018 [INFO] tweaked toml for git repo https://github.com/Ratismal/adventofcode2018 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Ratismal/adventofcode2018 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded aho-corasick v0.6.9 [INFO] [stderr] Downloaded memchr v2.1.1 [INFO] [stderr] Downloaded lazy_static v1.2.0 [INFO] [stderr] Downloaded regex v1.1.0 [INFO] [stderr] Downloaded regex-syntax v0.6.4 [INFO] [stderr] Downloaded libc v0.2.44 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 780c54ac82e888137b94b7eb3689e704b8f6923f8bdd3aca35e090243c84f53f [INFO] running `Command { std: "docker" "start" "-a" "780c54ac82e888137b94b7eb3689e704b8f6923f8bdd3aca35e090243c84f53f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "780c54ac82e888137b94b7eb3689e704b8f6923f8bdd3aca35e090243c84f53f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "780c54ac82e888137b94b7eb3689e704b8f6923f8bdd3aca35e090243c84f53f", kill_on_drop: false }` [INFO] [stdout] 780c54ac82e888137b94b7eb3689e704b8f6923f8bdd3aca35e090243c84f53f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 12406223c29ea3115eee64d3ca971fe580ae41099a72f39468b96370552088fc [INFO] running `Command { std: "docker" "start" "-a" "12406223c29ea3115eee64d3ca971fe580ae41099a72f39468b96370552088fc", kill_on_drop: false }` [INFO] [stderr] Compiling version_check v0.1.5 [INFO] [stderr] Compiling libc v0.2.44 [INFO] [stderr] Checking cfg-if v0.1.6 [INFO] [stderr] Checking lazy_static v1.2.0 [INFO] [stderr] Compiling regex v1.1.0 [INFO] [stderr] Checking ucd-util v0.1.3 [INFO] [stderr] Checking utf8-ranges v1.0.2 [INFO] [stderr] Checking regex-syntax v0.6.4 [INFO] [stderr] Checking thread_local v0.3.6 [INFO] [stderr] Compiling memchr v2.1.1 [INFO] [stderr] Checking aho-corasick v0.6.9 [INFO] [stderr] Checking adventofcode2018 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/puzzles/d8.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HEADER_CHILD` should have an upper camel case name [INFO] [stdout] --> src/puzzles/d8.rs:12:3 [INFO] [stdout] | [INFO] [stdout] 12 | HEADER_CHILD, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HeaderChild` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HEADER_META` should have an upper camel case name [INFO] [stdout] --> src/puzzles/d8.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 13 | HEADER_META, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `HeaderMeta` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/puzzles/puzzle.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | fn puzzle_a(&self, String) -> String; [INFO] [stdout] | ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/puzzles/puzzle.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | fn puzzle_b(&self, String) -> String; [INFO] [stdout] | ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/puzzles/d8.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HEADER_CHILD` should have an upper camel case name [INFO] [stdout] --> src/puzzles/d8.rs:12:3 [INFO] [stdout] | [INFO] [stdout] 12 | HEADER_CHILD, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HeaderChild` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HEADER_META` should have an upper camel case name [INFO] [stdout] --> src/puzzles/d8.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 13 | HEADER_META, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `HeaderMeta` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/puzzles/puzzle.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | fn puzzle_a(&self, String) -> String; [INFO] [stdout] | ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/puzzles/puzzle.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | fn puzzle_b(&self, String) -> String; [INFO] [stdout] | ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/puzzles/mod.rs:22:27 [INFO] [stdout] | [INFO] [stdout] 22 | let mut days: Vec> = Vec::new(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | let mut days: Vec> = Vec::new(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_right`: superseded by `trim_end` [INFO] [stdout] --> src/puzzles/mod.rs:63:25 [INFO] [stdout] | [INFO] [stdout] 63 | let trimmed = input.trim_right().to_string(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 63 | let trimmed = input.trim_end().to_string(); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d1.rs:39:21 [INFO] [stdout] | [INFO] [stdout] 39 | let mut i: i32 = line.parse().unwrap(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d4.rs:167:11 [INFO] [stdout] | [INFO] [stdout] 167 | let mut guard = guard_map.entry(id).or_insert(Guard { [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/puzzles/d6.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | let mut target = Point { [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/puzzles/d6.rs:79:11 [INFO] [stdout] | [INFO] [stdout] 79 | let mut point = Point { [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/puzzles/d6.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let mut point = Point { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/puzzles/mod.rs:22:27 [INFO] [stdout] | [INFO] [stdout] 22 | let mut days: Vec> = Vec::new(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | let mut days: Vec> = Vec::new(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/puzzles/d8.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | let mut state: State = State::HEADER_CHILD; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `child_nodes` [INFO] [stdout] --> src/puzzles/d8.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut child_nodes: u32; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `meta_elements` [INFO] [stdout] --> src/puzzles/d8.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut meta_elements: u32; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/puzzles/d8.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | for i in elements {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d8.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let mut state: State = State::HEADER_CHILD; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elements` [INFO] [stdout] --> src/puzzles/d8.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let elements = self.parse(&input); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_right`: superseded by `trim_end` [INFO] [stdout] --> src/puzzles/mod.rs:63:25 [INFO] [stdout] | [INFO] [stdout] 63 | let trimmed = input.trim_right().to_string(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 63 | let trimmed = input.trim_end().to_string(); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d1.rs:39:21 [INFO] [stdout] | [INFO] [stdout] 39 | let mut i: i32 = line.parse().unwrap(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/puzzles/d8.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `HEADER_META` and `META` are never constructed [INFO] [stdout] --> src/puzzles/d8.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 11 | enum State { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 12 | HEADER_CHILD, [INFO] [stdout] 13 | HEADER_META, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 14 | META, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `entry_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d4.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | static ref entry_re: Regex = [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `ENTRY_RE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `shift_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d4.rs:121:18 [INFO] [stdout] | [INFO] [stdout] 121 | static ref shift_re: Regex = Regex::new(r"^Guard #(\d+) begins shift$").unwrap(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `SHIFT_RE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `line_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d7.rs:93:18 [INFO] [stdout] | [INFO] [stdout] 93 | static ref line_re: Regex = [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `LINE_RE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d4.rs:167:11 [INFO] [stdout] | [INFO] [stdout] 167 | let mut guard = guard_map.entry(id).or_insert(Guard { [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/puzzles/d6.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | let mut target = Point { [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/puzzles/d6.rs:79:11 [INFO] [stdout] | [INFO] [stdout] 79 | let mut point = Point { [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/puzzles/d6.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let mut point = Point { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/puzzles/d8.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | let mut state: State = State::HEADER_CHILD; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `child_nodes` [INFO] [stdout] --> src/puzzles/d8.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut child_nodes: u32; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `meta_elements` [INFO] [stdout] --> src/puzzles/d8.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut meta_elements: u32; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/puzzles/d8.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | for i in elements {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d8.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let mut state: State = State::HEADER_CHILD; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elements` [INFO] [stdout] --> src/puzzles/d8.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let elements = self.parse(&input); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/puzzles/d8.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `HEADER_META` and `META` are never constructed [INFO] [stdout] --> src/puzzles/d8.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 11 | enum State { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 12 | HEADER_CHILD, [INFO] [stdout] 13 | HEADER_META, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 14 | META, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `entry_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d4.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | static ref entry_re: Regex = [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `ENTRY_RE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `shift_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d4.rs:121:18 [INFO] [stdout] | [INFO] [stdout] 121 | static ref shift_re: Regex = Regex::new(r"^Guard #(\d+) begins shift$").unwrap(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `SHIFT_RE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `line_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d7.rs:93:18 [INFO] [stdout] | [INFO] [stdout] 93 | static ref line_re: Regex = [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `LINE_RE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.86s [INFO] running `Command { std: "docker" "inspect" "12406223c29ea3115eee64d3ca971fe580ae41099a72f39468b96370552088fc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "12406223c29ea3115eee64d3ca971fe580ae41099a72f39468b96370552088fc", kill_on_drop: false }` [INFO] [stdout] 12406223c29ea3115eee64d3ca971fe580ae41099a72f39468b96370552088fc [INFO] checking Ratismal/adventofcode2018 against try#645bb72776a6a56a1a8f52631a44bd082b2ba509 for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRatismal%2Fadventofcode2018" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Ratismal/adventofcode2018 on toolchain 645bb72776a6a56a1a8f52631a44bd082b2ba509 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Ratismal/adventofcode2018 [INFO] finished tweaking git repo https://github.com/Ratismal/adventofcode2018 [INFO] tweaked toml for git repo https://github.com/Ratismal/adventofcode2018 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Ratismal/adventofcode2018 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" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 02aa215a9e3fd26891e57a18309a75d0ee980d23226848be46dacd16223bc482 [INFO] running `Command { std: "docker" "start" "-a" "02aa215a9e3fd26891e57a18309a75d0ee980d23226848be46dacd16223bc482", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "02aa215a9e3fd26891e57a18309a75d0ee980d23226848be46dacd16223bc482", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "02aa215a9e3fd26891e57a18309a75d0ee980d23226848be46dacd16223bc482", kill_on_drop: false }` [INFO] [stdout] 02aa215a9e3fd26891e57a18309a75d0ee980d23226848be46dacd16223bc482 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2958ed4fe9635886d60028fd8294e04243afb86641cc77acb52ff37daa2df533 [INFO] running `Command { std: "docker" "start" "-a" "2958ed4fe9635886d60028fd8294e04243afb86641cc77acb52ff37daa2df533", kill_on_drop: false }` [INFO] [stderr] Compiling version_check v0.1.5 [INFO] [stderr] Compiling libc v0.2.44 [INFO] [stderr] Checking cfg-if v0.1.6 [INFO] [stderr] Checking ucd-util v0.1.3 [INFO] [stderr] Checking lazy_static v1.2.0 [INFO] [stderr] Compiling regex v1.1.0 [INFO] [stderr] Checking utf8-ranges v1.0.2 [INFO] [stderr] Checking thread_local v0.3.6 [INFO] [stderr] Checking regex-syntax v0.6.4 [INFO] [stderr] Compiling memchr v2.1.1 [INFO] [stderr] Checking aho-corasick v0.6.9 [INFO] [stderr] Checking adventofcode2018 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/puzzles/d8.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HEADER_CHILD` should have an upper camel case name [INFO] [stdout] --> src/puzzles/d8.rs:12:3 [INFO] [stdout] | [INFO] [stdout] 12 | HEADER_CHILD, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HeaderChild` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HEADER_META` should have an upper camel case name [INFO] [stdout] --> src/puzzles/d8.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 13 | HEADER_META, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `HeaderMeta` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/puzzles/puzzle.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | fn puzzle_a(&self, String) -> String; [INFO] [stdout] | ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/puzzles/puzzle.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | fn puzzle_b(&self, String) -> String; [INFO] [stdout] | ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/puzzles/d8.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HEADER_CHILD` should have an upper camel case name [INFO] [stdout] --> src/puzzles/d8.rs:12:3 [INFO] [stdout] | [INFO] [stdout] 12 | HEADER_CHILD, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HeaderChild` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HEADER_META` should have an upper camel case name [INFO] [stdout] --> src/puzzles/d8.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 13 | HEADER_META, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `HeaderMeta` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/puzzles/puzzle.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | fn puzzle_a(&self, String) -> String; [INFO] [stdout] | ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/puzzles/puzzle.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | fn puzzle_b(&self, String) -> String; [INFO] [stdout] | ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/puzzles/mod.rs:22:27 [INFO] [stdout] | [INFO] [stdout] 22 | let mut days: Vec> = Vec::new(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | let mut days: Vec> = Vec::new(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_right`: superseded by `trim_end` [INFO] [stdout] --> src/puzzles/mod.rs:63:25 [INFO] [stdout] | [INFO] [stdout] 63 | let trimmed = input.trim_right().to_string(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 63 | let trimmed = input.trim_end().to_string(); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d1.rs:39:21 [INFO] [stdout] | [INFO] [stdout] 39 | let mut i: i32 = line.parse().unwrap(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d4.rs:167:11 [INFO] [stdout] | [INFO] [stdout] 167 | let mut guard = guard_map.entry(id).or_insert(Guard { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/puzzles/mod.rs:22:27 [INFO] [stdout] | [INFO] [stdout] 22 | let mut days: Vec> = Vec::new(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | let mut days: Vec> = Vec::new(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d6.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | let mut target = Point { [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/puzzles/d6.rs:79:11 [INFO] [stdout] | [INFO] [stdout] 79 | let mut point = Point { [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/puzzles/d6.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let mut point = Point { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_right`: superseded by `trim_end` [INFO] [stdout] --> src/puzzles/mod.rs:63:25 [INFO] [stdout] | [INFO] [stdout] 63 | let trimmed = input.trim_right().to_string(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 63 | let trimmed = input.trim_end().to_string(); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d1.rs:39:21 [INFO] [stdout] | [INFO] [stdout] 39 | let mut i: i32 = line.parse().unwrap(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/puzzles/d8.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | let mut state: State = State::HEADER_CHILD; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `child_nodes` [INFO] [stdout] --> src/puzzles/d8.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut child_nodes: u32; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `meta_elements` [INFO] [stdout] --> src/puzzles/d8.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut meta_elements: u32; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/puzzles/d8.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | for i in elements {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d8.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let mut state: State = State::HEADER_CHILD; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elements` [INFO] [stdout] --> src/puzzles/d8.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let elements = self.parse(&input); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/puzzles/d8.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `HEADER_META` and `META` are never constructed [INFO] [stdout] --> src/puzzles/d8.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 11 | enum State { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 12 | HEADER_CHILD, [INFO] [stdout] 13 | HEADER_META, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 14 | META, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `entry_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d4.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | static ref entry_re: Regex = [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `ENTRY_RE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `shift_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d4.rs:121:18 [INFO] [stdout] | [INFO] [stdout] 121 | static ref shift_re: Regex = Regex::new(r"^Guard #(\d+) begins shift$").unwrap(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `SHIFT_RE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `line_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d7.rs:93:18 [INFO] [stdout] | [INFO] [stdout] 93 | static ref line_re: Regex = [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `LINE_RE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d4.rs:167:11 [INFO] [stdout] | [INFO] [stdout] 167 | let mut guard = guard_map.entry(id).or_insert(Guard { [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/puzzles/d6.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | let mut target = Point { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d6.rs:79:11 [INFO] [stdout] | [INFO] [stdout] 79 | let mut point = Point { [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/puzzles/d6.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let mut point = Point { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/puzzles/d8.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | let mut state: State = State::HEADER_CHILD; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `child_nodes` [INFO] [stdout] --> src/puzzles/d8.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut child_nodes: u32; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `meta_elements` [INFO] [stdout] --> src/puzzles/d8.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut meta_elements: u32; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/puzzles/d8.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | for i in elements {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/puzzles/d8.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let mut state: State = State::HEADER_CHILD; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elements` [INFO] [stdout] --> src/puzzles/d8.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let elements = self.parse(&input); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/puzzles/d8.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `HEADER_META` and `META` are never constructed [INFO] [stdout] --> src/puzzles/d8.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 11 | enum State { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 12 | HEADER_CHILD, [INFO] [stdout] 13 | HEADER_META, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 14 | META, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `entry_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d4.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | static ref entry_re: Regex = [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `ENTRY_RE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `shift_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d4.rs:121:18 [INFO] [stdout] | [INFO] [stdout] 121 | static ref shift_re: Regex = Regex::new(r"^Guard #(\d+) begins shift$").unwrap(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `SHIFT_RE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `line_re` should have an upper case name [INFO] [stdout] --> src/puzzles/d7.rs:93:18 [INFO] [stdout] | [INFO] [stdout] 93 | static ref line_re: Regex = [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `LINE_RE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.77s [INFO] running `Command { std: "docker" "inspect" "2958ed4fe9635886d60028fd8294e04243afb86641cc77acb52ff37daa2df533", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2958ed4fe9635886d60028fd8294e04243afb86641cc77acb52ff37daa2df533", kill_on_drop: false }` [INFO] [stdout] 2958ed4fe9635886d60028fd8294e04243afb86641cc77acb52ff37daa2df533