[INFO] cloning repository https://github.com/TheArtistGuy/advent_of_code_2021 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TheArtistGuy/advent_of_code_2021" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheArtistGuy%2Fadvent_of_code_2021", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheArtistGuy%2Fadvent_of_code_2021'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9884713edfc625ec1735ae424a4ed6b9679387fa [INFO] building TheArtistGuy/advent_of_code_2021 against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheArtistGuy%2Fadvent_of_code_2021" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/TheArtistGuy/advent_of_code_2021 on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/TheArtistGuy/advent_of_code_2021 [INFO] finished tweaking git repo https://github.com/TheArtistGuy/advent_of_code_2021 [INFO] tweaked toml for git repo https://github.com/TheArtistGuy/advent_of_code_2021 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/TheArtistGuy/advent_of_code_2021 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" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded pathfinding v3.0.5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 38d2706346d8a1f31a4e9f8f2ce9073e1b38a5c9d6230a2a859cf6160bbd464c [INFO] running `Command { std: "docker" "start" "-a" "38d2706346d8a1f31a4e9f8f2ce9073e1b38a5c9d6230a2a859cf6160bbd464c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "38d2706346d8a1f31a4e9f8f2ce9073e1b38a5c9d6230a2a859cf6160bbd464c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "38d2706346d8a1f31a4e9f8f2ce9073e1b38a5c9d6230a2a859cf6160bbd464c", kill_on_drop: false }` [INFO] [stdout] 38d2706346d8a1f31a4e9f8f2ce9073e1b38a5c9d6230a2a859cf6160bbd464c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-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" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cb92ec60de311d864bbd4d5f7d308c5bcd48ad5f74bac8d37736530653675cb5 [INFO] running `Command { std: "docker" "start" "-a" "cb92ec60de311d864bbd4d5f7d308c5bcd48ad5f74bac8d37736530653675cb5", kill_on_drop: false }` [INFO] [stderr] Compiling indexmap v1.7.0 [INFO] [stderr] Compiling either v1.6.1 [INFO] [stderr] Compiling hashbrown v0.11.2 [INFO] [stderr] Compiling integer-sqrt v0.1.5 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling fixedbitset v0.4.0 [INFO] [stderr] Compiling itertools v0.10.3 [INFO] [stderr] Compiling pathfinding v3.0.5 [INFO] [stderr] Compiling advent_of_code_2021 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::day15::day15` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::day15::day15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/mat2d.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/mat2d.rs:176:12 [INFO] [stdout] | [INFO] [stdout] 176 | if (position + 1 > self.height) {return None}; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 176 - if (position + 1 > self.height) {return None}; [INFO] [stdout] 176 + if position + 1 > self.height {return None}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/day10.rs:79:39 [INFO] [stdout] | [INFO] [stdout] 79 | fn new_branch<'a>(arr: &'a [char]) -> BranchResult { [INFO] [stdout] | -- ^^^^^^^^^^^^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | lifetime `'a` declared here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around `return` value [INFO] [stdout] --> src/day10.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 117 | return {BranchResult::Unfinished(rest, inclomplete)} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 117 - return {BranchResult::Unfinished(rest, inclomplete)} [INFO] [stdout] 117 + return BranchResult::Unfinished(rest, inclomplete) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::linux::raw::stat` [INFO] [stdout] --> src/day12.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::linux::raw::stat; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/day15.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15.rs:181:88 [INFO] [stdout] | [INFO] [stdout] 181 | let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], (mat_1.width + mat_2.width), mat_1.height); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 181 - let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], (mat_1.width + mat_2.width), mat_1.height); [INFO] [stdout] 181 + let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], mat_1.width + mat_2.width, mat_1.height); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::os::linux::raw::stat`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions [INFO] [stdout] --> src/day12.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::linux::raw::stat; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/day12.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/day9.rs:114:14 [INFO] [stdout] | [INFO] [stdout] 114 | Some(val) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [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/day11.rs:81:17 [INFO] [stdout] | [INFO] [stdout] 81 | fn handle_flash(mut world: &mut Mat2d, has_flashed: &mut Mat2d, x: usize, y: usize) { [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/day11.rs:108:19 [INFO] [stdout] | [INFO] [stdout] 108 | fn flash_neighbor(mut world: &mut Mat2d, has_flashed: &mut Mat2d, x: usize, y: usize) { [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/day12.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | let mut visited_nodes:Vec>> = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/day12.rs:52:43 [INFO] [stdout] | [INFO] [stdout] 52 | let (element_in_visited_list, count) = determine_is_in_visited(next, &mut visited, allow_second_time); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day12.rs:58:25 [INFO] [stdout] | [INFO] [stdout] 58 | for mut x in before.iter() { [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/day12.rs:135:9 [INFO] [stdout] | [INFO] [stdout] 135 | let mut f = get_node(&nodes, from); [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/day12.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | let mut t = get_node(&nodes, to); [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/day12.rs:138:15 [INFO] [stdout] | [INFO] [stdout] 138 | (Some(mut x), Some(mut y)) => { [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/day12.rs:138:28 [INFO] [stdout] | [INFO] [stdout] 138 | (Some(mut x), Some(mut y)) => { [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/day12.rs:142:15 [INFO] [stdout] | [INFO] [stdout] 142 | (Some(mut x), None) => { [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/day12.rs:150:21 [INFO] [stdout] | [INFO] [stdout] 150 | (None, Some(mut y)) => { [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/day12.rs:159:17 [INFO] [stdout] | [INFO] [stdout] 159 | let mut n = Rc::new(RefCell::new(Node { [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/day12.rs:163:17 [INFO] [stdout] | [INFO] [stdout] 163 | let mut m = Rc::new(RefCell::new(Node { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mat` is never read [INFO] [stdout] --> src/day13.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let mut mat = Mat2d::empty(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/day14.rs:39:47 [INFO] [stdout] | [INFO] [stdout] 39 | let mut as_vec:Vec= map.iter().map(|(x,y)| *y).collect(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cost` [INFO] [stdout] --> src/day15.rs:79:35 [INFO] [stdout] | [INFO] [stdout] 79 | let (_,((x_new,y_new),cost,former_new)) = fetch_in_table(&table_searched, &former).unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cost` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day15.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 157 | let mut m_right : Vec= mat_1.vector.iter().map(|x| calculate_cost(x)).collect(); [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/day15.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | let mut m_right_2 : Vec= m_right.iter().map(|x| calculate_cost(x)).collect(); [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/day15.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | let mut m_right_3 : Vec= m_right_2.iter().map(|x| calculate_cost(x)).collect(); [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/day15.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | let mut m_right_4 : Vec= m_right_3.iter().map(|x| calculate_cost(x)).collect(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day1` is never used [INFO] [stdout] --> src/day1.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day1(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sonar_sweep` is never used [INFO] [stdout] --> src/day1.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn sonar_sweep(input_string : &String) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sweep` is never used [INFO] [stdout] --> src/day1.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn sweep(input: &Vec) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sonar_sweep_summed` is never used [INFO] [stdout] --> src/day1.rs:34:4 [INFO] [stdout] | [INFO] [stdout] 34 | fn sonar_sweep_summed(input_string: &String) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_inputs` is never used [INFO] [stdout] --> src/day1.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn sum_inputs(input: &mut Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day1.rs:52:4 [INFO] [stdout] | [INFO] [stdout] 52 | fn parse_input(input_string: &String, input: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day2` is never used [INFO] [stdout] --> src/day2.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day2(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_and_print_part1` is never used [INFO] [stdout] --> src/day2.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn compute_and_print_part1(data: &String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_and_print_part2` is never used [INFO] [stdout] --> src/day2.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn compute_and_print_part2(data: &String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `steer_ship` is never used [INFO] [stdout] --> src/day2.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn steer_ship(input: &String) -> (i32 , i32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `steer_ship_with_aim` is never used [INFO] [stdout] --> src/day2.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn steer_ship_with_aim(input: &String) -> (i32, i32){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day3` is never used [INFO] [stdout] --> src/day3.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub(crate) fn day3(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diagnostic` is never used [INFO] [stdout] --> src/day3.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn diagnostic(data: &String) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diag_2` is never used [INFO] [stdout] --> src/day3.rs:20:4 [INFO] [stdout] | [INFO] [stdout] 20 | fn diag_2 (data: String) -> i32 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_to_matrix` is never used [INFO] [stdout] --> src/day3.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn parse_to_matrix(data: String, data_int: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_oxygen` is never used [INFO] [stdout] --> src/day3.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn determine_oxygen(data_int: &Vec>, length: &usize) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_co2` is never used [INFO] [stdout] --> src/day3.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn determine_co2(data_int: & Vec>, length: &usize) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bin_to_dec` is never used [INFO] [stdout] --> src/day3.rs:96:4 [INFO] [stdout] | [INFO] [stdout] 96 | fn bin_to_dec(res_bin_in: Box>) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_lines` is never used [INFO] [stdout] --> src/day3.rs:106:4 [INFO] [stdout] | [INFO] [stdout] 106 | fn parse_lines(data: &String) -> (i32, Box>) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determinate_gamma_and_epsilon` is never used [INFO] [stdout] --> src/day3.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn determinate_gamma_and_epsilon(count: &mut i32, v_in: &mut Box>) -> (Box>, Box>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Field` is never constructed [INFO] [stdout] --> src/day4.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct Field{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Board` is never constructed [INFO] [stdout] --> src/day4.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct Board{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_field`, `set_field_number`, and `set_field_called` are never used [INFO] [stdout] --> src/day4.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 17 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 18 | fn new(width : usize, height : usize) ->Self{ [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn get_field(&self, col : usize, row : usize) -> Option<&Field> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn set_field_number(&mut self, col : usize, row : usize, value : i32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | fn set_field_called(&mut self, col : usize, row : usize, value :bool) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day4` is never used [INFO] [stdout] --> src/day4.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn day4(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bingo` is never used [INFO] [stdout] --> src/day4.rs:69:4 [INFO] [stdout] | [INFO] [stdout] 69 | fn bingo(data: &String) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bingo_presience` is never used [INFO] [stdout] --> src/day4.rs:76:4 [INFO] [stdout] | [INFO] [stdout] 76 | fn bingo_presience(data: &String) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_result` is never used [INFO] [stdout] --> src/day4.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn compute_result(winning_board: Option, winning_number: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day4.rs:99:4 [INFO] [stdout] | [INFO] [stdout] 99 | fn parse_input(data: &String) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call_bingo_numbers_to_last_board` is never used [INFO] [stdout] --> src/day4.rs:130:4 [INFO] [stdout] | [INFO] [stdout] 130 | fn call_bingo_numbers_to_last_board(numbers: &mut Vec, boards: &mut Vec) -> (Option, i32){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call_bingo_numbers` is never used [INFO] [stdout] --> src/day4.rs:160:4 [INFO] [stdout] | [INFO] [stdout] 160 | fn call_bingo_numbers(numbers: &mut Vec, boards: &mut Vec) -> (Option, i32){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_board` is never used [INFO] [stdout] --> src/day4.rs:172:4 [INFO] [stdout] | [INFO] [stdout] 172 | fn check_board(board: &mut Board, num: &i32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_horizontals` is never used [INFO] [stdout] --> src/day4.rs:185:4 [INFO] [stdout] | [INFO] [stdout] 185 | fn check_horizontals(board: & Board) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_diagonals` is never used [INFO] [stdout] --> src/day4.rs:200:4 [INFO] [stdout] | [INFO] [stdout] 200 | fn check_diagonals(board: &mut Board) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_number_on_board` is never used [INFO] [stdout] --> src/day4.rs:215:4 [INFO] [stdout] | [INFO] [stdout] 215 | fn check_number_on_board(board: &mut Board, num: &i32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mat2d` is never constructed [INFO] [stdout] --> src/mat2d.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Mat2d where T:Clone{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Mat2d` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/mat2d.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl Mat2d where T:Clone{ [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn from(vector : Vec, width: usize, height: usize) -> Self{ [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn get_width(&self) -> usize{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn get_height(&self) -> usize{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn get_as_vector(&self) -> &Vec{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn set_to_vector(&mut self, vector : Vec){ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn resize(&mut self, width : usize, height : usize){ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn empty() -> Self{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn get_value(&self, col : usize, row : usize) -> Option<&T> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn get_value_in_position_of_i32(&self, col : i32, row : i32) -> Option<&T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn set_value(&mut self, col : usize, row : usize, value : T) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn copy_part(&self, from_col : usize, to_col : usize, from_row : usize, to_row : usize) -> Option> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn split_vertical(&self, position : usize) -> Option<(Mat2d, Mat2d)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn split_horizontal(&self, position: usize) -> Option<(Mat2d, Mat2d)>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub fn vertical_inverted_copy(&self) -> Mat2d{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | pub fn horizontal_inverted_copy(&self) -> Mat2d{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day5` is never used [INFO] [stdout] --> src/day5.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn day5(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day5.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn part1(input: &String) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day5.rs:18:4 [INFO] [stdout] | [INFO] [stdout] 18 | fn part2(input : &String)-> i32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day5.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn parse_input(input : &String) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Line` is never constructed [INFO] [stdout] --> src/day5.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | struct Line{ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_ways_to_matrix` is never used [INFO] [stdout] --> src/day5.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn draw_ways_to_matrix(ways: &Vec, is_drawing_diagonals: bool) -> Mat2d { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_diagonal_line` is never used [INFO] [stdout] --> src/day5.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn draw_diagonal_line(matrix: &mut Mat2d, line: &&Line) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_line_to_top_right` is never used [INFO] [stdout] --> src/day5.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn draw_line_to_top_right(matrix: &mut Mat2d, x_end: i32, y_end: i32, mut x: i32, mut y: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_line_to_top_left` is never used [INFO] [stdout] --> src/day5.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn draw_line_to_top_left(matrix: &mut Mat2d, x_end: i32, y_end: i32, mut x: i32, mut y: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_diagonal_path` is never used [INFO] [stdout] --> src/day5.rs:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | fn init_diagonal_path(line: &&Line) -> (i32, i32, i32, i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_horizontal_line` is never used [INFO] [stdout] --> src/day5.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn draw_horizontal_line(mat: &mut Mat2d, line: &&Line) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_line_from_top_to_bottom` is never used [INFO] [stdout] --> src/day5.rs:120:4 [INFO] [stdout] | [INFO] [stdout] 120 | fn draw_line_from_top_to_bottom(mat: &mut Mat2d, line: &&Line) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_line_from_bottom_to_top` is never used [INFO] [stdout] --> src/day5.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn draw_line_from_bottom_to_top(mat: &mut Mat2d, line: &&Line) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_vertical_line` is never used [INFO] [stdout] --> src/day5.rs:136:4 [INFO] [stdout] | [INFO] [stdout] 136 | fn draw_vertical_line(mat: &mut Mat2d, line: &&Line) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_line_from_right_to_left` is never used [INFO] [stdout] --> src/day5.rs:144:4 [INFO] [stdout] | [INFO] [stdout] 144 | fn draw_line_from_right_to_left(mat: &mut Mat2d, line: &&Line) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_line_from_left_to_right` is never used [INFO] [stdout] --> src/day5.rs:152:4 [INFO] [stdout] | [INFO] [stdout] 152 | fn draw_line_from_left_to_right(mat: &mut Mat2d, line: &&Line) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `max_x` is never used [INFO] [stdout] --> src/day5.rs:161:4 [INFO] [stdout] | [INFO] [stdout] 161 | fn max_x(ways: &&Vec) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `max_y` is never used [INFO] [stdout] --> src/day5.rs:171:4 [INFO] [stdout] | [INFO] [stdout] 171 | fn max_y(ways: &&Vec) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_overlap` is never used [INFO] [stdout] --> src/day5.rs:181:4 [INFO] [stdout] | [INFO] [stdout] 181 | fn count_overlap(matrix: &Mat2d) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day6` is never used [INFO] [stdout] --> src/day6.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day6(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part_1` is never used [INFO] [stdout] --> src/day6.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn part_1(data: &String) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part_2` is never used [INFO] [stdout] --> src/day6.rs:15:4 [INFO] [stdout] | [INFO] [stdout] 15 | fn part_2(data: &String) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day6.rs:23:15 [INFO] [stdout] | [INFO] [stdout] 23 | pub(crate) fn parse_input(input: &String) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort_to_bins` is never used [INFO] [stdout] --> src/day6.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn sort_to_bins(pond: &Vec) -> [u64;9] { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `advance` is never used [INFO] [stdout] --> src/day6.rs:40:4 [INFO] [stdout] | [INFO] [stdout] 40 | fn advance(bins: &[u64; 9], days: i32) -> [u64; 9] { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_fish_in_bins` is never used [INFO] [stdout] --> src/day6.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn count_fish_in_bins(bins: &[u64; 9]) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day7` is never used [INFO] [stdout] --> src/day7.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day7(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day7.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn part1(data : &String) -> i32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day7.rs:18:4 [INFO] [stdout] | [INFO] [stdout] 18 | fn part2(data : &String) -> i32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day7.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn parse_input(input: &String) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Way` is never constructed [INFO] [stdout] --> src/day7.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | struct Way { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_ways` is never used [INFO] [stdout] --> src/day7.rs:40:4 [INFO] [stdout] | [INFO] [stdout] 40 | fn compute_ways(points: &mut Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_ways_higher_costs` is never used [INFO] [stdout] --> src/day7.rs:51:4 [INFO] [stdout] | [INFO] [stdout] 51 | fn compute_ways_higher_costs(points: &mut Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_minimal` is never used [INFO] [stdout] --> src/day7.rs:73:4 [INFO] [stdout] | [INFO] [stdout] 73 | fn get_minimal(ways: &mut Vec) -> Way { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day8` is never used [INFO] [stdout] --> src/day8.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day8(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day8.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn part1(input: &String) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day8.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn part2(input: &String) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_wires_and_output` is never used [INFO] [stdout] --> src/day8.rs:38:4 [INFO] [stdout] | [INFO] [stdout] 38 | fn split_wires_and_output(entry: &str) -> (Vec<&str>, Vec<&str>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_displayed_number` is never used [INFO] [stdout] --> src/day8.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn determine_displayed_number(output: Vec<&str>, numbers: [&str; 10]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_wiring_of_numbers` is never used [INFO] [stdout] --> src/day8.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn determine_wiring_of_numbers(wires: Vec<&str>) -> [&str; 10] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `contains_all_chars` is never used [INFO] [stdout] --> src/day8.rs:96:4 [INFO] [stdout] | [INFO] [stdout] 96 | fn contains_all_chars(p0: &&str, p1: &&str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day9` is never used [INFO] [stdout] --> src/day9.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn day9(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day9.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn part1(data: &String) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day9.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn part2(data : &String) -> i32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse` is never used [INFO] [stdout] --> src/day9.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn parse(data: &String) -> Mat2d { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_heat_map` is never used [INFO] [stdout] --> src/day9.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn create_heat_map(mat: &Mat2d) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_lower_than_all_neighbours` is never used [INFO] [stdout] --> src/day9.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn is_lower_than_all_neighbours(mat :&Mat2d, number : &i32, ix : i32, iy : i32) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_lower` is never used [INFO] [stdout] --> src/day9.rs:64:4 [INFO] [stdout] | [INFO] [stdout] 64 | fn is_lower(num: &i32, neighbour: Option<&i32>) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_basins` is never used [INFO] [stdout] --> src/day9.rs:75:4 [INFO] [stdout] | [INFO] [stdout] 75 | fn find_basins(mat: &Mat2d) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `scan_basin` is never used [INFO] [stdout] --> src/day9.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn scan_basin(mat: &Mat2d, found_map: &mut Mat2d, x: usize, y: usize, basin: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_neighbor` is never used [INFO] [stdout] --> src/day9.rs:111:4 [INFO] [stdout] | [INFO] [stdout] 111 | fn try_neighbor(mat: &Mat2d, found_map: &mut Mat2d, basin: &mut Vec, ix: i32, iy: i32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day10` is never used [INFO] [stdout] --> src/day10.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn day10(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `result` is never used [INFO] [stdout] --> src/day10.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn result(data : &String) -> (i32, i64){ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_lines` is never used [INFO] [stdout] --> src/day10.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn parse_lines(data: &String) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_for_corruption` is never used [INFO] [stdout] --> src/day10.rs:34:4 [INFO] [stdout] | [INFO] [stdout] 34 | fn check_for_corruption(lines: Vec>) -> (Vec>, Vec, Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_opening_char` is never used [INFO] [stdout] --> src/day10.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn is_opening_char(c : &char)-> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_closing_char` is never used [INFO] [stdout] --> src/day10.rs:61:4 [INFO] [stdout] | [INFO] [stdout] 61 | fn is_closing_char(c : &char)-> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BranchResult` is never used [INFO] [stdout] --> src/day10.rs:72:6 [INFO] [stdout] | [INFO] [stdout] 72 | enum BranchResult<'a>{ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `new_branch` is never used [INFO] [stdout] --> src/day10.rs:79:4 [INFO] [stdout] | [INFO] [stdout] 79 | fn new_branch<'a>(arr: &'a [char]) -> BranchResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_corrupton_value` is never used [INFO] [stdout] --> src/day10.rs:121:4 [INFO] [stdout] | [INFO] [stdout] 121 | fn determine_corrupton_value(c: &char) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_incompleteness` is never used [INFO] [stdout] --> src/day10.rs:131:4 [INFO] [stdout] | [INFO] [stdout] 131 | fn compute_incompleteness(incomplete: Vec>) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_incompleteness_value` is never used [INFO] [stdout] --> src/day10.rs:148:4 [INFO] [stdout] | [INFO] [stdout] 148 | fn determine_incompleteness_value(c: &char) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_opposing_char` is never used [INFO] [stdout] --> src/day10.rs:159:4 [INFO] [stdout] | [INFO] [stdout] 159 | fn determine_opposing_char(character: &char) -> char { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day11` is never used [INFO] [stdout] --> src/day11.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn day11(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_synchronized_event` is never used [INFO] [stdout] --> src/day11.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn find_synchronized_event(world: &mut Mat2d) -> i32{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `advance_to_generation_and_count_flashes` is never used [INFO] [stdout] --> src/day11.rs:35:4 [INFO] [stdout] | [INFO] [stdout] 35 | fn advance_to_generation_and_count_flashes(world: &mut Mat2d, generations: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_flashed_to_zero` is never used [INFO] [stdout] --> src/day11.rs:55:4 [INFO] [stdout] | [INFO] [stdout] 55 | fn set_flashed_to_zero(world: &mut Mat2d) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_flashes` is never used [INFO] [stdout] --> src/day11.rs:65:4 [INFO] [stdout] | [INFO] [stdout] 65 | fn handle_flashes(world: &mut Mat2d, mut has_flashed: &mut Mat2d) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `increase_by_one` is never used [INFO] [stdout] --> src/day11.rs:73:4 [INFO] [stdout] | [INFO] [stdout] 73 | fn increase_by_one(world: &mut Mat2d) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_flash` is never used [INFO] [stdout] --> src/day11.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn handle_flash(mut world: &mut Mat2d, has_flashed: &mut Mat2d, x: usize, y: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `flash_neighbor` is never used [INFO] [stdout] --> src/day11.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn flash_neighbor(mut world: &mut Mat2d, has_flashed: &mut Mat2d, x: usize, y: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day11.rs:117:4 [INFO] [stdout] | [INFO] [stdout] 117 | fn parse_input(data: &String) -> Mat2d { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day12` is never used [INFO] [stdout] --> src/day12.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn day12(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_to_vertices` is never used [INFO] [stdout] --> src/day12.rs:20:4 [INFO] [stdout] | [INFO] [stdout] 20 | fn parse_to_vertices(data: &String) -> Vec<(&str, &str)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/day12.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | struct Node{ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_ways` is never used [INFO] [stdout] --> src/day12.rs:34:4 [INFO] [stdout] | [INFO] [stdout] 34 | fn check_ways(vertices: &Vec<(&str, &str)>, allow_second_time: bool) -> Vec>>> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `visit_next_node` is never used [INFO] [stdout] --> src/day12.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn visit_next_node(node: &Rc>, mut visited: Vec>>, allow_second_time: bool) -> Vec>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_visit_policy` is never used [INFO] [stdout] --> src/day12.rs:75:4 [INFO] [stdout] | [INFO] [stdout] 75 | fn determine_visit_policy(node: &&Rc>, allow_second_time: bool, count: i32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_to_visited` is never used [INFO] [stdout] --> src/day12.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn add_to_visited(node: &&Rc>, mut visited: &mut Vec>>, allow_second_time: bool) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `filter_ways_which_do_reach_end` is never used [INFO] [stdout] --> src/day12.rs:93:4 [INFO] [stdout] | [INFO] [stdout] 93 | fn filter_ways_which_do_reach_end(ways: &mut Vec>>>) -> Vec>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_is_in_visited` is never used [INFO] [stdout] --> src/day12.rs:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | fn determine_is_in_visited(node: &Rc>, visited: &mut Vec>>, allow_second_time: bool) -> (Option src/day12.rs:113:4 [INFO] [stdout] | [INFO] [stdout] 113 | fn to_end(way: &&Vec>>) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_big_cavern` is never used [INFO] [stdout] --> src/day12.rs:117:4 [INFO] [stdout] | [INFO] [stdout] 117 | fn is_big_cavern(node: &&Rc>) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_start` is never used [INFO] [stdout] --> src/day12.rs:125:4 [INFO] [stdout] | [INFO] [stdout] 125 | fn get_start(nodes: &Vec>>) -> Option>> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_nodes_with_vertices` is never used [INFO] [stdout] --> src/day12.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn create_nodes_with_vertices(nodes: &mut Vec>>, from: &&str, to: &&str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_node` is never used [INFO] [stdout] --> src/day12.rs:175:4 [INFO] [stdout] | [INFO] [stdout] 175 | fn get_node<'a>(nodes: &Vec>>, name: &&str) -> Option>> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_node_and_count` is never used [INFO] [stdout] --> src/day12.rs:184:4 [INFO] [stdout] | [INFO] [stdout] 184 | fn get_node_and_count<'a>(nodes: &Vec>>, name: &&str, max_count : i32) -> (Option>>, i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day13` is never used [INFO] [stdout] --> src/day13.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn day13(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day13.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn part1(data :&str) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day13.rs:18:4 [INFO] [stdout] | [INFO] [stdout] 18 | fn part2(data :&str){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day13.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn parse_input(data: &String) -> (Mat2d, Vec<(String, usize)>){ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_position_line` is never used [INFO] [stdout] --> src/day13.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn parse_position_line(line: &str) -> (i32, i32){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_instruction_line` is never used [INFO] [stdout] --> src/day13.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn parse_instruction_line(line: &str) -> (String, usize){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `initialize_matrix` is never used [INFO] [stdout] --> src/day13.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn initialize_matrix(mut positions: &mut Vec<(i32, i32)>) -> Mat2d { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_max_positions` is never used [INFO] [stdout] --> src/day13.rs:75:4 [INFO] [stdout] | [INFO] [stdout] 75 | fn determine_max_positions(positions: &mut Vec<(i32, i32)>) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_instructions` is never used [INFO] [stdout] --> src/day13.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn process_instructions(matrix: Mat2d, instructions: &Vec<(String, usize)>) -> Mat2d { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `horizontal_split` is never used [INFO] [stdout] --> src/day13.rs:109:4 [INFO] [stdout] | [INFO] [stdout] 109 | fn horizontal_split(mat: &mut Mat2d, position: &usize) -> (Mat2d, Mat2d) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vertical_split` is never used [INFO] [stdout] --> src/day13.rs:116:4 [INFO] [stdout] | [INFO] [stdout] 116 | fn vertical_split(mat: &mut Mat2d, position: &usize) -> (Mat2d, Mat2d) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fold_to_bigger` is never used [INFO] [stdout] --> src/day13.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn fold_to_bigger(smaller: Mat2d, mut bigger: Mat2d) -> Mat2d { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_mat` is never used [INFO] [stdout] --> src/day13.rs:135:4 [INFO] [stdout] | [INFO] [stdout] 135 | fn print_mat(mat : &Mat2d){ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day14` is never used [INFO] [stdout] --> src/day14.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn day14(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day14.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn part1(data: &String) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day14.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn part2(data: &String) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_numbers` is never used [INFO] [stdout] --> src/day14.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn determine_numbers(polymer: Vec) -> (i64, i64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day14.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn parse_input(data: &String) -> (Vec, Vec<(String, char)>) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_instruction_line` is never used [INFO] [stdout] --> src/day14.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn read_instruction_line(instructions: &mut Vec<(String, char)>, line: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_step` is never used [INFO] [stdout] --> src/day14.rs:65:4 [INFO] [stdout] | [INFO] [stdout] 65 | fn to_step(in_polymer: &Vec, instructions : &Vec<(String, char)>, steps: usize) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch_actual_instruction` is never used [INFO] [stdout] --> src/day14.rs:87:4 [INFO] [stdout] | [INFO] [stdout] 87 | fn fetch_actual_instruction(input: String, instructions: &Vec<(String, char)>) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day15` is never used [INFO] [stdout] --> src/day15.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn day15(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dijkstra` is never used [INFO] [stdout] --> src/day15.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn dijkstra(mat : & Mat2d, from : (i32,i32), to : (i32, i32) ) -> (Vec<(i32, i32)>, i32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_entry` is never used [INFO] [stdout] --> src/day15.rs:87:4 [INFO] [stdout] | [INFO] [stdout] 87 | fn create_entry(mat: &Mat2d, table_not_searched: &mut Vec<((i32, i32), i32, (i32, i32))>, actual_node: (i32, i32), pos: (i32, i32), ... [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch_in_table` is never used [INFO] [stdout] --> src/day15.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn fetch_in_table<'a>(entrys: &'a Vec<((i32, i32), i32, (i32, i32)) >, pos : &(i32, i32) ) -> Option<(usize, ((&'a i32, &'a i32), &'a i32... [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `neighboring_valid_positions` is never used [INFO] [stdout] --> src/day15.rs:104:4 [INFO] [stdout] | [INFO] [stdout] 104 | fn neighboring_valid_positions(mat: &Mat2d, x: i32, y: i32) -> Vec<(i32, i32)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_input` is never used [INFO] [stdout] --> src/day15.rs:125:4 [INFO] [stdout] | [INFO] [stdout] 125 | fn parse_input(data: &String) -> Mat2d { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unfold_matrix` is never used [INFO] [stdout] --> src/day15.rs:144:4 [INFO] [stdout] | [INFO] [stdout] 144 | fn unfold_matrix(mat: &Mat2d) -> Mat2d { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_cost` is never used [INFO] [stdout] --> src/day15.rs:174:4 [INFO] [stdout] | [INFO] [stdout] 174 | fn calculate_cost(x: &i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `merge` is never used [INFO] [stdout] --> src/day15.rs:180:4 [INFO] [stdout] | [INFO] [stdout] 180 | fn merge(mat_1: Mat2d, mat_2: Mat2d) -> Mat2d { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_mat` is never used [INFO] [stdout] --> src/day15.rs:194:8 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn print_mat(mat : &Mat2d){ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day16` is never used [INFO] [stdout] --> src/day16.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub(crate) fn day16(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decode` is never used [INFO] [stdout] --> src/day16.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn decode(start :usize, bin: &Vec) -> (usize, u32, u64) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bin_to_dec` is never used [INFO] [stdout] --> src/day16.rs:287:4 [INFO] [stdout] | [INFO] [stdout] 287 | fn bin_to_dec(bin: &[u8]) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_to_binary` is never used [INFO] [stdout] --> src/day16.rs:296:4 [INFO] [stdout] | [INFO] [stdout] 296 | fn read_to_binary(input: &String) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day17` is never used [INFO] [stdout] --> src/day17.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn day17(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TargetArea` is never constructed [INFO] [stdout] --> src/day17.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct TargetArea{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `is_hit` are never used [INFO] [stdout] --> src/day17.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl TargetArea { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 16 | fn new(x_from: i64, x_to: i64, y_from: i64, y_to: i64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn is_hit(&self, x: &i64, y: &i64) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_iteration` is never used [INFO] [stdout] --> src/day17.rs:29:4 [INFO] [stdout] | [INFO] [stdout] 29 | fn next_iteration(x: &mut i64, x_velocity: &mut i64, y: &mut i64, y_velocity: &mut i64) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_maximum_height` is never used [INFO] [stdout] --> src/day17.rs:38:4 [INFO] [stdout] | [INFO] [stdout] 38 | fn determine_maximum_height(target_area: &TargetArea) -> (i32, i64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `follow_trajectory` is never used [INFO] [stdout] --> src/day17.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn follow_trajectory(target_area: &TargetArea, init_velocity_x: &i64, init_velocity_y: &i64) -> (bool, i64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:63:41 [INFO] [stdout] | [INFO] [stdout] 63 | if x.len() == 2 { numbers[1] = x.clone() }; // Number : 1 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:64:41 [INFO] [stdout] | [INFO] [stdout] 64 | if x.len() == 4 { numbers[4] = x.clone() }; // Number : 4 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:65:41 [INFO] [stdout] | [INFO] [stdout] 65 | if x.len() == 3 { numbers[7] = x.clone() }; // Number : 7 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:66:41 [INFO] [stdout] | [INFO] [stdout] 66 | if x.len() == 7 { numbers[8] = x.clone() }; // Number : 8 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:71:25 [INFO] [stdout] | [INFO] [stdout] 71 | { numbers[0] = x.clone() }; // Number : 0 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:73:25 [INFO] [stdout] | [INFO] [stdout] 73 | { numbers[3] = x.clone() }; //Number: 3 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:75:25 [INFO] [stdout] | [INFO] [stdout] 75 | { numbers[6] = x.clone() };//Number : 6 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:77:25 [INFO] [stdout] | [INFO] [stdout] 77 | { numbers[9] = x.clone() }; //Number : 9 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:85:25 [INFO] [stdout] | [INFO] [stdout] 85 | { numbers[2] = x.clone() }; //Number : 2 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:90:25 [INFO] [stdout] | [INFO] [stdout] 90 | { numbers[5] = x.clone() };//Number : 5 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/day12.rs:24:31 [INFO] [stdout] | [INFO] [stdout] 24 | vertices.push((temp[0].clone(), temp[1].clone())); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/day12.rs:24:48 [INFO] [stdout] | [INFO] [stdout] 24 | vertices.push((temp[0].clone(), temp[1].clone())); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.deref()` on a double reference, which returns `&Rc>` instead of dereferencing the inner type [INFO] [stdout] --> src/day12.rs:76:36 [INFO] [stdout] | [INFO] [stdout] 76 | let allow_second_time = if node.deref().deref().borrow().name.eq("start") || is_big_cavern(&node) || count < 1 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.deref()` on a double reference, which returns `&Rc>` instead of dereferencing the inner type [INFO] [stdout] --> src/day12.rs:118:26 [INFO] [stdout] | [INFO] [stdout] 118 | let x : String = node.deref().deref().borrow().name.clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/day15.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | mat_new.set_value(col, row, *val); [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] 189 | let _ = mat_new.set_value(col, row, *val); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.12s [INFO] running `Command { std: "docker" "inspect" "cb92ec60de311d864bbd4d5f7d308c5bcd48ad5f74bac8d37736530653675cb5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cb92ec60de311d864bbd4d5f7d308c5bcd48ad5f74bac8d37736530653675cb5", kill_on_drop: false }` [INFO] [stdout] cb92ec60de311d864bbd4d5f7d308c5bcd48ad5f74bac8d37736530653675cb5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-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" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 77a38d52bbfa8526ba67c0e17d8e00061f909b682257ce57b162e4057993e1e1 [INFO] running `Command { std: "docker" "start" "-a" "77a38d52bbfa8526ba67c0e17d8e00061f909b682257ce57b162e4057993e1e1", kill_on_drop: false }` [INFO] [stderr] Compiling advent_of_code_2021 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::day15::day15` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::day15::day15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/mat2d.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/mat2d.rs:176:12 [INFO] [stdout] | [INFO] [stdout] 176 | if (position + 1 > self.height) {return None}; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 176 - if (position + 1 > self.height) {return None}; [INFO] [stdout] 176 + if position + 1 > self.height {return None}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/day10.rs:79:39 [INFO] [stdout] | [INFO] [stdout] 79 | fn new_branch<'a>(arr: &'a [char]) -> BranchResult { [INFO] [stdout] | -- ^^^^^^^^^^^^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | lifetime `'a` declared here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around `return` value [INFO] [stdout] --> src/day10.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 117 | return {BranchResult::Unfinished(rest, inclomplete)} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 117 - return {BranchResult::Unfinished(rest, inclomplete)} [INFO] [stdout] 117 + return BranchResult::Unfinished(rest, inclomplete) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::raw::ino_t` [INFO] [stdout] --> src/day10.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | use std::os::unix::raw::ino_t; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `determine_incompleteness_value` [INFO] [stdout] --> src/day10.rs:180:70 [INFO] [stdout] | [INFO] [stdout] 180 | use crate::day10::{check_for_corruption, compute_incompleteness, determine_incompleteness_value, parse_lines}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::mat2d::Mat2d` [INFO] [stdout] --> src/day11.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 141 | use crate::mat2d::Mat2d; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::linux::raw::stat` [INFO] [stdout] --> src/day12.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::linux::raw::stat; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/day12.rs:201:9 [INFO] [stdout] | [INFO] [stdout] 201 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/day12.rs:205:9 [INFO] [stdout] | [INFO] [stdout] 205 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::metadata` [INFO] [stdout] --> src/day13.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | use std::fs::metadata; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::mat2d::Mat2d` [INFO] [stdout] --> src/day13.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | use crate::mat2d::Mat2d; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/day15.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day15.rs:181:88 [INFO] [stdout] | [INFO] [stdout] 181 | let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], (mat_1.width + mat_2.width), mat_1.height); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 181 - let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], (mat_1.width + mat_2.width), mat_1.height); [INFO] [stdout] 181 + let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], mat_1.width + mat_2.width, mat_1.height); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::mat2d::Mat2d` [INFO] [stdout] --> src/day15.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | use crate::mat2d::Mat2d; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `game_quantum_dice` [INFO] [stdout] --> src/day21.rs:136:49 [INFO] [stdout] | [INFO] [stdout] 136 | use crate::day21::{DeterministicDice, game, game_quantum_dice, Player}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::os::unix::raw::ino_t`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions [INFO] [stdout] --> src/day10.rs:178:29 [INFO] [stdout] | [INFO] [stdout] 178 | use std::os::unix::raw::ino_t; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::os::linux::raw::stat`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions [INFO] [stdout] --> src/day12.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::linux::raw::stat; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/day12.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/day12.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mat2d.rs:309:13 [INFO] [stdout] | [INFO] [stdout] 309 | let mut mat: Mat2d = Mat2d::from( [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/mat2d.rs:326:13 [INFO] [stdout] | [INFO] [stdout] 326 | let mut mat: Mat2d = Mat2d::from( [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/day9.rs:114:14 [INFO] [stdout] | [INFO] [stdout] 114 | Some(val) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [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/day11.rs:81:17 [INFO] [stdout] | [INFO] [stdout] 81 | fn handle_flash(mut world: &mut Mat2d, has_flashed: &mut Mat2d, x: usize, y: usize) { [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/day11.rs:108:19 [INFO] [stdout] | [INFO] [stdout] 108 | fn flash_neighbor(mut world: &mut Mat2d, has_flashed: &mut Mat2d, x: usize, y: usize) { [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/day12.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | let mut visited_nodes:Vec>> = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/day12.rs:52:43 [INFO] [stdout] | [INFO] [stdout] 52 | let (element_in_visited_list, count) = determine_is_in_visited(next, &mut visited, allow_second_time); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day12.rs:58:25 [INFO] [stdout] | [INFO] [stdout] 58 | for mut x in before.iter() { [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/day12.rs:135:9 [INFO] [stdout] | [INFO] [stdout] 135 | let mut f = get_node(&nodes, from); [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/day12.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | let mut t = get_node(&nodes, to); [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/day12.rs:138:15 [INFO] [stdout] | [INFO] [stdout] 138 | (Some(mut x), Some(mut y)) => { [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/day12.rs:138:28 [INFO] [stdout] | [INFO] [stdout] 138 | (Some(mut x), Some(mut y)) => { [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/day12.rs:142:15 [INFO] [stdout] | [INFO] [stdout] 142 | (Some(mut x), None) => { [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/day12.rs:150:21 [INFO] [stdout] | [INFO] [stdout] 150 | (None, Some(mut y)) => { [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/day12.rs:159:17 [INFO] [stdout] | [INFO] [stdout] 159 | let mut n = Rc::new(RefCell::new(Node { [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/day12.rs:163:17 [INFO] [stdout] | [INFO] [stdout] 163 | let mut m = Rc::new(RefCell::new(Node { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mat` is never read [INFO] [stdout] --> src/day13.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let mut mat = Mat2d::empty(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/day14.rs:39:47 [INFO] [stdout] | [INFO] [stdout] 39 | let mut as_vec:Vec= map.iter().map(|(x,y)| *y).collect(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cost` [INFO] [stdout] --> src/day15.rs:79:35 [INFO] [stdout] | [INFO] [stdout] 79 | let (_,((x_new,y_new),cost,former_new)) = fetch_in_table(&table_searched, &former).unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cost` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day15.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 157 | let mut m_right : Vec= mat_1.vector.iter().map(|x| calculate_cost(x)).collect(); [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/day15.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | let mut m_right_2 : Vec= m_right.iter().map(|x| calculate_cost(x)).collect(); [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/day15.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | let mut m_right_3 : Vec= m_right_2.iter().map(|x| calculate_cost(x)).collect(); [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/day15.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | let mut m_right_4 : Vec= m_right_3.iter().map(|x| calculate_cost(x)).collect(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/day15.rs:215:14 [INFO] [stdout] | [INFO] [stdout] 215 | let (path, cost) = dijkstra(&matrix, (0,0), (matrix.get_width() as i32 - 1, matrix.get_height() as i32 -1)); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> src/day16.rs:318:13 [INFO] [stdout] | [INFO] [stdout] 318 | let id = bin_to_dec(&binary[start+3..start+6]); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pos` [INFO] [stdout] --> src/day16.rs:320:14 [INFO] [stdout] | [INFO] [stdout] 320 | let (pos,sum, _) = decode(0, &binary); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day1` is never used [INFO] [stdout] --> src/day1.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day1(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day2` is never used [INFO] [stdout] --> src/day2.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day2(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_and_print_part1` is never used [INFO] [stdout] --> src/day2.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn compute_and_print_part1(data: &String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_and_print_part2` is never used [INFO] [stdout] --> src/day2.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn compute_and_print_part2(data: &String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day3` is never used [INFO] [stdout] --> src/day3.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub(crate) fn day3(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day4` is never used [INFO] [stdout] --> src/day4.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn day4(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `resize` is never used [INFO] [stdout] --> src/mat2d.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl Mat2d where T:Clone{ [INFO] [stdout] | ------------------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn resize(&mut self, width : usize, height : usize){ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day5` is never used [INFO] [stdout] --> src/day5.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn day5(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day5.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn part1(input: &String) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day5.rs:18:4 [INFO] [stdout] | [INFO] [stdout] 18 | fn part2(input : &String)-> i32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day6` is never used [INFO] [stdout] --> src/day6.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day6(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part_1` is never used [INFO] [stdout] --> src/day6.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn part_1(data: &String) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part_2` is never used [INFO] [stdout] --> src/day6.rs:15:4 [INFO] [stdout] | [INFO] [stdout] 15 | fn part_2(data: &String) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day7` is never used [INFO] [stdout] --> src/day7.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day7(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day7.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn part1(data : &String) -> i32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day7.rs:18:4 [INFO] [stdout] | [INFO] [stdout] 18 | fn part2(data : &String) -> i32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day8` is never used [INFO] [stdout] --> src/day8.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn day8(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day9` is never used [INFO] [stdout] --> src/day9.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn day9(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day9.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn part1(data: &String) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day9.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn part2(data : &String) -> i32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day10` is never used [INFO] [stdout] --> src/day10.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn day10(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `result` is never used [INFO] [stdout] --> src/day10.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn result(data : &String) -> (i32, i64){ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day11` is never used [INFO] [stdout] --> src/day11.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn day11(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day12` is never used [INFO] [stdout] --> src/day12.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn day12(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day13` is never used [INFO] [stdout] --> src/day13.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn day13(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day13.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn part1(data :&str) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day13.rs:18:4 [INFO] [stdout] | [INFO] [stdout] 18 | fn part2(data :&str){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day14` is never used [INFO] [stdout] --> src/day14.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn day14(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day14.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn part1(data: &String) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day14.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn part2(data: &String) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day15` is never used [INFO] [stdout] --> src/day15.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn day15(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day16` is never used [INFO] [stdout] --> src/day16.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub(crate) fn day16(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day17` is never used [INFO] [stdout] --> src/day17.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn day17(){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:63:41 [INFO] [stdout] | [INFO] [stdout] 63 | if x.len() == 2 { numbers[1] = x.clone() }; // Number : 1 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:64:41 [INFO] [stdout] | [INFO] [stdout] 64 | if x.len() == 4 { numbers[4] = x.clone() }; // Number : 4 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:65:41 [INFO] [stdout] | [INFO] [stdout] 65 | if x.len() == 3 { numbers[7] = x.clone() }; // Number : 7 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:66:41 [INFO] [stdout] | [INFO] [stdout] 66 | if x.len() == 7 { numbers[8] = x.clone() }; // Number : 8 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:71:25 [INFO] [stdout] | [INFO] [stdout] 71 | { numbers[0] = x.clone() }; // Number : 0 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:73:25 [INFO] [stdout] | [INFO] [stdout] 73 | { numbers[3] = x.clone() }; //Number: 3 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:75:25 [INFO] [stdout] | [INFO] [stdout] 75 | { numbers[6] = x.clone() };//Number : 6 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:77:25 [INFO] [stdout] | [INFO] [stdout] 77 | { numbers[9] = x.clone() }; //Number : 9 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:85:25 [INFO] [stdout] | [INFO] [stdout] 85 | { numbers[2] = x.clone() }; //Number : 2 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/day8.rs:90:25 [INFO] [stdout] | [INFO] [stdout] 90 | { numbers[5] = x.clone() };//Number : 5 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/day12.rs:24:31 [INFO] [stdout] | [INFO] [stdout] 24 | vertices.push((temp[0].clone(), temp[1].clone())); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/day12.rs:24:48 [INFO] [stdout] | [INFO] [stdout] 24 | vertices.push((temp[0].clone(), temp[1].clone())); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.deref()` on a double reference, which returns `&Rc>` instead of dereferencing the inner type [INFO] [stdout] --> src/day12.rs:76:36 [INFO] [stdout] | [INFO] [stdout] 76 | let allow_second_time = if node.deref().deref().borrow().name.eq("start") || is_big_cavern(&node) || count < 1 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.deref()` on a double reference, which returns `&Rc>` instead of dereferencing the inner type [INFO] [stdout] --> src/day12.rs:118:26 [INFO] [stdout] | [INFO] [stdout] 118 | let x : String = node.deref().deref().borrow().name.clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/day15.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | mat_new.set_value(col, row, *val); [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] 189 | let _ = mat_new.set_value(col, row, *val); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.84s [INFO] running `Command { std: "docker" "inspect" "77a38d52bbfa8526ba67c0e17d8e00061f909b682257ce57b162e4057993e1e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "77a38d52bbfa8526ba67c0e17d8e00061f909b682257ce57b162e4057993e1e1", kill_on_drop: false }` [INFO] [stdout] 77a38d52bbfa8526ba67c0e17d8e00061f909b682257ce57b162e4057993e1e1