[INFO] cloning repository https://github.com/dwendelen/adventofcode_2022 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dwendelen/adventofcode_2022" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdwendelen%2Fadventofcode_2022", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdwendelen%2Fadventofcode_2022'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c1effe6a9bb837084a0563b3e15b25d3d63a85dd [INFO] checking dwendelen/adventofcode_2022 against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdwendelen%2Fadventofcode_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] validating manifest of git repo https://github.com/dwendelen/adventofcode_2022 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/dwendelen/adventofcode_2022 [INFO] finished tweaking git repo https://github.com/dwendelen/adventofcode_2022 [INFO] tweaked toml for git repo https://github.com/dwendelen/adventofcode_2022 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/dwendelen/adventofcode_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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] db70eea11c49d1793302a67e6f2e494074d354ee258e197b468156e1e9ca81e0 [INFO] running `Command { std: "docker" "start" "-a" "db70eea11c49d1793302a67e6f2e494074d354ee258e197b468156e1e9ca81e0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "db70eea11c49d1793302a67e6f2e494074d354ee258e197b468156e1e9ca81e0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "db70eea11c49d1793302a67e6f2e494074d354ee258e197b468156e1e9ca81e0", kill_on_drop: false }` [INFO] [stdout] db70eea11c49d1793302a67e6f2e494074d354ee258e197b468156e1e9ca81e0 [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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f1d6dd742e905215dea852ae875b07c3c0f6dd7ef05670837f7a43d91d200ad2 [INFO] running `Command { std: "docker" "start" "-a" "f1d6dd742e905215dea852ae875b07c3c0f6dd7ef05670837f7a43d91d200ad2", kill_on_drop: false }` [INFO] [stderr] Checking regex-syntax v0.6.28 [INFO] [stderr] Checking aho-corasick v0.7.20 [INFO] [stderr] Checking regex v1.7.0 [INFO] [stderr] Checking adventofcode_2022 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::cmp::Ordering::Less` [INFO] [stdout] --> src/day13/day13_b.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::Ordering::Less; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `map_chunk` is never used [INFO] [stdout] --> src/day13/day13_b.rs:34:4 [INFO] [stdout] | [INFO] [stdout] 34 | fn map_chunk(lines: &[String]) -> (Node, Node) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/day21/day21_b.rs:196:27 [INFO] [stdout] | [INFO] [stdout] 196 | fn apply(self: &Self, l: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/day21/day21_b.rs:196:35 [INFO] [stdout] | [INFO] [stdout] 196 | fn apply(self: &Self, l: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eq` [INFO] [stdout] --> src/day21/day21_b.rs:200:29 [INFO] [stdout] | [INFO] [stdout] 200 | fn solve_l(self: &Self, eq: i64, r: i64) -> i64 { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_eq` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/day21/day21_b.rs:200:38 [INFO] [stdout] | [INFO] [stdout] 200 | fn solve_l(self: &Self, eq: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eq` [INFO] [stdout] --> src/day21/day21_b.rs:204:29 [INFO] [stdout] | [INFO] [stdout] 204 | fn solve_r(self: &Self, eq: i64, l: i64) -> i64 { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_eq` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/day21/day21_b.rs:204:38 [INFO] [stdout] | [INFO] [stdout] 204 | fn solve_r(self: &Self, eq: i64, l: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::raw::gid_t` [INFO] [stdout] --> src/day22/day22_a.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::raw::gid_t; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::os::unix::raw::gid_t`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions [INFO] [stdout] --> src/day22/day22_a.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::raw::gid_t; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::LinkedList` [INFO] [stdout] --> src/day20/day20_a.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Rem` [INFO] [stdout] --> src/day20/day20_a.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Rem; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day20/day20_a.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn print(current: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day19/day19_a.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::LinkedList` [INFO] [stdout] --> src/day20/day20_b.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Rem` [INFO] [stdout] --> src/day20/day20_b.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Rem; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day20/day20_b.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn print(current: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::raw::gid_t` [INFO] [stdout] --> src/day22/day22_a.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::raw::gid_t; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering::Less` [INFO] [stdout] --> src/day13/day13_b.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::Ordering::Less; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::os::unix::raw::gid_t`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions [INFO] [stdout] --> src/day22/day22_a.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::raw::gid_t; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/day21/day21_a.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | op: |a,b| panic!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/day21/day21_a.rs:33:28 [INFO] [stdout] | [INFO] [stdout] 33 | op: |a,b| panic!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `map_chunk` is never used [INFO] [stdout] --> src/day13/day13_b.rs:34:4 [INFO] [stdout] | [INFO] [stdout] 34 | fn map_chunk(lines: &[String]) -> (Node, Node) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day17/day17_a.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Captures`, `Regex` [INFO] [stdout] --> src/day17/day17_a.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::{Captures, Regex}; [INFO] [stdout] | ^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day17/day17_a.rs:85:37 [INFO] [stdout] | [INFO] [stdout] 85 | max_y = max((y + j), max_y); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 85 - max_y = max((y + j), max_y); [INFO] [stdout] 85 + max_y = max(y + j, max_y); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day17/day17_a.rs:107:4 [INFO] [stdout] | [INFO] [stdout] 107 | fn print(state: &Vec, yy: i32, block: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/day16/day16_b.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | if(state.persons[other_person].time != 999) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - if(state.persons[other_person].time != 999) { [INFO] [stdout] 108 + if state.persons[other_person].time != 999 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::binary_heap::Iter` [INFO] [stdout] --> src/day12/day12_b.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::binary_heap::Iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day19/day19_b.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/day21/day21_a.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | op: |a,b| panic!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/day21/day21_a.rs:33:28 [INFO] [stdout] | [INFO] [stdout] 33 | op: |a,b| panic!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/day16/day16_b.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | if(state.persons[other_person].time != 999) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - if(state.persons[other_person].time != 999) { [INFO] [stdout] 108 + if state.persons[other_person].time != 999 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::LinkedList` [INFO] [stdout] --> src/day20/day20_a.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Rem` [INFO] [stdout] --> src/day20/day20_a.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Rem; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/day15/day15_b.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/day15/day15_b.rs:62:23 [INFO] [stdout] | [INFO] [stdout] 62 | simplify(match(tree) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 62 - simplify(match(tree) { [INFO] [stdout] 62 + simplify(match tree { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/day15/day15_b.rs:149:15 [INFO] [stdout] | [INFO] [stdout] 149 | if(get_val(tree, 0, search_space, 0, search_space, x, y)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 149 - if(get_val(tree, 0, search_space, 0, search_space, x, y)) { [INFO] [stdout] 149 + if get_val(tree, 0, search_space, 0, search_space, x, y) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_b.rs:219:65 [INFO] [stdout] | [INFO] [stdout] 219 | ... return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, v... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 219 - return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 219 + return Tree::range2(range_l, range_r, range_b, range_t, i32::MIN / 4, -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_b.rs:219:98 [INFO] [stdout] | [INFO] [stdout] 219 | ... return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, v... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 219 - return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 219 + return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), i32::MIN / 4, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day20/day20_a.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn print(current: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day15/day15_b.rs:146:4 [INFO] [stdout] | [INFO] [stdout] 146 | fn print(tree: &Tree, search_space: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_val` is never used [INFO] [stdout] --> src/day15/day15_b.rs:159:4 [INFO] [stdout] | [INFO] [stdout] 159 | fn get_val(tree: &Tree, grid_l: i32, grid_r: i32, grid_b: i32, grid_t: i32, x: i32, y: i32) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `range` and `range2` are never used [INFO] [stdout] --> src/day15/day15_b.rs:218:8 [INFO] [stdout] | [INFO] [stdout] 217 | impl Tree { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 218 | fn range(range_l: i32, range_r: i32, range_b: i32, range_t: i32, val_in: bool, val_out: bool) -> Tree { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | fn range2(range_l: i32, range_r: i32, range_b: i32, range_t: i32, grid_l: i32, grid_r: i32, grid_b: i32, grid_t: i32, val_in: bool, v... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/day15/day15_a.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_a.rs:51:18 [INFO] [stdout] | [INFO] [stdout] 51 | print(&root, (i32::MIN / 4), -(i32::MIN / 4)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 51 - print(&root, (i32::MIN / 4), -(i32::MIN / 4)); [INFO] [stdout] 51 + print(&root, i32::MIN / 4, -(i32::MIN / 4)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_a.rs:121:29 [INFO] [stdout] | [INFO] [stdout] 121 | return Tree::range2((i32::MIN / 4), start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 121 - return Tree::range2((i32::MIN / 4), start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 121 + return Tree::range2(i32::MIN / 4, start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/day15/day15_a.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_a.rs:51:18 [INFO] [stdout] | [INFO] [stdout] 51 | print(&root, (i32::MIN / 4), -(i32::MIN / 4)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 51 - print(&root, (i32::MIN / 4), -(i32::MIN / 4)); [INFO] [stdout] 51 + print(&root, i32::MIN / 4, -(i32::MIN / 4)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_a.rs:121:29 [INFO] [stdout] | [INFO] [stdout] 121 | return Tree::range2((i32::MIN / 4), start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 121 - return Tree::range2((i32::MIN / 4), start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 121 + return Tree::range2(i32::MIN / 4, start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/day21/day21_b.rs:196:27 [INFO] [stdout] | [INFO] [stdout] 196 | fn apply(self: &Self, l: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/day21/day21_b.rs:196:35 [INFO] [stdout] | [INFO] [stdout] 196 | fn apply(self: &Self, l: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eq` [INFO] [stdout] --> src/day21/day21_b.rs:200:29 [INFO] [stdout] | [INFO] [stdout] 200 | fn solve_l(self: &Self, eq: i64, r: i64) -> i64 { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_eq` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/day21/day21_b.rs:200:38 [INFO] [stdout] | [INFO] [stdout] 200 | fn solve_l(self: &Self, eq: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eq` [INFO] [stdout] --> src/day21/day21_b.rs:204:29 [INFO] [stdout] | [INFO] [stdout] 204 | fn solve_r(self: &Self, eq: i64, l: i64) -> i64 { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_eq` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/day21/day21_b.rs:204:38 [INFO] [stdout] | [INFO] [stdout] 204 | fn solve_r(self: &Self, eq: i64, l: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/day15/day15_b.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day23/day23_b.rs:140:4 [INFO] [stdout] | [INFO] [stdout] 140 | fn print(pos: &HashSet<(i32, i32)>) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/day15/day15_b.rs:62:23 [INFO] [stdout] | [INFO] [stdout] 62 | simplify(match(tree) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 62 - simplify(match(tree) { [INFO] [stdout] 62 + simplify(match tree { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/day15/day15_b.rs:149:15 [INFO] [stdout] | [INFO] [stdout] 149 | if(get_val(tree, 0, search_space, 0, search_space, x, y)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 149 - if(get_val(tree, 0, search_space, 0, search_space, x, y)) { [INFO] [stdout] 149 + if get_val(tree, 0, search_space, 0, search_space, x, y) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_b.rs:219:65 [INFO] [stdout] | [INFO] [stdout] 219 | ... return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, v... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 219 - return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 219 + return Tree::range2(range_l, range_r, range_b, range_t, i32::MIN / 4, -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_b.rs:219:98 [INFO] [stdout] | [INFO] [stdout] 219 | ... return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, v... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 219 - return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 219 + return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), i32::MIN / 4, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day15/day15_b.rs:146:4 [INFO] [stdout] | [INFO] [stdout] 146 | fn print(tree: &Tree, search_space: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_val` is never used [INFO] [stdout] --> src/day15/day15_b.rs:159:4 [INFO] [stdout] | [INFO] [stdout] 159 | fn get_val(tree: &Tree, grid_l: i32, grid_r: i32, grid_b: i32, grid_t: i32, x: i32, y: i32) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `range` and `range2` are never used [INFO] [stdout] --> src/day15/day15_b.rs:218:8 [INFO] [stdout] | [INFO] [stdout] 217 | impl Tree { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 218 | fn range(range_l: i32, range_r: i32, range_b: i32, range_t: i32, val_in: bool, val_out: bool) -> Tree { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | fn range2(range_l: i32, range_r: i32, range_b: i32, range_t: i32, grid_l: i32, grid_r: i32, grid_b: i32, grid_t: i32, val_in: bool, v... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day17/day17_b.rs:143:34 [INFO] [stdout] | [INFO] [stdout] 143 | *max_y = max((y + j), *max_y); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - *max_y = max((y + j), *max_y); [INFO] [stdout] 143 + *max_y = max(y + j, *max_y); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::LinkedList` [INFO] [stdout] --> src/day20/day20_b.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day17/day17_b.rs:143:34 [INFO] [stdout] | [INFO] [stdout] 143 | *max_y = max((y + j), *max_y); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - *max_y = max((y + j), *max_y); [INFO] [stdout] 143 + *max_y = max(y + j, *max_y); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Rem` [INFO] [stdout] --> src/day20/day20_b.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Rem; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_start` [INFO] [stdout] --> src/day17/day17_b.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | let (y_max_start, blocks_start, y_max_stop, blocks_stop ) = find_loop_size(instructions.clone(), blocks.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_start` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_stop` [INFO] [stdout] --> src/day17/day17_b.rs:49:37 [INFO] [stdout] | [INFO] [stdout] 49 | let (y_max_start, blocks_start, y_max_stop, blocks_stop ) = find_loop_size(instructions.clone(), blocks.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_four_loops` [INFO] [stdout] --> src/day17/day17_b.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let y_max_four_loops = simulate_n_blocks(instructions.clone(), blocks.clone(), blocks_stop + 3 * loop_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_four_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_five_loops` [INFO] [stdout] --> src/day17/day17_b.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let y_max_five_loops = simulate_n_blocks(instructions.clone(), blocks.clone(), blocks_stop + 4 * loop_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_five_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day17/day17_b.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | let mut c = if state[y as usize] & bit == 0 { [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: function `print` is never used [INFO] [stdout] --> src/day17/day17_b.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn print(state: &Vec, max_y: i32, amount: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_start` [INFO] [stdout] --> src/day17/day17_b.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | let (y_max_start, blocks_start, y_max_stop, blocks_stop ) = find_loop_size(instructions.clone(), blocks.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_start` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_stop` [INFO] [stdout] --> src/day17/day17_b.rs:49:37 [INFO] [stdout] | [INFO] [stdout] 49 | let (y_max_start, blocks_start, y_max_stop, blocks_stop ) = find_loop_size(instructions.clone(), blocks.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_four_loops` [INFO] [stdout] --> src/day17/day17_b.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let y_max_four_loops = simulate_n_blocks(instructions.clone(), blocks.clone(), blocks_stop + 3 * loop_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_four_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_five_loops` [INFO] [stdout] --> src/day17/day17_b.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let y_max_five_loops = simulate_n_blocks(instructions.clone(), blocks.clone(), blocks_stop + 4 * loop_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_five_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day20/day20_b.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn print(current: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day17/day17_b.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | let mut c = if state[y as usize] & bit == 0 { [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: function `print` is never used [INFO] [stdout] --> src/day17/day17_b.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn print(state: &Vec, max_y: i32, amount: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day23/day23_b.rs:140:4 [INFO] [stdout] | [INFO] [stdout] 140 | fn print(pos: &HashSet<(i32, i32)>) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/day06/day06_b.rs:13:40 [INFO] [stdout] | [INFO] [stdout] 13 | is_unique(wnd.iter().map(|(i, e)|*e).collect()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/day06/day06_b.rs:13:40 [INFO] [stdout] | [INFO] [stdout] 13 | is_unique(wnd.iter().map(|(i, e)|*e).collect()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day17/day17_a.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Captures`, `Regex` [INFO] [stdout] --> src/day17/day17_a.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::{Captures, Regex}; [INFO] [stdout] | ^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day17/day17_a.rs:85:37 [INFO] [stdout] | [INFO] [stdout] 85 | max_y = max((y + j), max_y); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 85 - max_y = max((y + j), max_y); [INFO] [stdout] 85 + max_y = max(y + j, max_y); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day19/day19_a.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::binary_heap::Iter` [INFO] [stdout] --> src/day12/day12_b.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::binary_heap::Iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day19/day19_b.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day17/day17_a.rs:107:4 [INFO] [stdout] | [INFO] [stdout] 107 | fn print(state: &Vec, yy: i32, block: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.94s [INFO] running `Command { std: "docker" "inspect" "f1d6dd742e905215dea852ae875b07c3c0f6dd7ef05670837f7a43d91d200ad2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f1d6dd742e905215dea852ae875b07c3c0f6dd7ef05670837f7a43d91d200ad2", kill_on_drop: false }` [INFO] [stdout] f1d6dd742e905215dea852ae875b07c3c0f6dd7ef05670837f7a43d91d200ad2 [INFO] checking dwendelen/adventofcode_2022 against try#645bb72776a6a56a1a8f52631a44bd082b2ba509 for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdwendelen%2Fadventofcode_2022" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/dwendelen/adventofcode_2022 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/dwendelen/adventofcode_2022 [INFO] finished tweaking git repo https://github.com/dwendelen/adventofcode_2022 [INFO] tweaked toml for git repo https://github.com/dwendelen/adventofcode_2022 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/dwendelen/adventofcode_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" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 94a7f38f085611a57b6e56451e0fbf73960aff4e4f92f5044482632283ed4bcc [INFO] running `Command { std: "docker" "start" "-a" "94a7f38f085611a57b6e56451e0fbf73960aff4e4f92f5044482632283ed4bcc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "94a7f38f085611a57b6e56451e0fbf73960aff4e4f92f5044482632283ed4bcc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "94a7f38f085611a57b6e56451e0fbf73960aff4e4f92f5044482632283ed4bcc", kill_on_drop: false }` [INFO] [stdout] 94a7f38f085611a57b6e56451e0fbf73960aff4e4f92f5044482632283ed4bcc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 107375eede8f621513d27d06321270a7fd4b38cdf2ab88a7ebf9ef21c1084582 [INFO] running `Command { std: "docker" "start" "-a" "107375eede8f621513d27d06321270a7fd4b38cdf2ab88a7ebf9ef21c1084582", kill_on_drop: false }` [INFO] [stderr] Checking regex-syntax v0.6.28 [INFO] [stderr] Checking aho-corasick v0.7.20 [INFO] [stderr] Checking regex v1.7.0 [INFO] [stderr] Checking adventofcode_2022 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/day21/day21_a.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | op: |a,b| panic!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/day21/day21_a.rs:33:28 [INFO] [stdout] | [INFO] [stdout] 33 | op: |a,b| panic!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/day21/day21_b.rs:196:27 [INFO] [stdout] | [INFO] [stdout] 196 | fn apply(self: &Self, l: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/day21/day21_b.rs:196:35 [INFO] [stdout] | [INFO] [stdout] 196 | fn apply(self: &Self, l: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eq` [INFO] [stdout] --> src/day21/day21_b.rs:200:29 [INFO] [stdout] | [INFO] [stdout] 200 | fn solve_l(self: &Self, eq: i64, r: i64) -> i64 { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_eq` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/day21/day21_b.rs:200:38 [INFO] [stdout] | [INFO] [stdout] 200 | fn solve_l(self: &Self, eq: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eq` [INFO] [stdout] --> src/day21/day21_b.rs:204:29 [INFO] [stdout] | [INFO] [stdout] 204 | fn solve_r(self: &Self, eq: i64, l: i64) -> i64 { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_eq` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/day21/day21_b.rs:204:38 [INFO] [stdout] | [INFO] [stdout] 204 | fn solve_r(self: &Self, eq: i64, l: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day19/day19_a.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day17/day17_a.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Captures`, `Regex` [INFO] [stdout] --> src/day17/day17_a.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::{Captures, Regex}; [INFO] [stdout] | ^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day17/day17_a.rs:85:37 [INFO] [stdout] | [INFO] [stdout] 85 | max_y = max((y + j), max_y); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 85 - max_y = max((y + j), max_y); [INFO] [stdout] 85 + max_y = max(y + j, max_y); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day17/day17_a.rs:107:4 [INFO] [stdout] | [INFO] [stdout] 107 | fn print(state: &Vec, yy: i32, block: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::LinkedList` [INFO] [stdout] --> src/day20/day20_a.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Rem` [INFO] [stdout] --> src/day20/day20_a.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Rem; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day20/day20_a.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn print(current: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/day21/day21_b.rs:196:27 [INFO] [stdout] | [INFO] [stdout] 196 | fn apply(self: &Self, l: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/day21/day21_b.rs:196:35 [INFO] [stdout] | [INFO] [stdout] 196 | fn apply(self: &Self, l: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eq` [INFO] [stdout] --> src/day21/day21_b.rs:200:29 [INFO] [stdout] | [INFO] [stdout] 200 | fn solve_l(self: &Self, eq: i64, r: i64) -> i64 { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_eq` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/day21/day21_b.rs:200:38 [INFO] [stdout] | [INFO] [stdout] 200 | fn solve_l(self: &Self, eq: i64, r: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eq` [INFO] [stdout] --> src/day21/day21_b.rs:204:29 [INFO] [stdout] | [INFO] [stdout] 204 | fn solve_r(self: &Self, eq: i64, l: i64) -> i64 { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_eq` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/day21/day21_b.rs:204:38 [INFO] [stdout] | [INFO] [stdout] 204 | fn solve_r(self: &Self, eq: i64, l: i64) -> i64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/day06/day06_b.rs:13:40 [INFO] [stdout] | [INFO] [stdout] 13 | is_unique(wnd.iter().map(|(i, e)|*e).collect()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day23/day23_b.rs:140:4 [INFO] [stdout] | [INFO] [stdout] 140 | fn print(pos: &HashSet<(i32, i32)>) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/day15/day15_b.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/day15/day15_b.rs:62:23 [INFO] [stdout] | [INFO] [stdout] 62 | simplify(match(tree) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 62 - simplify(match(tree) { [INFO] [stdout] 62 + simplify(match tree { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/day15/day15_b.rs:149:15 [INFO] [stdout] | [INFO] [stdout] 149 | if(get_val(tree, 0, search_space, 0, search_space, x, y)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 149 - if(get_val(tree, 0, search_space, 0, search_space, x, y)) { [INFO] [stdout] 149 + if get_val(tree, 0, search_space, 0, search_space, x, y) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_b.rs:219:65 [INFO] [stdout] | [INFO] [stdout] 219 | ... return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, v... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 219 - return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 219 + return Tree::range2(range_l, range_r, range_b, range_t, i32::MIN / 4, -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_b.rs:219:98 [INFO] [stdout] | [INFO] [stdout] 219 | ... return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, v... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 219 - return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 219 + return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), i32::MIN / 4, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::binary_heap::Iter` [INFO] [stdout] --> src/day12/day12_b.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::binary_heap::Iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/day16/day16_b.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | if(state.persons[other_person].time != 999) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - if(state.persons[other_person].time != 999) { [INFO] [stdout] 108 + if state.persons[other_person].time != 999 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day15/day15_b.rs:146:4 [INFO] [stdout] | [INFO] [stdout] 146 | fn print(tree: &Tree, search_space: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_val` is never used [INFO] [stdout] --> src/day15/day15_b.rs:159:4 [INFO] [stdout] | [INFO] [stdout] 159 | fn get_val(tree: &Tree, grid_l: i32, grid_r: i32, grid_b: i32, grid_t: i32, x: i32, y: i32) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `range` and `range2` are never used [INFO] [stdout] --> src/day15/day15_b.rs:218:8 [INFO] [stdout] | [INFO] [stdout] 217 | impl Tree { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 218 | fn range(range_l: i32, range_r: i32, range_b: i32, range_t: i32, val_in: bool, val_out: bool) -> Tree { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | fn range2(range_l: i32, range_r: i32, range_b: i32, range_t: i32, grid_l: i32, grid_r: i32, grid_b: i32, grid_t: i32, val_in: bool, v... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/day21/day21_a.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | op: |a,b| panic!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/day21/day21_a.rs:33:28 [INFO] [stdout] | [INFO] [stdout] 33 | op: |a,b| panic!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day19/day19_b.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::LinkedList` [INFO] [stdout] --> src/day20/day20_b.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Rem` [INFO] [stdout] --> src/day20/day20_b.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Rem; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::LinkedList` [INFO] [stdout] --> src/day20/day20_b.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Rem` [INFO] [stdout] --> src/day20/day20_b.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Rem; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day20/day20_b.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn print(current: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/day06/day06_b.rs:13:40 [INFO] [stdout] | [INFO] [stdout] 13 | is_unique(wnd.iter().map(|(i, e)|*e).collect()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day20/day20_b.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn print(current: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering::Less` [INFO] [stdout] --> src/day13/day13_b.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::Ordering::Less; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering::Less` [INFO] [stdout] --> src/day13/day13_b.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::Ordering::Less; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `map_chunk` is never used [INFO] [stdout] --> src/day13/day13_b.rs:34:4 [INFO] [stdout] | [INFO] [stdout] 34 | fn map_chunk(lines: &[String]) -> (Node, Node) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `map_chunk` is never used [INFO] [stdout] --> src/day13/day13_b.rs:34:4 [INFO] [stdout] | [INFO] [stdout] 34 | fn map_chunk(lines: &[String]) -> (Node, Node) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::raw::gid_t` [INFO] [stdout] --> src/day22/day22_a.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::raw::gid_t; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::os::unix::raw::gid_t`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions [INFO] [stdout] --> src/day22/day22_a.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::raw::gid_t; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/day16/day16_b.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | if(state.persons[other_person].time != 999) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - if(state.persons[other_person].time != 999) { [INFO] [stdout] 108 + if state.persons[other_person].time != 999 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day17/day17_b.rs:143:34 [INFO] [stdout] | [INFO] [stdout] 143 | *max_y = max((y + j), *max_y); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - *max_y = max((y + j), *max_y); [INFO] [stdout] 143 + *max_y = max(y + j, *max_y); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_start` [INFO] [stdout] --> src/day17/day17_b.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | let (y_max_start, blocks_start, y_max_stop, blocks_stop ) = find_loop_size(instructions.clone(), blocks.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_start` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day19/day19_a.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_stop` [INFO] [stdout] --> src/day17/day17_b.rs:49:37 [INFO] [stdout] | [INFO] [stdout] 49 | let (y_max_start, blocks_start, y_max_stop, blocks_stop ) = find_loop_size(instructions.clone(), blocks.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_four_loops` [INFO] [stdout] --> src/day17/day17_b.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let y_max_four_loops = simulate_n_blocks(instructions.clone(), blocks.clone(), blocks_stop + 3 * loop_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_four_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_five_loops` [INFO] [stdout] --> src/day17/day17_b.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let y_max_five_loops = simulate_n_blocks(instructions.clone(), blocks.clone(), blocks_stop + 4 * loop_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_five_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day17/day17_b.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | let mut c = if state[y as usize] & bit == 0 { [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: function `print` is never used [INFO] [stdout] --> src/day17/day17_b.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn print(state: &Vec, max_y: i32, amount: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day23/day23_b.rs:140:4 [INFO] [stdout] | [INFO] [stdout] 140 | fn print(pos: &HashSet<(i32, i32)>) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day17/day17_b.rs:143:34 [INFO] [stdout] | [INFO] [stdout] 143 | *max_y = max((y + j), *max_y); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - *max_y = max((y + j), *max_y); [INFO] [stdout] 143 + *max_y = max(y + j, *max_y); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/day15/day15_a.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_a.rs:51:18 [INFO] [stdout] | [INFO] [stdout] 51 | print(&root, (i32::MIN / 4), -(i32::MIN / 4)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 51 - print(&root, (i32::MIN / 4), -(i32::MIN / 4)); [INFO] [stdout] 51 + print(&root, i32::MIN / 4, -(i32::MIN / 4)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_a.rs:121:29 [INFO] [stdout] | [INFO] [stdout] 121 | return Tree::range2((i32::MIN / 4), start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 121 - return Tree::range2((i32::MIN / 4), start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 121 + return Tree::range2(i32::MIN / 4, start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_start` [INFO] [stdout] --> src/day17/day17_b.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | let (y_max_start, blocks_start, y_max_stop, blocks_stop ) = find_loop_size(instructions.clone(), blocks.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_start` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_stop` [INFO] [stdout] --> src/day17/day17_b.rs:49:37 [INFO] [stdout] | [INFO] [stdout] 49 | let (y_max_start, blocks_start, y_max_stop, blocks_stop ) = find_loop_size(instructions.clone(), blocks.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_four_loops` [INFO] [stdout] --> src/day17/day17_b.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let y_max_four_loops = simulate_n_blocks(instructions.clone(), blocks.clone(), blocks_stop + 3 * loop_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_four_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_max_five_loops` [INFO] [stdout] --> src/day17/day17_b.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let y_max_five_loops = simulate_n_blocks(instructions.clone(), blocks.clone(), blocks_stop + 4 * loop_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_max_five_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day17/day17_a.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Captures`, `Regex` [INFO] [stdout] --> src/day17/day17_a.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::{Captures, Regex}; [INFO] [stdout] | ^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day17/day17_a.rs:85:37 [INFO] [stdout] | [INFO] [stdout] 85 | max_y = max((y + j), max_y); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 85 - max_y = max((y + j), max_y); [INFO] [stdout] 85 + max_y = max(y + j, max_y); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day17/day17_b.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | let mut c = if state[y as usize] & bit == 0 { [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: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day17/day17_b.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn print(state: &Vec, max_y: i32, amount: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day17/day17_a.rs:107:4 [INFO] [stdout] | [INFO] [stdout] 107 | fn print(state: &Vec, yy: i32, block: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `LinkedList` [INFO] [stdout] --> src/day19/day19_b.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::{HashMap, LinkedList}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/day15/day15_a.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_a.rs:51:18 [INFO] [stdout] | [INFO] [stdout] 51 | print(&root, (i32::MIN / 4), -(i32::MIN / 4)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 51 - print(&root, (i32::MIN / 4), -(i32::MIN / 4)); [INFO] [stdout] 51 + print(&root, i32::MIN / 4, -(i32::MIN / 4)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_a.rs:121:29 [INFO] [stdout] | [INFO] [stdout] 121 | return Tree::range2((i32::MIN / 4), start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 121 - return Tree::range2((i32::MIN / 4), start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 121 + return Tree::range2(i32::MIN / 4, start, end, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/day15/day15_b.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/day15/day15_b.rs:62:23 [INFO] [stdout] | [INFO] [stdout] 62 | simplify(match(tree) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 62 - simplify(match(tree) { [INFO] [stdout] 62 + simplify(match tree { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/day15/day15_b.rs:149:15 [INFO] [stdout] | [INFO] [stdout] 149 | if(get_val(tree, 0, search_space, 0, search_space, x, y)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 149 - if(get_val(tree, 0, search_space, 0, search_space, x, y)) { [INFO] [stdout] 149 + if get_val(tree, 0, search_space, 0, search_space, x, y) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_b.rs:219:65 [INFO] [stdout] | [INFO] [stdout] 219 | ... return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, v... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 219 - return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 219 + return Tree::range2(range_l, range_r, range_b, range_t, i32::MIN / 4, -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15/day15_b.rs:219:98 [INFO] [stdout] | [INFO] [stdout] 219 | ... return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, v... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 219 - return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), (i32::MIN / 4), -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] 219 + return Tree::range2(range_l, range_r, range_b, range_t, (i32::MIN / 4), -(i32::MIN / 4), i32::MIN / 4, -(i32::MIN / 4), val_in, val_out) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::binary_heap::Iter` [INFO] [stdout] --> src/day12/day12_b.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::binary_heap::Iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::LinkedList` [INFO] [stdout] --> src/day20/day20_a.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Rem` [INFO] [stdout] --> src/day20/day20_a.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Rem; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::raw::gid_t` [INFO] [stdout] --> src/day22/day22_a.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::raw::gid_t; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::os::unix::raw::gid_t`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions [INFO] [stdout] --> src/day22/day22_a.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::raw::gid_t; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day20/day20_a.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn print(current: &Vec) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/day15/day15_b.rs:146:4 [INFO] [stdout] | [INFO] [stdout] 146 | fn print(tree: &Tree, search_space: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_val` is never used [INFO] [stdout] --> src/day15/day15_b.rs:159:4 [INFO] [stdout] | [INFO] [stdout] 159 | fn get_val(tree: &Tree, grid_l: i32, grid_r: i32, grid_b: i32, grid_t: i32, x: i32, y: i32) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `range` and `range2` are never used [INFO] [stdout] --> src/day15/day15_b.rs:218:8 [INFO] [stdout] | [INFO] [stdout] 217 | impl Tree { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 218 | fn range(range_l: i32, range_r: i32, range_b: i32, range_t: i32, val_in: bool, val_out: bool) -> Tree { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | fn range2(range_l: i32, range_r: i32, range_b: i32, range_t: i32, grid_l: i32, grid_r: i32, grid_b: i32, grid_t: i32, val_in: bool, v... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.38s [INFO] running `Command { std: "docker" "inspect" "107375eede8f621513d27d06321270a7fd4b38cdf2ab88a7ebf9ef21c1084582", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "107375eede8f621513d27d06321270a7fd4b38cdf2ab88a7ebf9ef21c1084582", kill_on_drop: false }` [INFO] [stdout] 107375eede8f621513d27d06321270a7fd4b38cdf2ab88a7ebf9ef21c1084582