[INFO] cloning repository https://github.com/michcode2/advent-of-code-2024 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/michcode2/advent-of-code-2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichcode2%2Fadvent-of-code-2024", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichcode2%2Fadvent-of-code-2024'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 61c3305cbe399b94473c4376bb912690509a80b4 [INFO] checking michcode2/advent-of-code-2024 against try#c659ee110de67e82444e4b6c8407c1a9af9c2cf6 for pr-145608 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichcode2%2Fadvent-of-code-2024" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/michcode2/advent-of-code-2024 [INFO] finished tweaking git repo https://github.com/michcode2/advent-of-code-2024 [INFO] tweaked toml for git repo https://github.com/michcode2/advent-of-code-2024 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/michcode2/advent-of-code-2024 on toolchain c659ee110de67e82444e4b6c8407c1a9af9c2cf6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/michcode2/advent-of-code-2024 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" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "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 [ERROR] error running command: no output for 300 seconds [INFO] checking michcode2/advent-of-code-2024 against try#c659ee110de67e82444e4b6c8407c1a9af9c2cf6 for pr-145608 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichcode2%2Fadvent-of-code-2024" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/michcode2/advent-of-code-2024 [INFO] finished tweaking git repo https://github.com/michcode2/advent-of-code-2024 [INFO] tweaked toml for git repo https://github.com/michcode2/advent-of-code-2024 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/michcode2/advent-of-code-2024 on toolchain c659ee110de67e82444e4b6c8407c1a9af9c2cf6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/michcode2/advent-of-code-2024 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" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 78c4336a0236583207a4cabd5e663ff19b63550f4fe913cd56ef476ac01c1298 [INFO] running `Command { std: "docker" "start" "-a" "78c4336a0236583207a4cabd5e663ff19b63550f4fe913cd56ef476ac01c1298", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "78c4336a0236583207a4cabd5e663ff19b63550f4fe913cd56ef476ac01c1298", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "78c4336a0236583207a4cabd5e663ff19b63550f4fe913cd56ef476ac01c1298", kill_on_drop: false }` [INFO] [stdout] 78c4336a0236583207a4cabd5e663ff19b63550f4fe913cd56ef476ac01c1298 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 68bc00f915cb6b48a60114f7a98367eb16857e1df5bbc035c2e0e87f7cabd62e [INFO] running `Command { std: "docker" "start" "-a" "68bc00f915cb6b48a60114f7a98367eb16857e1df5bbc035c2e0e87f7cabd62e", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.92 [INFO] [stderr] Compiling unicode-ident v1.0.14 [INFO] [stderr] Compiling libc v0.2.167 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling syn v2.0.90 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking threadpool v1.8.1 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking aoc2024 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `os::unix::fs::PermissionsExt` [INFO] [stdout] --> src/thing9b.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fmt::Debug, fs, os::unix::fs::PermissionsExt}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `path::Display` [INFO] [stdout] --> src/thing11b.rs:1:15 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fs, path::Display}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `adv` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | adv, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Adv` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bxl` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | bxl, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bxl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bst` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | bst, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `jnz` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | jnz, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Jnz` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bxc` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | bxc, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bxc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `out` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | out, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Out` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bdv` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | bdv, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bdv` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `cdv` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | cdv [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Cdv` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `os::unix::fs::PermissionsExt` [INFO] [stdout] --> src/thing9b.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fmt::Debug, fs, os::unix::fs::PermissionsExt}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `path::Display` [INFO] [stdout] --> src/thing11b.rs:1:15 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fs, path::Display}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `adv` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | adv, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Adv` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bxl` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | bxl, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bxl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bst` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | bst, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `jnz` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | jnz, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Jnz` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bxc` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | bxc, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bxc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `out` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | out, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Out` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bdv` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | bdv, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bdv` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `cdv` should have an upper camel case name [INFO] [stdout] --> src/thing17a.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | cdv [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Cdv` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::prelude` [INFO] [stdout] --> src/thing7a.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_attempt` is never read [INFO] [stdout] --> src/thing7a.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let mut current_attempt: Vec = vec![]; [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: value assigned to `this_file` is never read [INFO] [stdout] --> src/thing9b.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | let mut this_file = FileSpace{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing9b.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | for i in 0..space.size { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::prelude` [INFO] [stdout] --> src/thing7a.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing11b.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | for i in 0..25 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing11b.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | let mut input: Vec<_> = fs::read_to_string("inputs/test").unwrap().split(" ").map(|n| n.parse::().unwrap()).collect(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `toobig` [INFO] [stdout] --> src/thing11b.rs:17:22 [INFO] [stdout] | [INFO] [stdout] 17 | fn write_cache_value(toobig: &Vec) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_toobig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing12a.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | fn start_from_here(mut grid: &mut Vec>, 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/thing12a.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | let mut adjacent = [(1, 0), (-1, 0), (0, 1), (0, -1)]; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing12a.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | for i in 0..2 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mesh` [INFO] [stdout] --> src/thing12a.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let mut mesh = Mesh { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mesh` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_field` [INFO] [stdout] --> src/thing12a.rs:44:23 [INFO] [stdout] | [INFO] [stdout] 44 | fn perimeter_of_field(full_field: &Vec>, crop_patch: &Vec<(usize, usize)>){ [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_field` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing12a.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut mesh = Mesh { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing13a.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | for i in 0..As.len() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `total` is assigned to, but never used [INFO] [stdout] --> src/thing3a.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | let mut total = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_total` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing14a.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | for i in 0..grid_dim.0{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing14b.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | let mut num_bots = file.lines().count(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing14b.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 75 | for i in 0..grid_dim.0{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> src/thing16a.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | let (board, start, end) = import_board("inputs/test"); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_attempt` is never read [INFO] [stdout] --> src/thing7a.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let mut current_attempt: Vec = vec![]; [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: unreachable pattern [INFO] [stdout] --> src/thing16a.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | _ => panic!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/thing16a.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 16 | Direction::North => options = [(-1, 0), (0, 1), (1, 0)], //ccw, fwd, cw [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] 17 | Direction::East => options = [(0, 1), (1, 0), (0, -1)], [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] 18 | Direction::South => options = [(1, 0), (-1, 0), (-1, 0)], [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] 19 | Direction::West => options = [(0, -1), (0, -1), (0, 1)], [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] 20 | _ => panic!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing16a.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let mut options; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `operand` [INFO] [stdout] --> src/thing17a.rs:76:23 [INFO] [stdout] | [INFO] [stdout] 76 | fn bxc(&mut self, operand: String) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operand` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing8a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Antenna` is never constructed [INFO] [stdout] --> src/thing8a.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | struct Antenna{ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pretty_print` is never used [INFO] [stdout] --> src/thing9a.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn pretty_print(input: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing10a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_trailheads` is never used [INFO] [stdout] --> src/thing10a.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn find_trailheads(grid: &Vec>, search: &mut SearchState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_from_queue` is never used [INFO] [stdout] --> src/thing10a.rs:35:4 [INFO] [stdout] | [INFO] [stdout] 35 | fn next_from_queue(grid: &Vec>, search: &mut SearchState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SearchState` is never constructed [INFO] [stdout] --> src/thing10a.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | struct SearchState { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sum` is never used [INFO] [stdout] --> src/thing10a.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl SearchState { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 74 | pub fn sum(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `QueueEntry` is never constructed [INFO] [stdout] --> src/thing10a.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | struct QueueEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing10b.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_trailheads` is never used [INFO] [stdout] --> src/thing10b.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn find_trailheads(grid: &Vec>, search: &mut SearchState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_from_queue` is never used [INFO] [stdout] --> src/thing10b.rs:35:4 [INFO] [stdout] | [INFO] [stdout] 35 | fn next_from_queue(grid: &Vec>, search: &mut SearchState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SearchState` is never constructed [INFO] [stdout] --> src/thing10b.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | struct SearchState { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sum` is never used [INFO] [stdout] --> src/thing10b.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl SearchState { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 74 | pub fn sum(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `QueueEntry` is never constructed [INFO] [stdout] --> src/thing10b.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | struct QueueEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing11b.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_cache_value` is never used [INFO] [stdout] --> src/thing11b.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn write_cache_value(toobig: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_stone` is never used [INFO] [stdout] --> src/thing11b.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn parse_stone(value: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing12a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `start_from_here` is never used [INFO] [stdout] --> src/thing12a.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn start_from_here(mut grid: &mut Vec>, x: usize, y: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perimeter_of_field` is never used [INFO] [stdout] --> src/thing12a.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn perimeter_of_field(full_field: &Vec>, crop_patch: &Vec<(usize, usize)>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mesh` is never constructed [INFO] [stdout] --> src/thing12a.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | struct Mesh { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing13a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optimise` is never used [INFO] [stdout] --> src/thing13a.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ControlInput` is never constructed [INFO] [stdout] --> src/thing13a.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | struct ControlInput { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `number_of_times`, and `does_it_work` are never used [INFO] [stdout] --> src/thing13a.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 105 | impl ControlInput { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 106 | fn new(dx: isize, dy: isize) -> ControlInput { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn number_of_times(&self, presses: usize) -> Position { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | fn does_it_work(&self, target_pos: &Position) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Position` is never constructed [INFO] [stdout] --> src/thing13a.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 125 | struct Position { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `subtract` and `new` are never used [INFO] [stdout] --> src/thing13a.rs:131:8 [INFO] [stdout] | [INFO] [stdout] 130 | impl Position { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 131 | fn subtract(&self, other: &Position) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | fn new(x: usize, y: usize) -> Position { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing13b.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optimise` is never used [INFO] [stdout] --> src/thing13b.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ControlInput` is never constructed [INFO] [stdout] --> src/thing13b.rs:115:8 [INFO] [stdout] | [INFO] [stdout] 115 | struct ControlInput { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `this_file` is never read [INFO] [stdout] --> src/thing9b.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | let mut this_file = FileSpace{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `number_of_times`, `does_it_work`, and `detection` are never used [INFO] [stdout] --> src/thing13b.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 120 | impl ControlInput { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 121 | fn new(dx: isize, dy: isize) -> ControlInput { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | fn number_of_times(&self, presses: usize) -> Position { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | fn does_it_work(&self, target_pos: &Position) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | fn detection(&self, x_trig: usize, y_trig: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing9b.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | for i in 0..space.size { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Position` is never constructed [INFO] [stdout] --> src/thing13b.rs:146:8 [INFO] [stdout] | [INFO] [stdout] 146 | struct Position { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `subtract` and `new` are never used [INFO] [stdout] --> src/thing13b.rs:152:8 [INFO] [stdout] | [INFO] [stdout] 151 | impl Position { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 152 | fn subtract(&self, other: &Position) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | fn new(x: usize, y: usize) -> Position { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing14a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display` is never used [INFO] [stdout] --> src/thing14a.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn display(guards: &Vec, grid_dim: (usize, usize)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Guard` is never constructed [INFO] [stdout] --> src/thing14a.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | struct Guard { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `take_steps` is never used [INFO] [stdout] --> src/thing14a.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 87 | impl Guard { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 88 | fn take_steps(&mut self, num_steps: isize, grid_size: (isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vec2` is never constructed [INFO] [stdout] --> src/thing14a.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | struct Vec2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing14b.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_entropy` is never used [INFO] [stdout] --> src/thing14b.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn find_entropy(num_steps: isize, mut guards: Vec, file: String) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display` is never used [INFO] [stdout] --> src/thing14b.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn display(guards: &Vec, grid_dim: (usize, usize), i: isize) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Guard` is never constructed [INFO] [stdout] --> src/thing14b.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | struct Guard { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `take_steps` is never used [INFO] [stdout] --> src/thing14b.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 105 | impl Guard { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 106 | fn take_steps(&mut self, num_steps: isize, grid_size: (isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vec2` is never constructed [INFO] [stdout] --> src/thing14b.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | struct Vec2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing15a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `move_box` is never used [INFO] [stdout] --> src/thing15a.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn move_box(grid: &mut Vec>, current_point: (usize, usize), direction: (isize, isize)) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `import_board` is never used [INFO] [stdout] --> src/thing15a.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn import_board(path: &str) -> (Vec>, Robot) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `import_commands` is never used [INFO] [stdout] --> src/thing15a.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn import_commands(path: &str) -> Vec<(isize, isize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display_board` is never used [INFO] [stdout] --> src/thing15a.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn display_board(board: &Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Robot` is never constructed [INFO] [stdout] --> src/thing15a.rs:112:8 [INFO] [stdout] | [INFO] [stdout] 112 | struct Robot { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Point` is never used [INFO] [stdout] --> src/thing15a.rs:118:6 [INFO] [stdout] | [INFO] [stdout] 118 | enum Point { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Registers` is never constructed [INFO] [stdout] --> src/thing17a.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct Registers { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Opcode` is never used [INFO] [stdout] --> src/thing17a.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | enum Opcode { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Device` is never constructed [INFO] [stdout] --> src/thing17a.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | struct Device { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/thing17a.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 27 | impl Device { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 28 | fn run(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn adv(&mut self, operand: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn bxl(&mut self, operand: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | fn bst(&mut self, operand: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn jnz(&mut self, operand: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn bxc(&mut self, operand: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn out(&mut self, operand: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | fn bdv(&mut self, operand: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | fn cdv(&mut self, operand: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn literal_operand(&self, operand: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn combo_operand(&self, operand: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `csv_to_commands` is never used [INFO] [stdout] --> src/thing17a.rs:119:4 [INFO] [stdout] | [INFO] [stdout] 119 | fn csv_to_commands(csv: String) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `As` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | let mut As = vec!(); [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier [INFO] [stdout] | [INFO] [stdout] 5 - let mut As = vec!(); [INFO] [stdout] 5 + let mut r#as = vec!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Bs` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:6:13 [INFO] [stdout] | [INFO] [stdout] 6 | let mut Bs = vec!(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `bs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Ps` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | let mut Ps = vec!(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `ps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:43:31 [INFO] [stdout] | [INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:43:49 [INFO] [stdout] | [INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/thing13a.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | if target.x < 0 || target.y < 0 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/thing13a.rs:58:28 [INFO] [stdout] | [INFO] [stdout] 58 | if target.x < 0 || target.y < 0 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `As` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | let mut As = vec!(); [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier [INFO] [stdout] | [INFO] [stdout] 5 - let mut As = vec!(); [INFO] [stdout] 5 + let mut r#as = vec!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Bs` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:6:13 [INFO] [stdout] | [INFO] [stdout] 6 | let mut Bs = vec!(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `bs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Ps` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | let mut Ps = vec!(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `ps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:46:31 [INFO] [stdout] | [INFO] [stdout] 46 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:46:49 [INFO] [stdout] | [INFO] [stdout] 46 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/thing13b.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 66 | if target.x < 0 || target.y < 0 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/thing13b.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | if target.x < 0 || target.y < 0 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `A` should have a snake case name [INFO] [stdout] --> src/thing17a.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | A: usize, [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `B` should have a snake case name [INFO] [stdout] --> src/thing17a.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | B: usize, [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `C` should have a snake case name [INFO] [stdout] --> src/thing17a.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | C: usize, [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing11b.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | for i in 0..25 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing11b.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | let mut input: Vec<_> = fs::read_to_string("inputs/test").unwrap().split(" ").map(|n| n.parse::().unwrap()).collect(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `toobig` [INFO] [stdout] --> src/thing11b.rs:17:22 [INFO] [stdout] | [INFO] [stdout] 17 | fn write_cache_value(toobig: &Vec) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_toobig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/thing11b.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | let input = vec![0, 1, 10, 99, 999]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/thing11b.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | let output = vec![1, 2024, 1, 0, 9, 9, 2021976]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing11b.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | let mut input = vec![125, 17]; [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/thing12a.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | fn start_from_here(mut grid: &mut Vec>, 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/thing12a.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | let mut adjacent = [(1, 0), (-1, 0), (0, 1), (0, -1)]; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing12a.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | for i in 0..2 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mesh` [INFO] [stdout] --> src/thing12a.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let mut mesh = Mesh { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mesh` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_field` [INFO] [stdout] --> src/thing12a.rs:44:23 [INFO] [stdout] | [INFO] [stdout] 44 | fn perimeter_of_field(full_field: &Vec>, crop_patch: &Vec<(usize, usize)>){ [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_field` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing12a.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut mesh = Mesh { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing13a.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | for i in 0..As.len() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing14a.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | for i in 0..grid_dim.0{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing14b.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | let mut num_bots = file.lines().count(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/thing14b.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 75 | for i in 0..grid_dim.0{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> src/thing16a.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | let (board, start, end) = import_board("inputs/test"); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/thing16a.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | _ => panic!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/thing16a.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 16 | Direction::North => options = [(-1, 0), (0, 1), (1, 0)], //ccw, fwd, cw [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] 17 | Direction::East => options = [(0, 1), (1, 0), (0, -1)], [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] 18 | Direction::South => options = [(1, 0), (-1, 0), (-1, 0)], [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] 19 | Direction::West => options = [(0, -1), (0, -1), (0, 1)], [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] 20 | _ => panic!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/thing16a.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let mut options; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `operand` [INFO] [stdout] --> src/thing17a.rs:76:23 [INFO] [stdout] | [INFO] [stdout] 76 | fn bxc(&mut self, operand: String) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operand` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing8a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Antenna` is never constructed [INFO] [stdout] --> src/thing8a.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | struct Antenna{ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pretty_print` is never used [INFO] [stdout] --> src/thing9a.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn pretty_print(input: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing10a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_trailheads` is never used [INFO] [stdout] --> src/thing10a.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn find_trailheads(grid: &Vec>, search: &mut SearchState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_from_queue` is never used [INFO] [stdout] --> src/thing10a.rs:35:4 [INFO] [stdout] | [INFO] [stdout] 35 | fn next_from_queue(grid: &Vec>, search: &mut SearchState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SearchState` is never constructed [INFO] [stdout] --> src/thing10a.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | struct SearchState { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sum` is never used [INFO] [stdout] --> src/thing10a.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl SearchState { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 74 | pub fn sum(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `QueueEntry` is never constructed [INFO] [stdout] --> src/thing10a.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | struct QueueEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing10b.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_trailheads` is never used [INFO] [stdout] --> src/thing10b.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn find_trailheads(grid: &Vec>, search: &mut SearchState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_from_queue` is never used [INFO] [stdout] --> src/thing10b.rs:35:4 [INFO] [stdout] | [INFO] [stdout] 35 | fn next_from_queue(grid: &Vec>, search: &mut SearchState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SearchState` is never constructed [INFO] [stdout] --> src/thing10b.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | struct SearchState { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sum` is never used [INFO] [stdout] --> src/thing10b.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl SearchState { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 74 | pub fn sum(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `QueueEntry` is never constructed [INFO] [stdout] --> src/thing10b.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | struct QueueEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing11b.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main(){ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_cache_value` is never used [INFO] [stdout] --> src/thing11b.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn write_cache_value(toobig: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing12a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `start_from_here` is never used [INFO] [stdout] --> src/thing12a.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn start_from_here(mut grid: &mut Vec>, x: usize, y: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perimeter_of_field` is never used [INFO] [stdout] --> src/thing12a.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn perimeter_of_field(full_field: &Vec>, crop_patch: &Vec<(usize, usize)>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mesh` is never constructed [INFO] [stdout] --> src/thing12a.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | struct Mesh { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing13a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing13b.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing14a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display` is never used [INFO] [stdout] --> src/thing14a.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn display(guards: &Vec, grid_dim: (usize, usize)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Guard` is never constructed [INFO] [stdout] --> src/thing14a.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | struct Guard { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `take_steps` is never used [INFO] [stdout] --> src/thing14a.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 87 | impl Guard { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 88 | fn take_steps(&mut self, num_steps: isize, grid_size: (isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vec2` is never constructed [INFO] [stdout] --> src/thing14a.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | struct Vec2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing14b.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_entropy` is never used [INFO] [stdout] --> src/thing14b.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn find_entropy(num_steps: isize, mut guards: Vec, file: String) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display` is never used [INFO] [stdout] --> src/thing14b.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn display(guards: &Vec, grid_dim: (usize, usize), i: isize) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Guard` is never constructed [INFO] [stdout] --> src/thing14b.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | struct Guard { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `take_steps` is never used [INFO] [stdout] --> src/thing14b.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 105 | impl Guard { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 106 | fn take_steps(&mut self, num_steps: isize, grid_size: (isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vec2` is never constructed [INFO] [stdout] --> src/thing14b.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | struct Vec2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/thing15a.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `move_box` is never used [INFO] [stdout] --> src/thing15a.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn move_box(grid: &mut Vec>, current_point: (usize, usize), direction: (isize, isize)) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `import_board` is never used [INFO] [stdout] --> src/thing15a.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn import_board(path: &str) -> (Vec>, Robot) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `import_commands` is never used [INFO] [stdout] --> src/thing15a.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn import_commands(path: &str) -> Vec<(isize, isize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display_board` is never used [INFO] [stdout] --> src/thing15a.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn display_board(board: &Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Robot` is never constructed [INFO] [stdout] --> src/thing15a.rs:112:8 [INFO] [stdout] | [INFO] [stdout] 112 | struct Robot { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Point` is never used [INFO] [stdout] --> src/thing15a.rs:118:6 [INFO] [stdout] | [INFO] [stdout] 118 | enum Point { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `As` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | let mut As = vec!(); [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier [INFO] [stdout] | [INFO] [stdout] 5 - let mut As = vec!(); [INFO] [stdout] 5 + let mut r#as = vec!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Bs` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:6:13 [INFO] [stdout] | [INFO] [stdout] 6 | let mut Bs = vec!(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `bs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Ps` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | let mut Ps = vec!(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `ps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:43:31 [INFO] [stdout] | [INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:43:49 [INFO] [stdout] | [INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/thing13a.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | if target.x < 0 || target.y < 0 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/thing13a.rs:58:28 [INFO] [stdout] | [INFO] [stdout] 58 | if target.x < 0 || target.y < 0 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 75 | let A = ControlInput::new(94, 34); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | let B = ControlInput::new(22, 67); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | let P = Position::new(8400, 5400); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | let A = ControlInput::new(26, 66); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | let B = ControlInput::new(67, 21); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:85:13 [INFO] [stdout] | [INFO] [stdout] 85 | let P = Position::new(12748, 12176); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:91:13 [INFO] [stdout] | [INFO] [stdout] 91 | let A = ControlInput::new(17, 86); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:92:13 [INFO] [stdout] | [INFO] [stdout] 92 | let B = ControlInput::new(84, 37); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13a.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | let P = Position::new(7870, 6450); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `As` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | let mut As = vec!(); [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier [INFO] [stdout] | [INFO] [stdout] 5 - let mut As = vec!(); [INFO] [stdout] 5 + let mut r#as = vec!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Bs` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:6:13 [INFO] [stdout] | [INFO] [stdout] 6 | let mut Bs = vec!(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `bs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Ps` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | let mut Ps = vec!(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `ps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:46:31 [INFO] [stdout] | [INFO] [stdout] 46 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:46:49 [INFO] [stdout] | [INFO] [stdout] 46 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option { [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/thing13b.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 66 | if target.x < 0 || target.y < 0 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/thing13b.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | if target.x < 0 || target.y < 0 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | let A = ControlInput::new(94, 34); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:85:13 [INFO] [stdout] | [INFO] [stdout] 85 | let B = ControlInput::new(22, 67); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:86:13 [INFO] [stdout] | [INFO] [stdout] 86 | let P = Position::new(10000000000000 + 8400, 10000000000000 + 5400); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:92:13 [INFO] [stdout] | [INFO] [stdout] 92 | let A = ControlInput::new(26, 66); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | let B = ControlInput::new(67, 21); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | let P = Position::new(10000000000000 + 12748, 10000000000000 + 12176); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let A = ControlInput::new(17, 86); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:101:13 [INFO] [stdout] | [INFO] [stdout] 101 | let B = ControlInput::new(84, 37); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | let P = Position::new(10000000000000 + 7870, 10000000000000 + 6450); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let A = ControlInput::new(69, 23); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | let B = ControlInput::new(27, 71); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/thing13b.rs:110:13 [INFO] [stdout] | [INFO] [stdout] 110 | let P = Position::new(10000000000000 + 18641, 10000000000000 + 10279); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `A` should have a snake case name [INFO] [stdout] --> src/thing17a.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | A: usize, [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `B` should have a snake case name [INFO] [stdout] --> src/thing17a.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | B: usize, [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `C` should have a snake case name [INFO] [stdout] --> src/thing17a.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | C: usize, [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.57s [INFO] running `Command { std: "docker" "inspect" "68bc00f915cb6b48a60114f7a98367eb16857e1df5bbc035c2e0e87f7cabd62e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "68bc00f915cb6b48a60114f7a98367eb16857e1df5bbc035c2e0e87f7cabd62e", kill_on_drop: false }` [INFO] [stdout] 68bc00f915cb6b48a60114f7a98367eb16857e1df5bbc035c2e0e87f7cabd62e