[INFO] cloning repository https://github.com/lusen82/advent-of-code-2019 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lusen82/advent-of-code-2019" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flusen82%2Fadvent-of-code-2019", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flusen82%2Fadvent-of-code-2019'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a692ab544d3de01a6b026650c0d2eec28b1b6c74 [INFO] checking lusen82/advent-of-code-2019 against try#09ea730c380b8b9acb96ff87b724c45df920f793 for pr-134272 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flusen82%2Fadvent-of-code-2019" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/lusen82/advent-of-code-2019 on toolchain 09ea730c380b8b9acb96ff87b724c45df920f793 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09ea730c380b8b9acb96ff87b724c45df920f793" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/lusen82/advent-of-code-2019 [INFO] finished tweaking git repo https://github.com/lusen82/advent-of-code-2019 [INFO] tweaked toml for git repo https://github.com/lusen82/advent-of-code-2019 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/lusen82/advent-of-code-2019 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09ea730c380b8b9acb96ff87b724c45df920f793" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+09ea730c380b8b9acb96ff87b724c45df920f793" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ba87bf77f526fae4b1fe2f9c328188ebd322b815c8d17f116539a48a0f4d8fd2 [INFO] running `Command { std: "docker" "start" "-a" "ba87bf77f526fae4b1fe2f9c328188ebd322b815c8d17f116539a48a0f4d8fd2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ba87bf77f526fae4b1fe2f9c328188ebd322b815c8d17f116539a48a0f4d8fd2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ba87bf77f526fae4b1fe2f9c328188ebd322b815c8d17f116539a48a0f4d8fd2", kill_on_drop: false }` [INFO] [stdout] ba87bf77f526fae4b1fe2f9c328188ebd322b815c8d17f116539a48a0f4d8fd2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+09ea730c380b8b9acb96ff87b724c45df920f793" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4c607f7b01af8eee8bd4f5424343b1fd5fd88145805726a1b58667e3c1368e0b [INFO] running `Command { std: "docker" "start" "-a" "4c607f7b01af8eee8bd4f5424343b1fd5fd88145805726a1b58667e3c1368e0b", kill_on_drop: false }` [INFO] [stderr] Checking advent-of-code-2019 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, and `Read` [INFO] [stdout] --> src/main.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Read, BufReader, BufRead}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max` and `min` [INFO] [stdout] --> src/main.rs:4:16 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::BitAnd` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ops::BitAnd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::slice::SliceIndex` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::slice::SliceIndex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/day_2.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | for noun in (0..100) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 13 - for noun in (0..100) { [INFO] [stdout] 13 + for noun in 0..100 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/day_2.rs:14:21 [INFO] [stdout] | [INFO] [stdout] 14 | for verb in (0..100) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 14 - for verb in (0..100) { [INFO] [stdout] 14 + for verb in 0..100 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/day_5.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_01` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:163:8 [INFO] [stdout] | [INFO] [stdout] 163 | struct Instr_01 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr01` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:176:51 [INFO] [stdout] | [INFO] [stdout] 176 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 176 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 176 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:177:53 [INFO] [stdout] | [INFO] [stdout] 177 | let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 177 - let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 177 + let second_value = self.get_value_for_mode(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_02` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:192:8 [INFO] [stdout] | [INFO] [stdout] 192 | struct Instr_02 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr02` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:203:51 [INFO] [stdout] | [INFO] [stdout] 203 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 203 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 203 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:204:53 [INFO] [stdout] | [INFO] [stdout] 204 | let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 204 - let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 204 + let second_value = self.get_value_for_mode(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_03` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:219:8 [INFO] [stdout] | [INFO] [stdout] 219 | struct Instr_03 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr03` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:232:57 [INFO] [stdout] | [INFO] [stdout] 232 | let first_value = self.get_value_for_mode_usize((pointer + 1), ParamMode::IMMEDIATE, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 232 - let first_value = self.get_value_for_mode_usize((pointer + 1), ParamMode::IMMEDIATE, &memory); [INFO] [stdout] 232 + let first_value = self.get_value_for_mode_usize(pointer + 1, ParamMode::IMMEDIATE, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_04` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:249:8 [INFO] [stdout] | [INFO] [stdout] 249 | struct Instr_04 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr04` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:260:57 [INFO] [stdout] | [INFO] [stdout] 260 | let first_value = self.get_value_for_mode_usize((pointer + 1), ParamMode::IMMEDIATE, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 260 - let first_value = self.get_value_for_mode_usize((pointer + 1), ParamMode::IMMEDIATE, &memory); [INFO] [stdout] 260 + let first_value = self.get_value_for_mode_usize(pointer + 1, ParamMode::IMMEDIATE, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_05` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:275:8 [INFO] [stdout] | [INFO] [stdout] 275 | struct Instr_05 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr05` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:286:51 [INFO] [stdout] | [INFO] [stdout] 286 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 286 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 286 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:287:59 [INFO] [stdout] | [INFO] [stdout] 287 | let second_value = self.get_value_for_mode_usize((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 287 - let second_value = self.get_value_for_mode_usize((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 287 + let second_value = self.get_value_for_mode_usize(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_06` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:304:8 [INFO] [stdout] | [INFO] [stdout] 304 | struct Instr_06 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr06` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:315:51 [INFO] [stdout] | [INFO] [stdout] 315 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 315 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 315 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:316:59 [INFO] [stdout] | [INFO] [stdout] 316 | let second_value = self.get_value_for_mode_usize((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 316 - let second_value = self.get_value_for_mode_usize((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 316 + let second_value = self.get_value_for_mode_usize(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_07` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:334:8 [INFO] [stdout] | [INFO] [stdout] 334 | struct Instr_07 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:345:51 [INFO] [stdout] | [INFO] [stdout] 345 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 345 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 345 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:346:53 [INFO] [stdout] | [INFO] [stdout] 346 | let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 346 - let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 346 + let second_value = self.get_value_for_mode(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_08` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:368:8 [INFO] [stdout] | [INFO] [stdout] 368 | struct Instr_08 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr08` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:379:51 [INFO] [stdout] | [INFO] [stdout] 379 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 379 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 379 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:380:53 [INFO] [stdout] | [INFO] [stdout] 380 | let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 380 - let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 380 + let second_value = self.get_value_for_mode(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `assert_that` in this scope [INFO] [stdout] --> src/day_5.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | assert_that!(&["--version"], starts_with("rustfmt ")); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `assert_that` in this scope [INFO] [stdout] --> src/day_5.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | assert_that!(&["--version"], starts_with("rustfmt ")); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `assert_that` in this scope [INFO] [stdout] --> src/day_5.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | assert_that!(&["--", "-V"], starts_with("rustfmt ")); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `assert_that` in this scope [INFO] [stdout] --> src/day_5.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | assert_that!(&["--", "--version"], starts_with("rustfmt ")); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, and `Read` [INFO] [stdout] --> src/main.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Read, BufReader, BufRead}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max` and `min` [INFO] [stdout] --> src/main.rs:4:16 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::BitAnd` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ops::BitAnd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::slice::SliceIndex` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::slice::SliceIndex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/day_2.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | for noun in (0..100) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 13 - for noun in (0..100) { [INFO] [stdout] 13 + for noun in 0..100 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/day_2.rs:14:21 [INFO] [stdout] | [INFO] [stdout] 14 | for verb in (0..100) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 14 - for verb in (0..100) { [INFO] [stdout] 14 + for verb in 0..100 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/day_5.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_01` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:163:8 [INFO] [stdout] | [INFO] [stdout] 163 | struct Instr_01 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr01` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:176:51 [INFO] [stdout] | [INFO] [stdout] 176 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 176 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 176 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:177:53 [INFO] [stdout] | [INFO] [stdout] 177 | let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 177 - let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 177 + let second_value = self.get_value_for_mode(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_02` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:192:8 [INFO] [stdout] | [INFO] [stdout] 192 | struct Instr_02 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr02` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:203:51 [INFO] [stdout] | [INFO] [stdout] 203 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 203 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 203 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:204:53 [INFO] [stdout] | [INFO] [stdout] 204 | let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 204 - let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 204 + let second_value = self.get_value_for_mode(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_03` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:219:8 [INFO] [stdout] | [INFO] [stdout] 219 | struct Instr_03 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr03` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:232:57 [INFO] [stdout] | [INFO] [stdout] 232 | let first_value = self.get_value_for_mode_usize((pointer + 1), ParamMode::IMMEDIATE, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 232 - let first_value = self.get_value_for_mode_usize((pointer + 1), ParamMode::IMMEDIATE, &memory); [INFO] [stdout] 232 + let first_value = self.get_value_for_mode_usize(pointer + 1, ParamMode::IMMEDIATE, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_04` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:249:8 [INFO] [stdout] | [INFO] [stdout] 249 | struct Instr_04 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr04` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:260:57 [INFO] [stdout] | [INFO] [stdout] 260 | let first_value = self.get_value_for_mode_usize((pointer + 1), ParamMode::IMMEDIATE, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 260 - let first_value = self.get_value_for_mode_usize((pointer + 1), ParamMode::IMMEDIATE, &memory); [INFO] [stdout] 260 + let first_value = self.get_value_for_mode_usize(pointer + 1, ParamMode::IMMEDIATE, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_05` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:275:8 [INFO] [stdout] | [INFO] [stdout] 275 | struct Instr_05 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr05` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:286:51 [INFO] [stdout] | [INFO] [stdout] 286 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 286 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 286 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:287:59 [INFO] [stdout] | [INFO] [stdout] 287 | let second_value = self.get_value_for_mode_usize((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 287 - let second_value = self.get_value_for_mode_usize((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 287 + let second_value = self.get_value_for_mode_usize(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_06` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:304:8 [INFO] [stdout] | [INFO] [stdout] 304 | struct Instr_06 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr06` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:315:51 [INFO] [stdout] | [INFO] [stdout] 315 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 315 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 315 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:316:59 [INFO] [stdout] | [INFO] [stdout] 316 | let second_value = self.get_value_for_mode_usize((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 316 - let second_value = self.get_value_for_mode_usize((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 316 + let second_value = self.get_value_for_mode_usize(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_07` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:334:8 [INFO] [stdout] | [INFO] [stdout] 334 | struct Instr_07 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:345:51 [INFO] [stdout] | [INFO] [stdout] 345 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 345 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 345 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:346:53 [INFO] [stdout] | [INFO] [stdout] 346 | let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 346 - let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 346 + let second_value = self.get_value_for_mode(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Instr_08` should have an upper camel case name [INFO] [stdout] --> src/day_5.rs:368:8 [INFO] [stdout] | [INFO] [stdout] 368 | struct Instr_08 { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Instr08` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:379:51 [INFO] [stdout] | [INFO] [stdout] 379 | let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 379 - let first_value = self.get_value_for_mode((pointer + 1), param_1_mode, &memory); [INFO] [stdout] 379 + let first_value = self.get_value_for_mode(pointer + 1, param_1_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/day_5.rs:380:53 [INFO] [stdout] | [INFO] [stdout] 380 | let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 380 - let second_value = self.get_value_for_mode((pointer + 2), param_2_mode, &memory); [INFO] [stdout] 380 + let second_value = self.get_value_for_mode(pointer + 2, param_2_mode, &memory); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:245:9 [INFO] [stdout] | [INFO] [stdout] 245 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:301:9 [INFO] [stdout] | [INFO] [stdout] 301 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:364:9 [INFO] [stdout] | [INFO] [stdout] 364 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:398:9 [INFO] [stdout] | [INFO] [stdout] 398 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:245:9 [INFO] [stdout] | [INFO] [stdout] 245 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:301:9 [INFO] [stdout] | [INFO] [stdout] 301 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:364:9 [INFO] [stdout] | [INFO] [stdout] 364 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/day_5.rs:398:9 [INFO] [stdout] | [INFO] [stdout] 398 | !unreachable!() [INFO] [stdout] | ^-------------- [INFO] [stdout] | || [INFO] [stdout] | |any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_1.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let mut file = File::open("inp1").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_2.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | let mut file = File::open("inp2.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_3.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let mut file = File::open("inp3.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_3.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut file = File::open("inp3.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `coordinates` [INFO] [stdout] --> src/day_3.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | let coordinates = split.into_iter().for_each(|instr| { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_coordinates` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_1.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let mut file = File::open("inp1").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/day_3.rs:145:17 [INFO] [stdout] | [INFO] [stdout] 145 | _ => panic!("No direction") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/day_3.rs:145:17 [INFO] [stdout] | [INFO] [stdout] 117 | Dir::RIGHT => { [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 124 | Dir::UP => { [INFO] [stdout] | ------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 131 | Dir::LEFT => { [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 138 | Dir::DOWN => { [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 145 | _ => panic!("No direction") [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_2.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | let mut file = File::open("inp2.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_3.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let mut file = File::open("inp3.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_3.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut file = File::open("inp3.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `coordinates` [INFO] [stdout] --> src/day_3.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | let coordinates = split.into_iter().for_each(|instr| { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_coordinates` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_5.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let mut file = File::open("inp5.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/day_3.rs:145:17 [INFO] [stdout] | [INFO] [stdout] 145 | _ => panic!("No direction") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/day_3.rs:145:17 [INFO] [stdout] | [INFO] [stdout] 117 | Dir::RIGHT => { [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 124 | Dir::UP => { [INFO] [stdout] | ------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 131 | Dir::LEFT => { [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 138 | Dir::DOWN => { [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 145 | _ => panic!("No direction") [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_5.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | let mut file = File::open("inp5.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_1_mode` [INFO] [stdout] --> src/day_5.rs:228:43 [INFO] [stdout] | [INFO] [stdout] 228 | fn execute(&self, mut memory: Memory, param_1_mode: ParamMode, param_2_mode: ParamMode) -> Memory { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_1_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_2_mode` [INFO] [stdout] --> src/day_5.rs:228:68 [INFO] [stdout] | [INFO] [stdout] 228 | fn execute(&self, mut memory: Memory, param_1_mode: ParamMode, param_2_mode: ParamMode) -> Memory { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_2_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:244:23 [INFO] [stdout] | [INFO] [stdout] 244 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:244:41 [INFO] [stdout] | [INFO] [stdout] 244 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_1_mode` [INFO] [stdout] --> src/day_5.rs:258:43 [INFO] [stdout] | [INFO] [stdout] 258 | fn execute(&self, mut memory: Memory, param_1_mode: ParamMode, param_2_mode: ParamMode) -> Memory { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_1_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_2_mode` [INFO] [stdout] --> src/day_5.rs:258:68 [INFO] [stdout] | [INFO] [stdout] 258 | fn execute(&self, mut memory: Memory, param_1_mode: ParamMode, param_2_mode: ParamMode) -> Memory { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_2_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_5.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let mut file = File::open("inp5.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:271:23 [INFO] [stdout] | [INFO] [stdout] 271 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:271:41 [INFO] [stdout] | [INFO] [stdout] 271 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:300:23 [INFO] [stdout] | [INFO] [stdout] 300 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:300:41 [INFO] [stdout] | [INFO] [stdout] 300 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:330:23 [INFO] [stdout] | [INFO] [stdout] 330 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:330:41 [INFO] [stdout] | [INFO] [stdout] 330 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:363:23 [INFO] [stdout] | [INFO] [stdout] 363 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:363:41 [INFO] [stdout] | [INFO] [stdout] 363 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:397:23 [INFO] [stdout] | [INFO] [stdout] 397 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:397:41 [INFO] [stdout] | [INFO] [stdout] 397 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/day_5.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 420 | _ => panic!("Errror mode") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/day_5.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 414 | ParamMode::POSITION => { [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 419 | ParamMode::IMMEDIATE => *memory.result_vec.get(pointer).unwrap(), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 420 | _ => panic!("Errror mode") [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_5.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | let mut file = File::open("inp5.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/day_5.rs:432:13 [INFO] [stdout] | [INFO] [stdout] 432 | _ => panic!("Errror mode") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/day_5.rs:432:13 [INFO] [stdout] | [INFO] [stdout] 427 | ParamMode::POSITION => { [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 431 | ParamMode::IMMEDIATE => *memory.result_vec.get(pointer).unwrap(), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 432 | _ => panic!("Errror mode") [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/day_6.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | if let Ok(root_name) = String::from_str("COM") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root` [INFO] [stdout] --> src/day_6.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | let root: Node = Node{name: root_name, children: vec![]}; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_1_mode` [INFO] [stdout] --> src/day_5.rs:228:43 [INFO] [stdout] | [INFO] [stdout] 228 | fn execute(&self, mut memory: Memory, param_1_mode: ParamMode, param_2_mode: ParamMode) -> Memory { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_1_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_2_mode` [INFO] [stdout] --> src/day_5.rs:228:68 [INFO] [stdout] | [INFO] [stdout] 228 | fn execute(&self, mut memory: Memory, param_1_mode: ParamMode, param_2_mode: ParamMode) -> Memory { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_2_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:244:23 [INFO] [stdout] | [INFO] [stdout] 244 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:244:41 [INFO] [stdout] | [INFO] [stdout] 244 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_1_mode` [INFO] [stdout] --> src/day_5.rs:258:43 [INFO] [stdout] | [INFO] [stdout] 258 | fn execute(&self, mut memory: Memory, param_1_mode: ParamMode, param_2_mode: ParamMode) -> Memory { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_1_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_2_mode` [INFO] [stdout] --> src/day_5.rs:258:68 [INFO] [stdout] | [INFO] [stdout] 258 | fn execute(&self, mut memory: Memory, param_1_mode: ParamMode, param_2_mode: ParamMode) -> Memory { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_2_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:271:23 [INFO] [stdout] | [INFO] [stdout] 271 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:271:41 [INFO] [stdout] | [INFO] [stdout] 271 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:300:23 [INFO] [stdout] | [INFO] [stdout] 300 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:300:41 [INFO] [stdout] | [INFO] [stdout] 300 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_6.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let mut file = File::open("inp6.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_6.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let mut file = File::open("inp6.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:330:23 [INFO] [stdout] | [INFO] [stdout] 330 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:330:41 [INFO] [stdout] | [INFO] [stdout] 330 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:363:23 [INFO] [stdout] | [INFO] [stdout] 363 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:363:41 [INFO] [stdout] | [INFO] [stdout] 363 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/day_6.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | if let Ok(root_name) = String::from_str("COM") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root` [INFO] [stdout] --> src/day_6.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | let root: Node = Node{name: root_name, children: vec![]}; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `first_param` [INFO] [stdout] --> src/day_5.rs:397:23 [INFO] [stdout] | [INFO] [stdout] 397 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `second_param` [INFO] [stdout] --> src/day_5.rs:397:41 [INFO] [stdout] | [INFO] [stdout] 397 | fn combine(&self, first_param: i32, second_param: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_second_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/day_5.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 420 | _ => panic!("Errror mode") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/day_5.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 414 | ParamMode::POSITION => { [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 419 | ParamMode::IMMEDIATE => *memory.result_vec.get(pointer).unwrap(), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 420 | _ => panic!("Errror mode") [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/day_5.rs:432:13 [INFO] [stdout] | [INFO] [stdout] 432 | _ => panic!("Errror mode") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/day_5.rs:432:13 [INFO] [stdout] | [INFO] [stdout] 427 | ParamMode::POSITION => { [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 431 | ParamMode::IMMEDIATE => *memory.result_vec.get(pointer).unwrap(), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 432 | _ => panic!("Errror mode") [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/day_6.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | if let Ok(root_name) = String::from_str("COM") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root` [INFO] [stdout] --> src/day_6.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | let root: Node = Node{name: root_name, children: vec![]}; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_6.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut file = File::open("inp6.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_6.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let mut file = File::open("inp6.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `jiter` [INFO] [stdout] --> src/day_8.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | for jiter in 0..row_count { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_jiter` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_6.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let mut file = File::open("inp6.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_6.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let mut file = File::open("inp6.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/day_6.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | if let Ok(root_name) = String::from_str("COM") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root` [INFO] [stdout] --> src/day_6.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | let root: Node = Node{name: root_name, children: vec![]}; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_8.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | let mut file = File::open("inp8.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_6.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut file = File::open("inp6.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_6.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let mut file = File::open("inp6.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `jiter` [INFO] [stdout] --> src/day_8.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | for jiter in 0..row_count { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_jiter` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_1` is never used [INFO] [stdout] --> src/day_1.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day_1() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_a_file` is never used [INFO] [stdout] --> src/day_1.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn read_a_file() -> std::result::Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_fuel` is never used [INFO] [stdout] --> src/day_1.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn calculate_fuel(number: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_2` is never used [INFO] [stdout] --> src/day_2.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day_2() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_3` is never used [INFO] [stdout] --> src/day_3.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn day_3() -> std::result::Result<(), MyError>{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_3_b` is never used [INFO] [stdout] --> src/day_3.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn day_3_b() -> std::result::Result<(), MyError>{ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day_3.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 68 | impl MyError { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 69 | fn new(msg: &str) -> MyError { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `manhattan_distance` is never used [INFO] [stdout] --> src/day_3.rs:87:4 [INFO] [stdout] | [INFO] [stdout] 87 | fn manhattan_distance(coord: &(i32, i32)) -> i32{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Dir` is never used [INFO] [stdout] --> src/day_3.rs:93:6 [INFO] [stdout] | [INFO] [stdout] 93 | enum Dir { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_coordinates` is never used [INFO] [stdout] --> src/day_3.rs:100:4 [INFO] [stdout] | [INFO] [stdout] 100 | fn get_coordinates(line: &String) -> Vec<(i32, i32)>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_4_a` is never used [INFO] [stdout] --> src/day_4.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | pub fn day_4_a(){ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_4_b` is never used [INFO] [stdout] --> src/day_4.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn day_4_b(){ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_4` is never used [INFO] [stdout] --> src/day_4.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn day_4(existing_valid_pairs: &dyn Fn(i32, i32, i32, i32, i32, i32) -> bool){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `concat` is never used [INFO] [stdout] --> src/day_4.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn concat(vec: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hoover_pairs` is never used [INFO] [stdout] --> src/day_4.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn hoover_pairs(i: i32, j: i32, k: i32, l: i32, m: i32, n: i32) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exists_pair` is never used [INFO] [stdout] --> src/day_4.rs:62:4 [INFO] [stdout] | [INFO] [stdout] 62 | fn exists_pair(i: i32, j: i32, k: i32, l: i32, m: i32, n: i32) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_5` is never used [INFO] [stdout] --> src/day_5.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn day_5() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/day_5.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 163 | struct Instr_01 { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 164 | pub name: &'static str [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/day_5.rs:193:9 [INFO] [stdout] | [INFO] [stdout] 192 | struct Instr_02 { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 193 | pub name: &'static str [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/day_5.rs:220:9 [INFO] [stdout] | [INFO] [stdout] 219 | struct Instr_03 { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 220 | pub name: &'static str [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/day_5.rs:250:9 [INFO] [stdout] | [INFO] [stdout] 249 | struct Instr_04 { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 250 | pub name: &'static str [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/day_5.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 275 | struct Instr_05 { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 276 | pub name: &'static str [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/day_5.rs:305:9 [INFO] [stdout] | [INFO] [stdout] 304 | struct Instr_06 { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 305 | pub name: &'static str [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/day_5.rs:335:9 [INFO] [stdout] | [INFO] [stdout] 334 | struct Instr_07 { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 335 | pub name: &'static str [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/day_5.rs:369:9 [INFO] [stdout] | [INFO] [stdout] 368 | struct Instr_08 { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 369 | pub name: &'static str [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `log` is never used [INFO] [stdout] --> src/day_5.rs:408:8 [INFO] [stdout] | [INFO] [stdout] 402 | trait Instruction { [INFO] [stdout] | ----------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 408 | fn log(&self); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_6` is never used [INFO] [stdout] --> src/day_6.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn day_6() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_each_in_tree` is never used [INFO] [stdout] --> src/day_6.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn print_each_in_tree(text: String, tree: &HashMap>, number: i32) -> i32{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_6_b` is never used [INFO] [stdout] --> src/day_6.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn day_6_b() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/day_6.rs:108:8 [INFO] [stdout] | [INFO] [stdout] 108 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_parents` is never used [INFO] [stdout] --> src/day_6.rs:113:4 [INFO] [stdout] | [INFO] [stdout] 113 | fn get_parents(text: String, tree: &HashMap>, parents: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_8` is never used [INFO] [stdout] --> src/day_8.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day_8(row_count: usize, col_count: usize) -> Vec>>{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_8_b` is never used [INFO] [stdout] --> src/day_8.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn day_8_b() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day_8.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | let mut file = File::open("inp8.txt").unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/day_8.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | reader.read_line(&mut buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 8 | let _ = reader.read_line(&mut buf); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `advent-of-code-2019` (bin "advent-of-code-2019" test) due to 4 previous errors; 73 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "4c607f7b01af8eee8bd4f5424343b1fd5fd88145805726a1b58667e3c1368e0b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4c607f7b01af8eee8bd4f5424343b1fd5fd88145805726a1b58667e3c1368e0b", kill_on_drop: false }` [INFO] [stdout] 4c607f7b01af8eee8bd4f5424343b1fd5fd88145805726a1b58667e3c1368e0b