[INFO] cloning repository https://github.com/efrees/adventofcode2018 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/efrees/adventofcode2018" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fefrees%2Fadventofcode2018", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fefrees%2Fadventofcode2018'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a909072520d6f67ddecc24c47373e83294de0b33 [INFO] testing efrees/adventofcode2018 against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fefrees%2Fadventofcode2018" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/efrees/adventofcode2018 on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/efrees/adventofcode2018 [INFO] finished tweaking git repo https://github.com/efrees/adventofcode2018 [INFO] tweaked toml for git repo https://github.com/efrees/adventofcode2018 written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/efrees/adventofcode2018 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] bc0c12b893d04c2a02271d4b5565b717c1581dfab577ebcf4511f8a35ced2d21 [INFO] running `Command { std: "docker" "start" "-a" "bc0c12b893d04c2a02271d4b5565b717c1581dfab577ebcf4511f8a35ced2d21", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bc0c12b893d04c2a02271d4b5565b717c1581dfab577ebcf4511f8a35ced2d21", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bc0c12b893d04c2a02271d4b5565b717c1581dfab577ebcf4511f8a35ced2d21", kill_on_drop: false }` [INFO] [stdout] bc0c12b893d04c2a02271d4b5565b717c1581dfab577ebcf4511f8a35ced2d21 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b471f91390d27940b5727d11f5fdeb0397ad672f215aec1ca1d82e74ebded56c [INFO] running `Command { std: "docker" "start" "-a" "b471f91390d27940b5727d11f5fdeb0397ad672f215aec1ca1d82e74ebded56c", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.44 [INFO] [stderr] Compiling version_check v0.1.5 [INFO] [stderr] Compiling num-traits v0.2.6 [INFO] [stderr] Compiling cfg-if v0.1.6 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Compiling lazy_static v1.2.0 [INFO] [stderr] Compiling ucd-util v0.1.3 [INFO] [stderr] Compiling regex v1.1.0 [INFO] [stderr] Compiling utf8-ranges v1.0.2 [INFO] [stderr] Compiling slab v0.4.1 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling regex-syntax v0.6.4 [INFO] [stderr] Compiling memchr v2.1.1 [INFO] [stderr] Compiling time v0.1.40 [INFO] [stderr] Compiling aho-corasick v0.6.9 [INFO] [stderr] Compiling chrono v0.4.6 [INFO] [stderr] Compiling advent_2018 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:42:13 [INFO] [stdout] | [INFO] [stdout] 42 | fn time(f: &Fn()) { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 42 - fn time(f: &Fn()) { [INFO] [stdout] 42 + fn time(f: &dyn Fn()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | fn time_with_label(f: &Fn(), label: &str) { [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 46 - fn time_with_label(f: &Fn(), label: &str) { [INFO] [stdout] 46 + fn time_with_label(f: &dyn Fn(), label: &str) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/solutions/day16.rs:129:14 [INFO] [stdout] | [INFO] [stdout] 129 | method: &Fn(&Vec, &mut Vec), [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 129 - method: &Fn(&Vec, &mut Vec), [INFO] [stdout] 129 + method: &dyn Fn(&Vec, &mut Vec), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/solutions/day16.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | let methods: Vec<&Fn(&Vec, &mut Vec)> = vec![ [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 10 - let methods: Vec<&Fn(&Vec, &mut Vec)> = vec![ [INFO] [stdout] 10 + let methods: Vec<&dyn Fn(&Vec, &mut Vec)> = vec![ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/solutions/day18.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let mut row: Vec<_> = line [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 is never used: `solve` [INFO] [stdout] --> src/solutions/day1.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Point` [INFO] [stdout] --> src/solutions/day10.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct Point(i32, i32); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `PointWithVelocity` [INFO] [stdout] --> src/solutions/day10.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct PointWithVelocity { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day10.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `print_point_section` [INFO] [stdout] --> src/solutions/day10.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn print_point_section( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day11.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `power_level` [INFO] [stdout] --> src/solutions/day11.rs:85:4 [INFO] [stdout] | [INFO] [stdout] 85 | fn power_level(x: i32, y: i32, serial_number: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day12.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_rule` [INFO] [stdout] --> src/solutions/day12.rs:80:4 [INFO] [stdout] | [INFO] [stdout] 80 | fn parse_rule(line: &String) -> ((bool, bool, bool, bool, bool), bool) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `print_result` [INFO] [stdout] --> src/solutions/day12.rs:96:4 [INFO] [stdout] | [INFO] [stdout] 96 | fn print_result(next_config: &Vec<&bool>, zero_offset: i64, generation: i64) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day13.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_grid` [INFO] [stdout] --> src/solutions/day13.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn parse_grid(lines: &Vec) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `initiate_carts` [INFO] [stdout] --> src/solutions/day13.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn initiate_carts(lines: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `move_cart_on_grid` [INFO] [stdout] --> src/solutions/day13.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn move_cart_on_grid(cart: &mut Cart, grid: &Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `position` [INFO] [stdout] --> src/solutions/day13.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | position: Point, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day13.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `direction` [INFO] [stdout] --> src/solutions/day13.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | direction: Direction, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day13.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `intersection_count` [INFO] [stdout] --> src/solutions/day13.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | intersection_count: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day13.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `crashed` [INFO] [stdout] --> src/solutions/day13.rs:142:5 [INFO] [stdout] | [INFO] [stdout] 142 | crashed: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day13.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `RailType` [INFO] [stdout] --> src/solutions/day13.rs:145:6 [INFO] [stdout] | [INFO] [stdout] 145 | enum RailType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day14.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `build_recipes_to` [INFO] [stdout] --> src/solutions/day14.rs:40:4 [INFO] [stdout] | [INFO] [stdout] 40 | fn build_recipes_to( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day15.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_grid` [INFO] [stdout] --> src/solutions/day15.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn parse_grid(lines: &Vec) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_units` [INFO] [stdout] --> src/solutions/day15.rs:67:4 [INFO] [stdout] | [INFO] [stdout] 67 | fn parse_units(lines: &Vec, elf_power: u8) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fight_battle` [INFO] [stdout] --> src/solutions/day15.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn fight_battle(grid: &Vec>, units: &mut HashMap) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `has_targets` [INFO] [stdout] --> src/solutions/day15.rs:111:4 [INFO] [stdout] | [INFO] [stdout] 111 | fn has_targets(unit_pos: &Point, units: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `has_adjacent_targets` [INFO] [stdout] --> src/solutions/day15.rs:116:4 [INFO] [stdout] | [INFO] [stdout] 116 | fn has_adjacent_targets(unit_pos: &Point, units: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `take_turn` [INFO] [stdout] --> src/solutions/day15.rs:124:4 [INFO] [stdout] | [INFO] [stdout] 124 | fn take_turn( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `make_best_move` [INFO] [stdout] --> src/solutions/day15.rs:146:4 [INFO] [stdout] | [INFO] [stdout] 146 | fn make_best_move( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bfs_best_target` [INFO] [stdout] --> src/solutions/day15.rs:195:4 [INFO] [stdout] | [INFO] [stdout] 195 | fn bfs_best_target( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `grid_get` [INFO] [stdout] --> src/solutions/day15.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn grid_get(point: &Point, grid: &Vec>) -> CellType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `attack` [INFO] [stdout] --> src/solutions/day15.rs:251:4 [INFO] [stdout] | [INFO] [stdout] 251 | fn attack(unit_pos: &Point, units: &mut HashMap) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Open` [INFO] [stdout] --> src/solutions/day15.rs:303:5 [INFO] [stdout] | [INFO] [stdout] 303 | Open, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day15.rs:301:27 [INFO] [stdout] | [INFO] [stdout] 301 | #[derive(PartialEq, Copy, Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Wall` [INFO] [stdout] --> src/solutions/day15.rs:304:5 [INFO] [stdout] | [INFO] [stdout] 304 | Wall, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day15.rs:301:27 [INFO] [stdout] | [INFO] [stdout] 301 | #[derive(PartialEq, Copy, Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Goblin` [INFO] [stdout] --> src/solutions/day15.rs:309:5 [INFO] [stdout] | [INFO] [stdout] 309 | Goblin, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Elf` [INFO] [stdout] --> src/solutions/day15.rs:310:5 [INFO] [stdout] | [INFO] [stdout] 310 | Elf, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `hit_points` [INFO] [stdout] --> src/solutions/day15.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | hit_points: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `attack_power` [INFO] [stdout] --> src/solutions/day15.rs:316:5 [INFO] [stdout] | [INFO] [stdout] 316 | attack_power: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `position` [INFO] [stdout] --> src/solutions/day15.rs:317:5 [INFO] [stdout] | [INFO] [stdout] 317 | position: Point, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/solutions/day15.rs:321:8 [INFO] [stdout] | [INFO] [stdout] 321 | fn new(team: BattleTeam, x: u32, y: u32, power: u8) -> BattleUnit { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_goblin` [INFO] [stdout] --> src/solutions/day15.rs:330:8 [INFO] [stdout] | [INFO] [stdout] 330 | fn new_goblin(x: u32, y: u32) -> BattleUnit { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_elf` [INFO] [stdout] --> src/solutions/day15.rs:334:8 [INFO] [stdout] | [INFO] [stdout] 334 | fn new_elf(x: u32, y: u32, power: u8) -> BattleUnit { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day16.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_registers` [INFO] [stdout] --> src/solutions/day16.rs:90:4 [INFO] [stdout] | [INFO] [stdout] 90 | fn parse_registers(input: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_command` [INFO] [stdout] --> src/solutions/day16.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn parse_command(input: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `reg_equal` [INFO] [stdout] --> src/solutions/day16.rs:115:4 [INFO] [stdout] | [INFO] [stdout] 115 | fn reg_equal(first: &Vec, second: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `exec_and_check` [INFO] [stdout] --> src/solutions/day16.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn exec_and_check( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `reg_copy` [INFO] [stdout] --> src/solutions/day16.rs:140:4 [INFO] [stdout] | [INFO] [stdout] 140 | fn reg_copy(original: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addr` [INFO] [stdout] --> src/solutions/day16.rs:144:4 [INFO] [stdout] | [INFO] [stdout] 144 | fn addr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addi` [INFO] [stdout] --> src/solutions/day16.rs:147:4 [INFO] [stdout] | [INFO] [stdout] 147 | fn addi(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mulr` [INFO] [stdout] --> src/solutions/day16.rs:151:4 [INFO] [stdout] | [INFO] [stdout] 151 | fn mulr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `muli` [INFO] [stdout] --> src/solutions/day16.rs:154:4 [INFO] [stdout] | [INFO] [stdout] 154 | fn muli(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `banr` [INFO] [stdout] --> src/solutions/day16.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn banr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bani` [INFO] [stdout] --> src/solutions/day16.rs:161:4 [INFO] [stdout] | [INFO] [stdout] 161 | fn bani(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `borr` [INFO] [stdout] --> src/solutions/day16.rs:165:4 [INFO] [stdout] | [INFO] [stdout] 165 | fn borr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bori` [INFO] [stdout] --> src/solutions/day16.rs:168:4 [INFO] [stdout] | [INFO] [stdout] 168 | fn bori(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `setr` [INFO] [stdout] --> src/solutions/day16.rs:172:4 [INFO] [stdout] | [INFO] [stdout] 172 | fn setr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `seti` [INFO] [stdout] --> src/solutions/day16.rs:175:4 [INFO] [stdout] | [INFO] [stdout] 175 | fn seti(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gtir` [INFO] [stdout] --> src/solutions/day16.rs:179:4 [INFO] [stdout] | [INFO] [stdout] 179 | fn gtir(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gtri` [INFO] [stdout] --> src/solutions/day16.rs:186:4 [INFO] [stdout] | [INFO] [stdout] 186 | fn gtri(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gtrr` [INFO] [stdout] --> src/solutions/day16.rs:193:4 [INFO] [stdout] | [INFO] [stdout] 193 | fn gtrr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `eqir` [INFO] [stdout] --> src/solutions/day16.rs:201:4 [INFO] [stdout] | [INFO] [stdout] 201 | fn eqir(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `eqri` [INFO] [stdout] --> src/solutions/day16.rs:208:4 [INFO] [stdout] | [INFO] [stdout] 208 | fn eqri(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `eqrr` [INFO] [stdout] --> src/solutions/day16.rs:215:4 [INFO] [stdout] | [INFO] [stdout] 215 | fn eqrr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TOUCHED` [INFO] [stdout] --> src/solutions/day17.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const TOUCHED: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `WATER` [INFO] [stdout] --> src/solutions/day17.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const WATER: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CLAY` [INFO] [stdout] --> src/solutions/day17.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const CLAY: u8 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day17.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_bounds` [INFO] [stdout] --> src/solutions/day17.rs:55:4 [INFO] [stdout] | [INFO] [stdout] 55 | fn parse_bounds(specifier: &str) -> (u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `flood_down` [INFO] [stdout] --> src/solutions/day17.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn flood_down( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `flood_left_right` [INFO] [stdout] --> src/solutions/day17.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn flood_left_right(grid: &mut HashMap<(u32, u32), u8>, from_loc: (u32, u32), max_y: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `empty_left_right` [INFO] [stdout] --> src/solutions/day17.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn empty_left_right(grid: &mut HashMap<(u32, u32), u8>, from_loc: (u32, u32)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `OPEN` [INFO] [stdout] --> src/solutions/day18.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | const OPEN: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TREES` [INFO] [stdout] --> src/solutions/day18.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const TREES: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LUMBERYARD` [INFO] [stdout] --> src/solutions/day18.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const LUMBERYARD: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day18.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lines_to_byte_grid` [INFO] [stdout] --> src/solutions/day18.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn lines_to_byte_grid(lines: &Vec) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `compute_next_step` [INFO] [stdout] --> src/solutions/day18.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn compute_next_step(grid: &Vec>, next_grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `count_neighbors` [INFO] [stdout] --> src/solutions/day18.rs:99:4 [INFO] [stdout] | [INFO] [stdout] 99 | fn count_neighbors(point: Point, grid: &Vec>) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `grid_get` [INFO] [stdout] --> src/solutions/day18.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn grid_get(point: &Point, grid: &Vec>) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `compute_resource_value` [INFO] [stdout] --> src/solutions/day18.rs:122:4 [INFO] [stdout] | [INFO] [stdout] 122 | fn compute_resource_value(grid: &Vec>) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `grid_to_string` [INFO] [stdout] --> src/solutions/day18.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn grid_to_string(grid: &Vec>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day19.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/solutions/day19.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | fn new(ip_reg: u8) -> WristComputer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_next_ip` [INFO] [stdout] --> src/solutions/day19.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | fn get_next_ip(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `execute_program` [INFO] [stdout] --> src/solutions/day19.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | fn execute_program(&mut self, program: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `execute` [INFO] [stdout] --> src/solutions/day19.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | fn execute(&mut self, instr: &WristComputerInstruction) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `addr` [INFO] [stdout] --> src/solutions/day19.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | fn addr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `addi` [INFO] [stdout] --> src/solutions/day19.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 86 | fn addi(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mulr` [INFO] [stdout] --> src/solutions/day19.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | fn mulr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `muli` [INFO] [stdout] --> src/solutions/day19.rs:94:8 [INFO] [stdout] | [INFO] [stdout] 94 | fn muli(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `modr` [INFO] [stdout] --> src/solutions/day19.rs:98:8 [INFO] [stdout] | [INFO] [stdout] 98 | fn modr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `modi` [INFO] [stdout] --> src/solutions/day19.rs:102:8 [INFO] [stdout] | [INFO] [stdout] 102 | fn modi(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `banr` [INFO] [stdout] --> src/solutions/day19.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | fn banr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `bani` [INFO] [stdout] --> src/solutions/day19.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | fn bani(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `borr` [INFO] [stdout] --> src/solutions/day19.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | fn borr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `bori` [INFO] [stdout] --> src/solutions/day19.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | fn bori(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `setr` [INFO] [stdout] --> src/solutions/day19.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 121 | fn setr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `seti` [INFO] [stdout] --> src/solutions/day19.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | fn seti(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `gtir` [INFO] [stdout] --> src/solutions/day19.rs:128:8 [INFO] [stdout] | [INFO] [stdout] 128 | fn gtir(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `gtri` [INFO] [stdout] --> src/solutions/day19.rs:135:8 [INFO] [stdout] | [INFO] [stdout] 135 | fn gtri(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `gtrr` [INFO] [stdout] --> src/solutions/day19.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | fn gtrr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `eqir` [INFO] [stdout] --> src/solutions/day19.rs:150:8 [INFO] [stdout] | [INFO] [stdout] 150 | fn eqir(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `eqri` [INFO] [stdout] --> src/solutions/day19.rs:157:8 [INFO] [stdout] | [INFO] [stdout] 157 | fn eqri(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `eqrr` [INFO] [stdout] --> src/solutions/day19.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | fn eqrr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `WristComputerInstruction` [INFO] [stdout] --> src/solutions/day19.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | struct WristComputerInstruction<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_str` [INFO] [stdout] --> src/solutions/day19.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 186 | fn parse_str(line: &'a str) -> WristComputerInstruction<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day2.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day20.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_map` [INFO] [stdout] --> src/solutions/day20.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn parse_map<'a, 'b>(raw_map: &'a [u8], end: usize, node_store: &'b mut Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_sequence` [INFO] [stdout] --> src/solutions/day20.rs:38:4 [INFO] [stdout] | [INFO] [stdout] 38 | fn parse_sequence<'a, 'b>( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_branches` [INFO] [stdout] --> src/solutions/day20.rs:87:4 [INFO] [stdout] | [INFO] [stdout] 87 | fn parse_branches<'a, 'b>( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `follow_sequential_steps` [INFO] [stdout] --> src/solutions/day20.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn follow_sequential_steps( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `follow_branches` [INFO] [stdout] --> src/solutions/day20.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn follow_branches( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `MapNode` [INFO] [stdout] --> src/solutions/day20.rs:178:8 [INFO] [stdout] | [INFO] [stdout] 178 | struct MapNode<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `empty` [INFO] [stdout] --> src/solutions/day20.rs:185:8 [INFO] [stdout] | [INFO] [stdout] 185 | fn empty(next: Option) -> MapNode<'a> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `has_branches` [INFO] [stdout] --> src/solutions/day20.rs:193:8 [INFO] [stdout] | [INFO] [stdout] 193 | fn has_branches(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day21.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `Y0_ROOT` [INFO] [stdout] --> src/solutions/day22.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const Y0_ROOT: usize = 16807; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `X0_ROOT` [INFO] [stdout] --> src/solutions/day22.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | const X0_ROOT: usize = 48271; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `EROSION_MOD` [INFO] [stdout] --> src/solutions/day22.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | const EROSION_MOD: u32 = 20183; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day22.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_cave_type` [INFO] [stdout] --> src/solutions/day22.rs:102:4 [INFO] [stdout] | [INFO] [stdout] 102 | fn get_cave_type( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_erosion_level` [INFO] [stdout] --> src/solutions/day22.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn get_erosion_level( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `estimate_cost` [INFO] [stdout] --> src/solutions/day22.rs:141:4 [INFO] [stdout] | [INFO] [stdout] 141 | fn estimate_cost(position: Coords, cur_tool: u8, target_pos: Coords) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day3.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `GuardStart` [INFO] [stdout] --> src/solutions/day4.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | GuardStart, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, PartialEq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `GuardSleep` [INFO] [stdout] --> src/solutions/day4.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | GuardSleep, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, PartialEq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `GuardWake` [INFO] [stdout] --> src/solutions/day4.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | GuardWake, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, PartialEq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `time` [INFO] [stdout] --> src/solutions/day4.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | time: DateTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `log_type` [INFO] [stdout] --> src/solutions/day4.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | log_type: GuardLogType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `guard` [INFO] [stdout] --> src/solutions/day4.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | guard: u32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day4.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_log_from_line` [INFO] [stdout] --> src/solutions/day4.rs:102:4 [INFO] [stdout] | [INFO] [stdout] 102 | fn parse_log_from_line(line: &str) -> GuardLog { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_log_type_from_message` [INFO] [stdout] --> src/solutions/day4.rs:118:4 [INFO] [stdout] | [INFO] [stdout] 118 | fn parse_log_type_from_message(message: &str) -> (GuardLogType, u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day5.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `react_string` [INFO] [stdout] --> src/solutions/day5.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn react_string(line: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `x` [INFO] [stdout] --> src/solutions/day6.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | x: u16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day6.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Copy, Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `y` [INFO] [stdout] --> src/solutions/day6.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | y: u16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day6.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Copy, Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `d` [INFO] [stdout] --> src/solutions/day6.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | d: u16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day6.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Copy, Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `seed_id` [INFO] [stdout] --> src/solutions/day6.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | seed_id: u16, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day6.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Copy, Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `dist_to` [INFO] [stdout] --> src/solutions/day6.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | fn dist_to(&self, other_x: u16, other_y: u16) -> u16 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day6.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_point` [INFO] [stdout] --> src/solutions/day6.rs:101:4 [INFO] [stdout] | [INFO] [stdout] 101 | fn parse_point(line: &str, index: u16) -> FillPoint { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day7.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `node_cost` [INFO] [stdout] --> src/solutions/day7.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn node_cost(node: &char) -> u16 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day8.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sum_metadata_rec` [INFO] [stdout] --> src/solutions/day8.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn sum_metadata_rec(tree_data: &mut VecDeque) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_node_value` [INFO] [stdout] --> src/solutions/day8.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn get_node_value(tree_data: &mut VecDeque) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day9.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `reg_pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day16.rs:92:20 [INFO] [stdout] | [INFO] [stdout] 92 | static ref reg_pattern: Regex = [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `REG_PATTERN` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day17.rs:57:20 [INFO] [stdout] | [INFO] [stdout] 57 | static ref pattern: Regex = [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day23.rs:25:20 [INFO] [stdout] | [INFO] [stdout] 25 | static ref pattern: Regex = [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `log_pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day4.rs:104:20 [INFO] [stdout] | [INFO] [stdout] 104 | static ref log_pattern: Regex = Regex::new(r"^\[(.*?)\] (.*)$").unwrap(); [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `LOG_PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `message_pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day4.rs:121:24 [INFO] [stdout] | [INFO] [stdout] 121 | static ref message_pattern: Regex = Regex::new(r"Guard #(\d+) begins").unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MESSAGE_PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `point_pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day6.rs:103:20 [INFO] [stdout] | [INFO] [stdout] 103 | static ref point_pattern: Regex = Regex::new(r"^(\d+), (\d+)$").unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `POINT_PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 161 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 10.38s [INFO] running `Command { std: "docker" "inspect" "b471f91390d27940b5727d11f5fdeb0397ad672f215aec1ca1d82e74ebded56c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b471f91390d27940b5727d11f5fdeb0397ad672f215aec1ca1d82e74ebded56c", kill_on_drop: false }` [INFO] [stdout] b471f91390d27940b5727d11f5fdeb0397ad672f215aec1ca1d82e74ebded56c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e214b17715d42bde6c9fa337d0c13cdb00904106ee0f7da1b32b5c76b56a4553 [INFO] running `Command { std: "docker" "start" "-a" "e214b17715d42bde6c9fa337d0c13cdb00904106ee0f7da1b32b5c76b56a4553", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling advent_2018 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:42:13 [INFO] [stdout] | [INFO] [stdout] 42 | fn time(f: &Fn()) { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 42 - fn time(f: &Fn()) { [INFO] [stdout] 42 + fn time(f: &dyn Fn()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | fn time_with_label(f: &Fn(), label: &str) { [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 46 - fn time_with_label(f: &Fn(), label: &str) { [INFO] [stdout] 46 + fn time_with_label(f: &dyn Fn(), label: &str) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/solutions/day16.rs:129:14 [INFO] [stdout] | [INFO] [stdout] 129 | method: &Fn(&Vec, &mut Vec), [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 129 - method: &Fn(&Vec, &mut Vec), [INFO] [stdout] 129 + method: &dyn Fn(&Vec, &mut Vec), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/solutions/day16.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | let methods: Vec<&Fn(&Vec, &mut Vec)> = vec![ [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 10 - let methods: Vec<&Fn(&Vec, &mut Vec)> = vec![ [INFO] [stdout] 10 + let methods: Vec<&dyn Fn(&Vec, &mut Vec)> = vec![ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/solutions/day18.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let mut row: Vec<_> = line [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 is never used: `solve` [INFO] [stdout] --> src/solutions/day1.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Point` [INFO] [stdout] --> src/solutions/day10.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct Point(i32, i32); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `PointWithVelocity` [INFO] [stdout] --> src/solutions/day10.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct PointWithVelocity { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day10.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `print_point_section` [INFO] [stdout] --> src/solutions/day10.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn print_point_section( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day11.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `power_level` [INFO] [stdout] --> src/solutions/day11.rs:85:4 [INFO] [stdout] | [INFO] [stdout] 85 | fn power_level(x: i32, y: i32, serial_number: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day12.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_rule` [INFO] [stdout] --> src/solutions/day12.rs:80:4 [INFO] [stdout] | [INFO] [stdout] 80 | fn parse_rule(line: &String) -> ((bool, bool, bool, bool, bool), bool) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `print_result` [INFO] [stdout] --> src/solutions/day12.rs:96:4 [INFO] [stdout] | [INFO] [stdout] 96 | fn print_result(next_config: &Vec<&bool>, zero_offset: i64, generation: i64) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day13.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_grid` [INFO] [stdout] --> src/solutions/day13.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn parse_grid(lines: &Vec) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `initiate_carts` [INFO] [stdout] --> src/solutions/day13.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn initiate_carts(lines: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `move_cart_on_grid` [INFO] [stdout] --> src/solutions/day13.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn move_cart_on_grid(cart: &mut Cart, grid: &Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `position` [INFO] [stdout] --> src/solutions/day13.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | position: Point, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day13.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `direction` [INFO] [stdout] --> src/solutions/day13.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | direction: Direction, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day13.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `intersection_count` [INFO] [stdout] --> src/solutions/day13.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | intersection_count: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day13.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `crashed` [INFO] [stdout] --> src/solutions/day13.rs:142:5 [INFO] [stdout] | [INFO] [stdout] 142 | crashed: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day13.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `RailType` [INFO] [stdout] --> src/solutions/day13.rs:145:6 [INFO] [stdout] | [INFO] [stdout] 145 | enum RailType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day14.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `build_recipes_to` [INFO] [stdout] --> src/solutions/day14.rs:40:4 [INFO] [stdout] | [INFO] [stdout] 40 | fn build_recipes_to( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day15.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_grid` [INFO] [stdout] --> src/solutions/day15.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn parse_grid(lines: &Vec) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_units` [INFO] [stdout] --> src/solutions/day15.rs:67:4 [INFO] [stdout] | [INFO] [stdout] 67 | fn parse_units(lines: &Vec, elf_power: u8) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fight_battle` [INFO] [stdout] --> src/solutions/day15.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn fight_battle(grid: &Vec>, units: &mut HashMap) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `has_targets` [INFO] [stdout] --> src/solutions/day15.rs:111:4 [INFO] [stdout] | [INFO] [stdout] 111 | fn has_targets(unit_pos: &Point, units: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `has_adjacent_targets` [INFO] [stdout] --> src/solutions/day15.rs:116:4 [INFO] [stdout] | [INFO] [stdout] 116 | fn has_adjacent_targets(unit_pos: &Point, units: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `take_turn` [INFO] [stdout] --> src/solutions/day15.rs:124:4 [INFO] [stdout] | [INFO] [stdout] 124 | fn take_turn( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `make_best_move` [INFO] [stdout] --> src/solutions/day15.rs:146:4 [INFO] [stdout] | [INFO] [stdout] 146 | fn make_best_move( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bfs_best_target` [INFO] [stdout] --> src/solutions/day15.rs:195:4 [INFO] [stdout] | [INFO] [stdout] 195 | fn bfs_best_target( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `grid_get` [INFO] [stdout] --> src/solutions/day15.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn grid_get(point: &Point, grid: &Vec>) -> CellType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `attack` [INFO] [stdout] --> src/solutions/day15.rs:251:4 [INFO] [stdout] | [INFO] [stdout] 251 | fn attack(unit_pos: &Point, units: &mut HashMap) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Open` [INFO] [stdout] --> src/solutions/day15.rs:303:5 [INFO] [stdout] | [INFO] [stdout] 303 | Open, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day15.rs:301:27 [INFO] [stdout] | [INFO] [stdout] 301 | #[derive(PartialEq, Copy, Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Wall` [INFO] [stdout] --> src/solutions/day15.rs:304:5 [INFO] [stdout] | [INFO] [stdout] 304 | Wall, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day15.rs:301:27 [INFO] [stdout] | [INFO] [stdout] 301 | #[derive(PartialEq, Copy, Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Goblin` [INFO] [stdout] --> src/solutions/day15.rs:309:5 [INFO] [stdout] | [INFO] [stdout] 309 | Goblin, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Elf` [INFO] [stdout] --> src/solutions/day15.rs:310:5 [INFO] [stdout] | [INFO] [stdout] 310 | Elf, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `hit_points` [INFO] [stdout] --> src/solutions/day15.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | hit_points: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `attack_power` [INFO] [stdout] --> src/solutions/day15.rs:316:5 [INFO] [stdout] | [INFO] [stdout] 316 | attack_power: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `position` [INFO] [stdout] --> src/solutions/day15.rs:317:5 [INFO] [stdout] | [INFO] [stdout] 317 | position: Point, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/solutions/day15.rs:321:8 [INFO] [stdout] | [INFO] [stdout] 321 | fn new(team: BattleTeam, x: u32, y: u32, power: u8) -> BattleUnit { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_goblin` [INFO] [stdout] --> src/solutions/day15.rs:330:8 [INFO] [stdout] | [INFO] [stdout] 330 | fn new_goblin(x: u32, y: u32) -> BattleUnit { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_elf` [INFO] [stdout] --> src/solutions/day15.rs:334:8 [INFO] [stdout] | [INFO] [stdout] 334 | fn new_elf(x: u32, y: u32, power: u8) -> BattleUnit { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day16.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_registers` [INFO] [stdout] --> src/solutions/day16.rs:90:4 [INFO] [stdout] | [INFO] [stdout] 90 | fn parse_registers(input: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_command` [INFO] [stdout] --> src/solutions/day16.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn parse_command(input: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `reg_equal` [INFO] [stdout] --> src/solutions/day16.rs:115:4 [INFO] [stdout] | [INFO] [stdout] 115 | fn reg_equal(first: &Vec, second: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `exec_and_check` [INFO] [stdout] --> src/solutions/day16.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn exec_and_check( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `reg_copy` [INFO] [stdout] --> src/solutions/day16.rs:140:4 [INFO] [stdout] | [INFO] [stdout] 140 | fn reg_copy(original: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addr` [INFO] [stdout] --> src/solutions/day16.rs:144:4 [INFO] [stdout] | [INFO] [stdout] 144 | fn addr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addi` [INFO] [stdout] --> src/solutions/day16.rs:147:4 [INFO] [stdout] | [INFO] [stdout] 147 | fn addi(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mulr` [INFO] [stdout] --> src/solutions/day16.rs:151:4 [INFO] [stdout] | [INFO] [stdout] 151 | fn mulr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `muli` [INFO] [stdout] --> src/solutions/day16.rs:154:4 [INFO] [stdout] | [INFO] [stdout] 154 | fn muli(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `banr` [INFO] [stdout] --> src/solutions/day16.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn banr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bani` [INFO] [stdout] --> src/solutions/day16.rs:161:4 [INFO] [stdout] | [INFO] [stdout] 161 | fn bani(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `borr` [INFO] [stdout] --> src/solutions/day16.rs:165:4 [INFO] [stdout] | [INFO] [stdout] 165 | fn borr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bori` [INFO] [stdout] --> src/solutions/day16.rs:168:4 [INFO] [stdout] | [INFO] [stdout] 168 | fn bori(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `setr` [INFO] [stdout] --> src/solutions/day16.rs:172:4 [INFO] [stdout] | [INFO] [stdout] 172 | fn setr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `seti` [INFO] [stdout] --> src/solutions/day16.rs:175:4 [INFO] [stdout] | [INFO] [stdout] 175 | fn seti(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gtir` [INFO] [stdout] --> src/solutions/day16.rs:179:4 [INFO] [stdout] | [INFO] [stdout] 179 | fn gtir(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gtri` [INFO] [stdout] --> src/solutions/day16.rs:186:4 [INFO] [stdout] | [INFO] [stdout] 186 | fn gtri(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gtrr` [INFO] [stdout] --> src/solutions/day16.rs:193:4 [INFO] [stdout] | [INFO] [stdout] 193 | fn gtrr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `eqir` [INFO] [stdout] --> src/solutions/day16.rs:201:4 [INFO] [stdout] | [INFO] [stdout] 201 | fn eqir(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `eqri` [INFO] [stdout] --> src/solutions/day16.rs:208:4 [INFO] [stdout] | [INFO] [stdout] 208 | fn eqri(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `eqrr` [INFO] [stdout] --> src/solutions/day16.rs:215:4 [INFO] [stdout] | [INFO] [stdout] 215 | fn eqrr(command: &Vec, regs: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TOUCHED` [INFO] [stdout] --> src/solutions/day17.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const TOUCHED: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `WATER` [INFO] [stdout] --> src/solutions/day17.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const WATER: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CLAY` [INFO] [stdout] --> src/solutions/day17.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const CLAY: u8 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day17.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_bounds` [INFO] [stdout] --> src/solutions/day17.rs:55:4 [INFO] [stdout] | [INFO] [stdout] 55 | fn parse_bounds(specifier: &str) -> (u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `flood_down` [INFO] [stdout] --> src/solutions/day17.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn flood_down( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `flood_left_right` [INFO] [stdout] --> src/solutions/day17.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn flood_left_right(grid: &mut HashMap<(u32, u32), u8>, from_loc: (u32, u32), max_y: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `empty_left_right` [INFO] [stdout] --> src/solutions/day17.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn empty_left_right(grid: &mut HashMap<(u32, u32), u8>, from_loc: (u32, u32)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `OPEN` [INFO] [stdout] --> src/solutions/day18.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | const OPEN: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TREES` [INFO] [stdout] --> src/solutions/day18.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const TREES: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LUMBERYARD` [INFO] [stdout] --> src/solutions/day18.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const LUMBERYARD: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day18.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lines_to_byte_grid` [INFO] [stdout] --> src/solutions/day18.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn lines_to_byte_grid(lines: &Vec) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `compute_next_step` [INFO] [stdout] --> src/solutions/day18.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn compute_next_step(grid: &Vec>, next_grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `count_neighbors` [INFO] [stdout] --> src/solutions/day18.rs:99:4 [INFO] [stdout] | [INFO] [stdout] 99 | fn count_neighbors(point: Point, grid: &Vec>) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `grid_get` [INFO] [stdout] --> src/solutions/day18.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn grid_get(point: &Point, grid: &Vec>) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `compute_resource_value` [INFO] [stdout] --> src/solutions/day18.rs:122:4 [INFO] [stdout] | [INFO] [stdout] 122 | fn compute_resource_value(grid: &Vec>) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `grid_to_string` [INFO] [stdout] --> src/solutions/day18.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn grid_to_string(grid: &Vec>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day19.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/solutions/day19.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | fn new(ip_reg: u8) -> WristComputer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_next_ip` [INFO] [stdout] --> src/solutions/day19.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | fn get_next_ip(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `execute_program` [INFO] [stdout] --> src/solutions/day19.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | fn execute_program(&mut self, program: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `execute` [INFO] [stdout] --> src/solutions/day19.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | fn execute(&mut self, instr: &WristComputerInstruction) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `addr` [INFO] [stdout] --> src/solutions/day19.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | fn addr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `addi` [INFO] [stdout] --> src/solutions/day19.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 86 | fn addi(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mulr` [INFO] [stdout] --> src/solutions/day19.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | fn mulr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `muli` [INFO] [stdout] --> src/solutions/day19.rs:94:8 [INFO] [stdout] | [INFO] [stdout] 94 | fn muli(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `modr` [INFO] [stdout] --> src/solutions/day19.rs:98:8 [INFO] [stdout] | [INFO] [stdout] 98 | fn modr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `modi` [INFO] [stdout] --> src/solutions/day19.rs:102:8 [INFO] [stdout] | [INFO] [stdout] 102 | fn modi(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `banr` [INFO] [stdout] --> src/solutions/day19.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | fn banr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `bani` [INFO] [stdout] --> src/solutions/day19.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | fn bani(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `borr` [INFO] [stdout] --> src/solutions/day19.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | fn borr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `bori` [INFO] [stdout] --> src/solutions/day19.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | fn bori(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `setr` [INFO] [stdout] --> src/solutions/day19.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 121 | fn setr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `seti` [INFO] [stdout] --> src/solutions/day19.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | fn seti(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `gtir` [INFO] [stdout] --> src/solutions/day19.rs:128:8 [INFO] [stdout] | [INFO] [stdout] 128 | fn gtir(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `gtri` [INFO] [stdout] --> src/solutions/day19.rs:135:8 [INFO] [stdout] | [INFO] [stdout] 135 | fn gtri(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `gtrr` [INFO] [stdout] --> src/solutions/day19.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | fn gtrr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `eqir` [INFO] [stdout] --> src/solutions/day19.rs:150:8 [INFO] [stdout] | [INFO] [stdout] 150 | fn eqir(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `eqri` [INFO] [stdout] --> src/solutions/day19.rs:157:8 [INFO] [stdout] | [INFO] [stdout] 157 | fn eqri(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `eqrr` [INFO] [stdout] --> src/solutions/day19.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | fn eqrr(&mut self, args: &Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `WristComputerInstruction` [INFO] [stdout] --> src/solutions/day19.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | struct WristComputerInstruction<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_str` [INFO] [stdout] --> src/solutions/day19.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 186 | fn parse_str(line: &'a str) -> WristComputerInstruction<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day2.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day20.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_map` [INFO] [stdout] --> src/solutions/day20.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn parse_map<'a, 'b>(raw_map: &'a [u8], end: usize, node_store: &'b mut Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_sequence` [INFO] [stdout] --> src/solutions/day20.rs:38:4 [INFO] [stdout] | [INFO] [stdout] 38 | fn parse_sequence<'a, 'b>( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_branches` [INFO] [stdout] --> src/solutions/day20.rs:87:4 [INFO] [stdout] | [INFO] [stdout] 87 | fn parse_branches<'a, 'b>( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `follow_sequential_steps` [INFO] [stdout] --> src/solutions/day20.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn follow_sequential_steps( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `follow_branches` [INFO] [stdout] --> src/solutions/day20.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn follow_branches( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `MapNode` [INFO] [stdout] --> src/solutions/day20.rs:178:8 [INFO] [stdout] | [INFO] [stdout] 178 | struct MapNode<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `empty` [INFO] [stdout] --> src/solutions/day20.rs:185:8 [INFO] [stdout] | [INFO] [stdout] 185 | fn empty(next: Option) -> MapNode<'a> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `has_branches` [INFO] [stdout] --> src/solutions/day20.rs:193:8 [INFO] [stdout] | [INFO] [stdout] 193 | fn has_branches(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day21.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `Y0_ROOT` [INFO] [stdout] --> src/solutions/day22.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const Y0_ROOT: usize = 16807; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `X0_ROOT` [INFO] [stdout] --> src/solutions/day22.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | const X0_ROOT: usize = 48271; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `EROSION_MOD` [INFO] [stdout] --> src/solutions/day22.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | const EROSION_MOD: u32 = 20183; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day22.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_cave_type` [INFO] [stdout] --> src/solutions/day22.rs:102:4 [INFO] [stdout] | [INFO] [stdout] 102 | fn get_cave_type( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_erosion_level` [INFO] [stdout] --> src/solutions/day22.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn get_erosion_level( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `estimate_cost` [INFO] [stdout] --> src/solutions/day22.rs:141:4 [INFO] [stdout] | [INFO] [stdout] 141 | fn estimate_cost(position: Coords, cur_tool: u8, target_pos: Coords) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day3.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `GuardStart` [INFO] [stdout] --> src/solutions/day4.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | GuardStart, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, PartialEq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `GuardSleep` [INFO] [stdout] --> src/solutions/day4.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | GuardSleep, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, PartialEq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `GuardWake` [INFO] [stdout] --> src/solutions/day4.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | GuardWake, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, PartialEq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `time` [INFO] [stdout] --> src/solutions/day4.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | time: DateTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `log_type` [INFO] [stdout] --> src/solutions/day4.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | log_type: GuardLogType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `guard` [INFO] [stdout] --> src/solutions/day4.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | guard: u32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day4.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day4.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_log_from_line` [INFO] [stdout] --> src/solutions/day4.rs:102:4 [INFO] [stdout] | [INFO] [stdout] 102 | fn parse_log_from_line(line: &str) -> GuardLog { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_log_type_from_message` [INFO] [stdout] --> src/solutions/day4.rs:118:4 [INFO] [stdout] | [INFO] [stdout] 118 | fn parse_log_type_from_message(message: &str) -> (GuardLogType, u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day5.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `react_string` [INFO] [stdout] --> src/solutions/day5.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn react_string(line: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `x` [INFO] [stdout] --> src/solutions/day6.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | x: u16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day6.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Copy, Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `y` [INFO] [stdout] --> src/solutions/day6.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | y: u16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day6.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Copy, Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `d` [INFO] [stdout] --> src/solutions/day6.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | d: u16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day6.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Copy, Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `seed_id` [INFO] [stdout] --> src/solutions/day6.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | seed_id: u16, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/solutions/day6.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Copy, Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `dist_to` [INFO] [stdout] --> src/solutions/day6.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | fn dist_to(&self, other_x: u16, other_y: u16) -> u16 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day6.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_point` [INFO] [stdout] --> src/solutions/day6.rs:101:4 [INFO] [stdout] | [INFO] [stdout] 101 | fn parse_point(line: &str, index: u16) -> FillPoint { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day7.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `node_cost` [INFO] [stdout] --> src/solutions/day7.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn node_cost(node: &char) -> u16 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day8.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sum_metadata_rec` [INFO] [stdout] --> src/solutions/day8.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn sum_metadata_rec(tree_data: &mut VecDeque) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_node_value` [INFO] [stdout] --> src/solutions/day8.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn get_node_value(tree_data: &mut VecDeque) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `solve` [INFO] [stdout] --> src/solutions/day9.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn solve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `reg_pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day16.rs:92:20 [INFO] [stdout] | [INFO] [stdout] 92 | static ref reg_pattern: Regex = [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `REG_PATTERN` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day17.rs:57:20 [INFO] [stdout] | [INFO] [stdout] 57 | static ref pattern: Regex = [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day23.rs:25:20 [INFO] [stdout] | [INFO] [stdout] 25 | static ref pattern: Regex = [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `log_pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day4.rs:104:20 [INFO] [stdout] | [INFO] [stdout] 104 | static ref log_pattern: Regex = Regex::new(r"^\[(.*?)\] (.*)$").unwrap(); [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `LOG_PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `message_pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day4.rs:121:24 [INFO] [stdout] | [INFO] [stdout] 121 | static ref message_pattern: Regex = Regex::new(r"Guard #(\d+) begins").unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MESSAGE_PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `point_pattern` should have an upper case name [INFO] [stdout] --> src/solutions/day6.rs:103:20 [INFO] [stdout] | [INFO] [stdout] 103 | static ref point_pattern: Regex = Regex::new(r"^(\d+), (\d+)$").unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `POINT_PATTERN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 161 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.09s [INFO] running `Command { std: "docker" "inspect" "e214b17715d42bde6c9fa337d0c13cdb00904106ee0f7da1b32b5c76b56a4553", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e214b17715d42bde6c9fa337d0c13cdb00904106ee0f7da1b32b5c76b56a4553", kill_on_drop: false }` [INFO] [stdout] e214b17715d42bde6c9fa337d0c13cdb00904106ee0f7da1b32b5c76b56a4553 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 71962e70ff642297e15b6945eaaa0c2ac0cd436fa4c2fb0dc4ff30461aa1d847 [INFO] running `Command { std: "docker" "start" "-a" "71962e70ff642297e15b6945eaaa0c2ac0cd436fa4c2fb0dc4ff30461aa1d847", kill_on_drop: false }` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | fn time(f: &Fn()) { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 42 - fn time(f: &Fn()) { [INFO] [stderr] 42 + fn time(f: &dyn Fn()) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:46:24 [INFO] [stderr] | [INFO] [stderr] 46 | fn time_with_label(f: &Fn(), label: &str) { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 46 - fn time_with_label(f: &Fn(), label: &str) { [INFO] [stderr] 46 + fn time_with_label(f: &dyn Fn(), label: &str) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solutions/day16.rs:129:14 [INFO] [stderr] | [INFO] [stderr] 129 | method: &Fn(&Vec, &mut Vec), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 129 - method: &Fn(&Vec, &mut Vec), [INFO] [stderr] 129 + method: &dyn Fn(&Vec, &mut Vec), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solutions/day16.rs:10:23 [INFO] [stderr] | [INFO] [stderr] 10 | let methods: Vec<&Fn(&Vec, &mut Vec)> = vec![ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 10 - let methods: Vec<&Fn(&Vec, &mut Vec)> = vec![ [INFO] [stderr] 10 + let methods: Vec<&dyn Fn(&Vec, &mut Vec)> = vec![ [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/solutions/day18.rs:56:13 [INFO] [stderr] | [INFO] [stderr] 56 | let mut row: Vec<_> = line [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day1.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Point` [INFO] [stderr] --> src/solutions/day10.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | struct Point(i32, i32); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `PointWithVelocity` [INFO] [stderr] --> src/solutions/day10.rs:6:8 [INFO] [stderr] | [INFO] [stderr] 6 | struct PointWithVelocity { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day10.rs:11:8 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `print_point_section` [INFO] [stderr] --> src/solutions/day10.rs:78:4 [INFO] [stderr] | [INFO] [stderr] 78 | fn print_point_section( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day11.rs:1:8 [INFO] [stderr] | [INFO] [stderr] 1 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `power_level` [INFO] [stderr] --> src/solutions/day11.rs:85:4 [INFO] [stderr] | [INFO] [stderr] 85 | fn power_level(x: i32, y: i32, serial_number: i32) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day12.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_rule` [INFO] [stderr] --> src/solutions/day12.rs:80:4 [INFO] [stderr] | [INFO] [stderr] 80 | fn parse_rule(line: &String) -> ((bool, bool, bool, bool, bool), bool) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `print_result` [INFO] [stderr] --> src/solutions/day12.rs:96:4 [INFO] [stderr] | [INFO] [stderr] 96 | fn print_result(next_config: &Vec<&bool>, zero_offset: i64, generation: i64) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day13.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_grid` [INFO] [stderr] --> src/solutions/day13.rs:50:4 [INFO] [stderr] | [INFO] [stderr] 50 | fn parse_grid(lines: &Vec) -> Vec> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `initiate_carts` [INFO] [stderr] --> src/solutions/day13.rs:71:4 [INFO] [stderr] | [INFO] [stderr] 71 | fn initiate_carts(lines: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `move_cart_on_grid` [INFO] [stderr] --> src/solutions/day13.rs:112:4 [INFO] [stderr] | [INFO] [stderr] 112 | fn move_cart_on_grid(cart: &mut Cart, grid: &Vec>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `position` [INFO] [stderr] --> src/solutions/day13.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | position: Point, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day13.rs:137:10 [INFO] [stderr] | [INFO] [stderr] 137 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `direction` [INFO] [stderr] --> src/solutions/day13.rs:140:5 [INFO] [stderr] | [INFO] [stderr] 140 | direction: Direction, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day13.rs:137:10 [INFO] [stderr] | [INFO] [stderr] 137 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `intersection_count` [INFO] [stderr] --> src/solutions/day13.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | intersection_count: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day13.rs:137:10 [INFO] [stderr] | [INFO] [stderr] 137 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `crashed` [INFO] [stderr] --> src/solutions/day13.rs:142:5 [INFO] [stderr] | [INFO] [stderr] 142 | crashed: bool, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `Cart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day13.rs:137:10 [INFO] [stderr] | [INFO] [stderr] 137 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `RailType` [INFO] [stderr] --> src/solutions/day13.rs:145:6 [INFO] [stderr] | [INFO] [stderr] 145 | enum RailType { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day14.rs:1:8 [INFO] [stderr] | [INFO] [stderr] 1 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `build_recipes_to` [INFO] [stderr] --> src/solutions/day14.rs:40:4 [INFO] [stderr] | [INFO] [stderr] 40 | fn build_recipes_to( [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day15.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_grid` [INFO] [stderr] --> src/solutions/day15.rs:50:4 [INFO] [stderr] | [INFO] [stderr] 50 | fn parse_grid(lines: &Vec) -> Vec> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_units` [INFO] [stderr] --> src/solutions/day15.rs:67:4 [INFO] [stderr] | [INFO] [stderr] 67 | fn parse_units(lines: &Vec, elf_power: u8) -> HashMap { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `fight_battle` [INFO] [stderr] --> src/solutions/day15.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn fight_battle(grid: &Vec>, units: &mut HashMap) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `has_targets` [INFO] [stderr] --> src/solutions/day15.rs:111:4 [INFO] [stderr] | [INFO] [stderr] 111 | fn has_targets(unit_pos: &Point, units: &HashMap) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `has_adjacent_targets` [INFO] [stderr] --> src/solutions/day15.rs:116:4 [INFO] [stderr] | [INFO] [stderr] 116 | fn has_adjacent_targets(unit_pos: &Point, units: &HashMap) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `take_turn` [INFO] [stderr] --> src/solutions/day15.rs:124:4 [INFO] [stderr] | [INFO] [stderr] 124 | fn take_turn( [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `make_best_move` [INFO] [stderr] --> src/solutions/day15.rs:146:4 [INFO] [stderr] | [INFO] [stderr] 146 | fn make_best_move( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bfs_best_target` [INFO] [stderr] --> src/solutions/day15.rs:195:4 [INFO] [stderr] | [INFO] [stderr] 195 | fn bfs_best_target( [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `grid_get` [INFO] [stderr] --> src/solutions/day15.rs:240:4 [INFO] [stderr] | [INFO] [stderr] 240 | fn grid_get(point: &Point, grid: &Vec>) -> CellType { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `attack` [INFO] [stderr] --> src/solutions/day15.rs:251:4 [INFO] [stderr] | [INFO] [stderr] 251 | fn attack(unit_pos: &Point, units: &mut HashMap) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Open` [INFO] [stderr] --> src/solutions/day15.rs:303:5 [INFO] [stderr] | [INFO] [stderr] 303 | Open, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day15.rs:301:27 [INFO] [stderr] | [INFO] [stderr] 301 | #[derive(PartialEq, Copy, Clone)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Wall` [INFO] [stderr] --> src/solutions/day15.rs:304:5 [INFO] [stderr] | [INFO] [stderr] 304 | Wall, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day15.rs:301:27 [INFO] [stderr] | [INFO] [stderr] 301 | #[derive(PartialEq, Copy, Clone)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Goblin` [INFO] [stderr] --> src/solutions/day15.rs:309:5 [INFO] [stderr] | [INFO] [stderr] 309 | Goblin, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Elf` [INFO] [stderr] --> src/solutions/day15.rs:310:5 [INFO] [stderr] | [INFO] [stderr] 310 | Elf, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `hit_points` [INFO] [stderr] --> src/solutions/day15.rs:315:5 [INFO] [stderr] | [INFO] [stderr] 315 | hit_points: u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `attack_power` [INFO] [stderr] --> src/solutions/day15.rs:316:5 [INFO] [stderr] | [INFO] [stderr] 316 | attack_power: u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `position` [INFO] [stderr] --> src/solutions/day15.rs:317:5 [INFO] [stderr] | [INFO] [stderr] 317 | position: Point, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/solutions/day15.rs:321:8 [INFO] [stderr] | [INFO] [stderr] 321 | fn new(team: BattleTeam, x: u32, y: u32, power: u8) -> BattleUnit { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new_goblin` [INFO] [stderr] --> src/solutions/day15.rs:330:8 [INFO] [stderr] | [INFO] [stderr] 330 | fn new_goblin(x: u32, y: u32) -> BattleUnit { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new_elf` [INFO] [stderr] --> src/solutions/day15.rs:334:8 [INFO] [stderr] | [INFO] [stderr] 334 | fn new_elf(x: u32, y: u32, power: u8) -> BattleUnit { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day16.rs:5:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_registers` [INFO] [stderr] --> src/solutions/day16.rs:90:4 [INFO] [stderr] | [INFO] [stderr] 90 | fn parse_registers(input: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_command` [INFO] [stderr] --> src/solutions/day16.rs:108:4 [INFO] [stderr] | [INFO] [stderr] 108 | fn parse_command(input: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `reg_equal` [INFO] [stderr] --> src/solutions/day16.rs:115:4 [INFO] [stderr] | [INFO] [stderr] 115 | fn reg_equal(first: &Vec, second: &Vec) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `exec_and_check` [INFO] [stderr] --> src/solutions/day16.rs:128:4 [INFO] [stderr] | [INFO] [stderr] 128 | fn exec_and_check( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `reg_copy` [INFO] [stderr] --> src/solutions/day16.rs:140:4 [INFO] [stderr] | [INFO] [stderr] 140 | fn reg_copy(original: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `addr` [INFO] [stderr] --> src/solutions/day16.rs:144:4 [INFO] [stderr] | [INFO] [stderr] 144 | fn addr(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `addi` [INFO] [stderr] --> src/solutions/day16.rs:147:4 [INFO] [stderr] | [INFO] [stderr] 147 | fn addi(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mulr` [INFO] [stderr] --> src/solutions/day16.rs:151:4 [INFO] [stderr] | [INFO] [stderr] 151 | fn mulr(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `muli` [INFO] [stderr] --> src/solutions/day16.rs:154:4 [INFO] [stderr] | [INFO] [stderr] 154 | fn muli(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `banr` [INFO] [stderr] --> src/solutions/day16.rs:158:4 [INFO] [stderr] | [INFO] [stderr] 158 | fn banr(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bani` [INFO] [stderr] --> src/solutions/day16.rs:161:4 [INFO] [stderr] | [INFO] [stderr] 161 | fn bani(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `borr` [INFO] [stderr] --> src/solutions/day16.rs:165:4 [INFO] [stderr] | [INFO] [stderr] 165 | fn borr(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bori` [INFO] [stderr] --> src/solutions/day16.rs:168:4 [INFO] [stderr] | [INFO] [stderr] 168 | fn bori(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `setr` [INFO] [stderr] --> src/solutions/day16.rs:172:4 [INFO] [stderr] | [INFO] [stderr] 172 | fn setr(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `seti` [INFO] [stderr] --> src/solutions/day16.rs:175:4 [INFO] [stderr] | [INFO] [stderr] 175 | fn seti(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gtir` [INFO] [stderr] --> src/solutions/day16.rs:179:4 [INFO] [stderr] | [INFO] [stderr] 179 | fn gtir(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gtri` [INFO] [stderr] --> src/solutions/day16.rs:186:4 [INFO] [stderr] | [INFO] [stderr] 186 | fn gtri(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gtrr` [INFO] [stderr] --> src/solutions/day16.rs:193:4 [INFO] [stderr] | [INFO] [stderr] 193 | fn gtrr(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `eqir` [INFO] [stderr] --> src/solutions/day16.rs:201:4 [INFO] [stderr] | [INFO] [stderr] 201 | fn eqir(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `eqri` [INFO] [stderr] --> src/solutions/day16.rs:208:4 [INFO] [stderr] | [INFO] [stderr] 208 | fn eqri(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `eqrr` [INFO] [stderr] --> src/solutions/day16.rs:215:4 [INFO] [stderr] | [INFO] [stderr] 215 | fn eqrr(command: &Vec, regs: &mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TOUCHED` [INFO] [stderr] --> src/solutions/day17.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | const TOUCHED: u8 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `WATER` [INFO] [stderr] --> src/solutions/day17.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | const WATER: u8 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CLAY` [INFO] [stderr] --> src/solutions/day17.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | const CLAY: u8 = 3; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day17.rs:9:8 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_bounds` [INFO] [stderr] --> src/solutions/day17.rs:55:4 [INFO] [stderr] | [INFO] [stderr] 55 | fn parse_bounds(specifier: &str) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `flood_down` [INFO] [stderr] --> src/solutions/day17.rs:72:4 [INFO] [stderr] | [INFO] [stderr] 72 | fn flood_down( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `flood_left_right` [INFO] [stderr] --> src/solutions/day17.rs:108:4 [INFO] [stderr] | [INFO] [stderr] 108 | fn flood_left_right(grid: &mut HashMap<(u32, u32), u8>, from_loc: (u32, u32), max_y: u32) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `empty_left_right` [INFO] [stderr] --> src/solutions/day17.rs:153:4 [INFO] [stderr] | [INFO] [stderr] 153 | fn empty_left_right(grid: &mut HashMap<(u32, u32), u8>, from_loc: (u32, u32)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `OPEN` [INFO] [stderr] --> src/solutions/day18.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | const OPEN: u8 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TREES` [INFO] [stderr] --> src/solutions/day18.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | const TREES: u8 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `LUMBERYARD` [INFO] [stderr] --> src/solutions/day18.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | const LUMBERYARD: u8 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day18.rs:8:8 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lines_to_byte_grid` [INFO] [stderr] --> src/solutions/day18.rs:53:4 [INFO] [stderr] | [INFO] [stderr] 53 | fn lines_to_byte_grid(lines: &Vec) -> Vec> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `compute_next_step` [INFO] [stderr] --> src/solutions/day18.rs:70:4 [INFO] [stderr] | [INFO] [stderr] 70 | fn compute_next_step(grid: &Vec>, next_grid: &mut Vec>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `count_neighbors` [INFO] [stderr] --> src/solutions/day18.rs:99:4 [INFO] [stderr] | [INFO] [stderr] 99 | fn count_neighbors(point: Point, grid: &Vec>) -> (u8, u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `grid_get` [INFO] [stderr] --> src/solutions/day18.rs:112:4 [INFO] [stderr] | [INFO] [stderr] 112 | fn grid_get(point: &Point, grid: &Vec>) -> u8 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `compute_resource_value` [INFO] [stderr] --> src/solutions/day18.rs:122:4 [INFO] [stderr] | [INFO] [stderr] 122 | fn compute_resource_value(grid: &Vec>) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `grid_to_string` [INFO] [stderr] --> src/solutions/day18.rs:138:4 [INFO] [stderr] | [INFO] [stderr] 138 | fn grid_to_string(grid: &Vec>) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day19.rs:5:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/solutions/day19.rs:35:8 [INFO] [stderr] | [INFO] [stderr] 35 | fn new(ip_reg: u8) -> WristComputer { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `get_next_ip` [INFO] [stderr] --> src/solutions/day19.rs:44:8 [INFO] [stderr] | [INFO] [stderr] 44 | fn get_next_ip(&self) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `execute_program` [INFO] [stderr] --> src/solutions/day19.rs:48:8 [INFO] [stderr] | [INFO] [stderr] 48 | fn execute_program(&mut self, program: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `execute` [INFO] [stderr] --> src/solutions/day19.rs:56:8 [INFO] [stderr] | [INFO] [stderr] 56 | fn execute(&mut self, instr: &WristComputerInstruction) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `addr` [INFO] [stderr] --> src/solutions/day19.rs:82:8 [INFO] [stderr] | [INFO] [stderr] 82 | fn addr(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `addi` [INFO] [stderr] --> src/solutions/day19.rs:86:8 [INFO] [stderr] | [INFO] [stderr] 86 | fn addi(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `mulr` [INFO] [stderr] --> src/solutions/day19.rs:90:8 [INFO] [stderr] | [INFO] [stderr] 90 | fn mulr(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `muli` [INFO] [stderr] --> src/solutions/day19.rs:94:8 [INFO] [stderr] | [INFO] [stderr] 94 | fn muli(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `modr` [INFO] [stderr] --> src/solutions/day19.rs:98:8 [INFO] [stderr] | [INFO] [stderr] 98 | fn modr(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `modi` [INFO] [stderr] --> src/solutions/day19.rs:102:8 [INFO] [stderr] | [INFO] [stderr] 102 | fn modi(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `banr` [INFO] [stderr] --> src/solutions/day19.rs:106:8 [INFO] [stderr] | [INFO] [stderr] 106 | fn banr(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `bani` [INFO] [stderr] --> src/solutions/day19.rs:110:8 [INFO] [stderr] | [INFO] [stderr] 110 | fn bani(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `borr` [INFO] [stderr] --> src/solutions/day19.rs:114:8 [INFO] [stderr] | [INFO] [stderr] 114 | fn borr(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `bori` [INFO] [stderr] --> src/solutions/day19.rs:117:8 [INFO] [stderr] | [INFO] [stderr] 117 | fn bori(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `setr` [INFO] [stderr] --> src/solutions/day19.rs:121:8 [INFO] [stderr] | [INFO] [stderr] 121 | fn setr(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `seti` [INFO] [stderr] --> src/solutions/day19.rs:124:8 [INFO] [stderr] | [INFO] [stderr] 124 | fn seti(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `gtir` [INFO] [stderr] --> src/solutions/day19.rs:128:8 [INFO] [stderr] | [INFO] [stderr] 128 | fn gtir(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `gtri` [INFO] [stderr] --> src/solutions/day19.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | fn gtri(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `gtrr` [INFO] [stderr] --> src/solutions/day19.rs:142:8 [INFO] [stderr] | [INFO] [stderr] 142 | fn gtrr(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `eqir` [INFO] [stderr] --> src/solutions/day19.rs:150:8 [INFO] [stderr] | [INFO] [stderr] 150 | fn eqir(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `eqri` [INFO] [stderr] --> src/solutions/day19.rs:157:8 [INFO] [stderr] | [INFO] [stderr] 157 | fn eqri(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `eqrr` [INFO] [stderr] --> src/solutions/day19.rs:164:8 [INFO] [stderr] | [INFO] [stderr] 164 | fn eqrr(&mut self, args: &Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `WristComputerInstruction` [INFO] [stderr] --> src/solutions/day19.rs:180:8 [INFO] [stderr] | [INFO] [stderr] 180 | struct WristComputerInstruction<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `parse_str` [INFO] [stderr] --> src/solutions/day19.rs:186:8 [INFO] [stderr] | [INFO] [stderr] 186 | fn parse_str(line: &'a str) -> WristComputerInstruction<'a> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day2.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day20.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_map` [INFO] [stderr] --> src/solutions/day20.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | fn parse_map<'a, 'b>(raw_map: &'a [u8], end: usize, node_store: &'b mut Vec>) -> usize { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_sequence` [INFO] [stderr] --> src/solutions/day20.rs:38:4 [INFO] [stderr] | [INFO] [stderr] 38 | fn parse_sequence<'a, 'b>( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_branches` [INFO] [stderr] --> src/solutions/day20.rs:87:4 [INFO] [stderr] | [INFO] [stderr] 87 | fn parse_branches<'a, 'b>( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `follow_sequential_steps` [INFO] [stderr] --> src/solutions/day20.rs:108:4 [INFO] [stderr] | [INFO] [stderr] 108 | fn follow_sequential_steps( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `follow_branches` [INFO] [stderr] --> src/solutions/day20.rs:158:4 [INFO] [stderr] | [INFO] [stderr] 158 | fn follow_branches( [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `MapNode` [INFO] [stderr] --> src/solutions/day20.rs:178:8 [INFO] [stderr] | [INFO] [stderr] 178 | struct MapNode<'a> { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `empty` [INFO] [stderr] --> src/solutions/day20.rs:185:8 [INFO] [stderr] | [INFO] [stderr] 185 | fn empty(next: Option) -> MapNode<'a> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `has_branches` [INFO] [stderr] --> src/solutions/day20.rs:193:8 [INFO] [stderr] | [INFO] [stderr] 193 | fn has_branches(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day21.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `Y0_ROOT` [INFO] [stderr] --> src/solutions/day22.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | const Y0_ROOT: usize = 16807; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `X0_ROOT` [INFO] [stderr] --> src/solutions/day22.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | const X0_ROOT: usize = 48271; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `EROSION_MOD` [INFO] [stderr] --> src/solutions/day22.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | const EROSION_MOD: u32 = 20183; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day22.rs:20:8 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_cave_type` [INFO] [stderr] --> src/solutions/day22.rs:102:4 [INFO] [stderr] | [INFO] [stderr] 102 | fn get_cave_type( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_erosion_level` [INFO] [stderr] --> src/solutions/day22.rs:112:4 [INFO] [stderr] | [INFO] [stderr] 112 | fn get_erosion_level( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `estimate_cost` [INFO] [stderr] --> src/solutions/day22.rs:141:4 [INFO] [stderr] | [INFO] [stderr] 141 | fn estimate_cost(position: Coords, cur_tool: u8, target_pos: Coords) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day3.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `GuardStart` [INFO] [stderr] --> src/solutions/day4.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | GuardStart, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day4.rs:5:10 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Debug, PartialEq)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `GuardSleep` [INFO] [stderr] --> src/solutions/day4.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | GuardSleep, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day4.rs:5:10 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Debug, PartialEq)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `GuardWake` [INFO] [stderr] --> src/solutions/day4.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | GuardWake, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `GuardLogType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day4.rs:5:10 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Debug, PartialEq)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `time` [INFO] [stderr] --> src/solutions/day4.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | time: DateTime, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day4.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `log_type` [INFO] [stderr] --> src/solutions/day4.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | log_type: GuardLogType, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day4.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `guard` [INFO] [stderr] --> src/solutions/day4.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | guard: u32, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `GuardLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day4.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day4.rs:19:8 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_log_from_line` [INFO] [stderr] --> src/solutions/day4.rs:102:4 [INFO] [stderr] | [INFO] [stderr] 102 | fn parse_log_from_line(line: &str) -> GuardLog { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_log_type_from_message` [INFO] [stderr] --> src/solutions/day4.rs:118:4 [INFO] [stderr] | [INFO] [stderr] 118 | fn parse_log_type_from_message(message: &str) -> (GuardLogType, u32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day5.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `react_string` [INFO] [stderr] --> src/solutions/day5.rs:32:4 [INFO] [stderr] | [INFO] [stderr] 32 | fn react_string(line: Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `x` [INFO] [stderr] --> src/solutions/day6.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | x: u16, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day6.rs:6:16 [INFO] [stderr] | [INFO] [stderr] 6 | #[derive(Copy, Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `y` [INFO] [stderr] --> src/solutions/day6.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | y: u16, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day6.rs:6:16 [INFO] [stderr] | [INFO] [stderr] 6 | #[derive(Copy, Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `d` [INFO] [stderr] --> src/solutions/day6.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | d: u16, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day6.rs:6:16 [INFO] [stderr] | [INFO] [stderr] 6 | #[derive(Copy, Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `seed_id` [INFO] [stderr] --> src/solutions/day6.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | seed_id: u16, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `FillPoint` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/solutions/day6.rs:6:16 [INFO] [stderr] | [INFO] [stderr] 6 | #[derive(Copy, Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `dist_to` [INFO] [stderr] --> src/solutions/day6.rs:22:8 [INFO] [stderr] | [INFO] [stderr] 22 | fn dist_to(&self, other_x: u16, other_y: u16) -> u16 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day6.rs:28:8 [INFO] [stderr] | [INFO] [stderr] 28 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_point` [INFO] [stderr] --> src/solutions/day6.rs:101:4 [INFO] [stderr] | [INFO] [stderr] 101 | fn parse_point(line: &str, index: u16) -> FillPoint { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day7.rs:6:8 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `node_cost` [INFO] [stderr] --> src/solutions/day7.rs:128:4 [INFO] [stderr] | [INFO] [stderr] 128 | fn node_cost(node: &char) -> u16 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day8.rs:6:8 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sum_metadata_rec` [INFO] [stderr] --> src/solutions/day8.rs:25:4 [INFO] [stderr] | [INFO] [stderr] 25 | fn sum_metadata_rec(tree_data: &mut VecDeque) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_node_value` [INFO] [stderr] --> src/solutions/day8.rs:39:4 [INFO] [stderr] | [INFO] [stderr] 39 | fn get_node_value(tree_data: &mut VecDeque) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `solve` [INFO] [stderr] --> src/solutions/day9.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn solve() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static variable `reg_pattern` should have an upper case name [INFO] [stderr] --> src/solutions/day16.rs:92:20 [INFO] [stderr] | [INFO] [stderr] 92 | static ref reg_pattern: Regex = [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper case: `REG_PATTERN` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] [INFO] [stderr] warning: static variable `pattern` should have an upper case name [INFO] [stderr] --> src/solutions/day17.rs:57:20 [INFO] [stderr] | [INFO] [stderr] 57 | static ref pattern: Regex = [INFO] [stderr] | ^^^^^^^ help: convert the identifier to upper case: `PATTERN` [INFO] [stderr] [INFO] [stderr] warning: static variable `pattern` should have an upper case name [INFO] [stderr] --> src/solutions/day23.rs:25:20 [INFO] [stderr] | [INFO] [stderr] 25 | static ref pattern: Regex = [INFO] [stderr] | ^^^^^^^ help: convert the identifier to upper case: `PATTERN` [INFO] [stderr] [INFO] [stderr] warning: static variable `log_pattern` should have an upper case name [INFO] [stderr] --> src/solutions/day4.rs:104:20 [INFO] [stderr] | [INFO] [stderr] 104 | static ref log_pattern: Regex = Regex::new(r"^\[(.*?)\] (.*)$").unwrap(); [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper case: `LOG_PATTERN` [INFO] [stderr] [INFO] [stderr] warning: static variable `message_pattern` should have an upper case name [INFO] [stderr] --> src/solutions/day4.rs:121:24 [INFO] [stderr] | [INFO] [stderr] 121 | static ref message_pattern: Regex = Regex::new(r"Guard #(\d+) begins").unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MESSAGE_PATTERN` [INFO] [stderr] [INFO] [stderr] warning: static variable `point_pattern` should have an upper case name [INFO] [stderr] --> src/solutions/day6.rs:103:20 [INFO] [stderr] | [INFO] [stderr] 103 | static ref point_pattern: Regex = Regex::new(r"^(\d+), (\d+)$").unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `POINT_PATTERN` [INFO] [stderr] [INFO] [stderr] warning: `advent_2018` (bin "advent_2018" test) generated 161 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.01s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/adventlib-56895b7f25bb43e6) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/advent_2018-71f07a3c4c102fd1) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests adventlib [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "71962e70ff642297e15b6945eaaa0c2ac0cd436fa4c2fb0dc4ff30461aa1d847", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "71962e70ff642297e15b6945eaaa0c2ac0cd436fa4c2fb0dc4ff30461aa1d847", kill_on_drop: false }` [INFO] [stdout] 71962e70ff642297e15b6945eaaa0c2ac0cd436fa4c2fb0dc4ff30461aa1d847