[INFO] cloning repository https://github.com/sfdimarco/baby0
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sfdimarco/baby0" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsfdimarco%2Fbaby0", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsfdimarco%2Fbaby0'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 12564a492faf519158b096cf1659becb6afcd266
[INFO] checking sfdimarco/baby0 against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsfdimarco%2Fbaby0" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/sfdimarco/baby0
[INFO] finished tweaking git repo https://github.com/sfdimarco/baby0
[INFO] tweaked toml for git repo https://github.com/sfdimarco/baby0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sfdimarco/baby0 on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sfdimarco/baby0 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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded quad-rand v0.2.3
[INFO] [stderr]   Downloaded objc-rs v0.2.8
[INFO] [stderr]   Downloaded miniquad v0.4.8
[INFO] [stderr]   Downloaded fontdue v0.9.3
[INFO] [stderr]   Downloaded ttf-parser v0.21.1
[INFO] [stderr]   Downloaded macroquad v0.4.14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2
[INFO] running `Command { std: "docker" "start" "c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling miniquad v0.4.8
[INFO] [stderr]    Compiling cpal v0.15.3
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]     Checking ttf-parser v0.21.1
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]    Compiling macroquad_macro v0.1.8
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking quad-rand v0.2.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking rodio v0.17.3
[INFO] [stderr]     Checking fontdue v0.9.3
[INFO] [stderr]     Checking macroquad v0.4.14
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking baby0 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/main.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rodio::Source`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rodio::Source;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/main.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rodio::Source`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rodio::Source;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:1922:9
[INFO] [stdout]      |
[INFO] [stdout] 1922 |     let mut last_srl_check = 0u64;
[INFO] [stdout]      |         ----^^^^^^^^^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:1922:9
[INFO] [stdout]      |
[INFO] [stdout] 1922 |     let mut last_srl_check = 0u64;
[INFO] [stdout]      |         ----^^^^^^^^^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `injected_path`
[INFO] [stdout]    --> src/main.rs:887:5
[INFO] [stdout]     |
[INFO] [stdout] 887 |     injected_path: &[Quadrant],
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_injected_path`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `quarter_w`
[INFO] [stdout]    --> src/main.rs:901:9
[INFO] [stdout]     |
[INFO] [stdout] 901 |     let quarter_w = w / 2.0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_quarter_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `quarter_h`
[INFO] [stdout]    --> src/main.rs:902:9
[INFO] [stdout]     |
[INFO] [stdout] 902 |     let quarter_h = h / 2.0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_quarter_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `line` is never read
[INFO] [stdout]     --> src/main.rs:1107:9
[INFO] [stdout]      |
[INFO] [stdout] 1107 |         line += 1;
[INFO] [stdout]      |         ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cnt` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:1309:97
[INFO] [stdout]      |
[INFO] [stdout] 1309 |         let mut tl = 0.0f32; let mut tr = 0.0f32; let mut bl = 0.0f32; let mut br = 0.0f32; let mut cnt = 0.0f32;
[INFO] [stdout]      |                                                                                                 ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_cnt` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cnt` is never read
[INFO] [stdout]     --> src/main.rs:1314:17
[INFO] [stdout]      |
[INFO] [stdout] 1314 |                 cnt += 1.0;
[INFO] [stdout]      |                 ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `last_srl_check`
[INFO] [stdout]     --> src/main.rs:1922:9
[INFO] [stdout]      |
[INFO] [stdout] 1922 |     let mut last_srl_check = 0u64;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_srl_check`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ui_clicks` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:1927:9
[INFO] [stdout]      |
[INFO] [stdout] 1927 |     let mut ui_clicks: u32 = 0;
[INFO] [stdout]      |         ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_ui_clicks` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `ui_clicks` is never read
[INFO] [stdout]     --> src/main.rs:2426:21
[INFO] [stdout]      |
[INFO] [stdout] 2426 |                     ui_clicks += 1;
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `color` is never used
[INFO] [stdout]   --> src/main.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Quadrant {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 22 |     fn color(&self) -> (f32, f32, f32) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `resonant` is never read
[INFO] [stdout]    --> src/main.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 154 | struct Touch {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 158 |     resonant: bool,  // true = matches dominant family → gold; false → grey
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Touch` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `energy` and `family` are never read
[INFO] [stdout]    --> src/main.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 261 | struct GeoBrainHotPath {
[INFO] [stdout]     |        --------------- fields in this struct
[INFO] [stdout] 262 |     path: Vec<String>,
[INFO] [stdout] 263 |     energy: f32,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 264 |     family: String,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GeoBrainHotPath` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quadrant_to_pos` is never used
[INFO] [stdout]    --> src/main.rs:726:4
[INFO] [stdout]     |
[INFO] [stdout] 726 | fn quadrant_to_pos(q: Quadrant, base_x: f32, base_y: f32, size: f32) -> (f32, f32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vel_x` and `vel_y` are never read
[INFO] [stdout]     --> src/main.rs:1221:55
[INFO] [stdout]      |
[INFO] [stdout] 1220 | struct MeshNode {
[INFO] [stdout]      |        -------- fields in this struct
[INFO] [stdout] 1221 |     rest_x: f32, rest_y: f32, cur_x: f32, cur_y: f32, vel_x: f32, vel_y: f32,
[INFO] [stdout]      |                                                       ^^^^^       ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `MeshNode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `spring_k` and `damping` are never read
[INFO] [stdout]     --> src/main.rs:1229:5
[INFO] [stdout]      |
[INFO] [stdout] 1225 | struct LaceMesh {
[INFO] [stdout]      |        -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1229 |     spring_k: f32, damping: f32,
[INFO] [stdout]      |     ^^^^^^^^       ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `LaceMesh` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session_start_secs`, `injected_promotions`, `gen_start_secs`, and `last_injection_ts` are never read
[INFO] [stdout]     --> src/main.rs:1333:5
[INFO] [stdout]      |
[INFO] [stdout] 1332 | struct BenchmarkTracker {
[INFO] [stdout]      |        ---------------- fields in this struct
[INFO] [stdout] 1333 |     session_start_secs: u64, total_ticks: u32, hot_zone_hits: u32,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1334 |     prev_focus_path: Vec<Quadrant>, pcs_history: Vec<f32>,
[INFO] [stdout] 1335 |     spontaneous_promotions: u32, injected_promotions: u32, session_hours: f32,
[INFO] [stdout]      |                                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1336 |     family_counts: [u32; 6], gen_start_secs: u64, gen_velocities: Vec<f64>,
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^
[INFO] [stdout] 1337 |     mrs_history: Vec<f32>, last_injection_ts: u64, last_srl_ms: u64,
[INFO] [stdout]      |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `BenchmarkTracker` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `injected_path`
[INFO] [stdout]    --> src/main.rs:887:5
[INFO] [stdout]     |
[INFO] [stdout] 887 |     injected_path: &[Quadrant],
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_injected_path`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `quarter_w`
[INFO] [stdout]    --> src/main.rs:901:9
[INFO] [stdout]     |
[INFO] [stdout] 901 |     let quarter_w = w / 2.0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_quarter_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `quarter_h`
[INFO] [stdout]    --> src/main.rs:902:9
[INFO] [stdout]     |
[INFO] [stdout] 902 |     let quarter_h = h / 2.0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_quarter_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `line` is never read
[INFO] [stdout]     --> src/main.rs:1107:9
[INFO] [stdout]      |
[INFO] [stdout] 1107 |         line += 1;
[INFO] [stdout]      |         ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cnt` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:1309:97
[INFO] [stdout]      |
[INFO] [stdout] 1309 |         let mut tl = 0.0f32; let mut tr = 0.0f32; let mut bl = 0.0f32; let mut br = 0.0f32; let mut cnt = 0.0f32;
[INFO] [stdout]      |                                                                                                 ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_cnt` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cnt` is never read
[INFO] [stdout]     --> src/main.rs:1314:17
[INFO] [stdout]      |
[INFO] [stdout] 1314 |                 cnt += 1.0;
[INFO] [stdout]      |                 ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `last_srl_check`
[INFO] [stdout]     --> src/main.rs:1922:9
[INFO] [stdout]      |
[INFO] [stdout] 1922 |     let mut last_srl_check = 0u64;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_srl_check`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ui_clicks` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:1927:9
[INFO] [stdout]      |
[INFO] [stdout] 1927 |     let mut ui_clicks: u32 = 0;
[INFO] [stdout]      |         ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_ui_clicks` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `ui_clicks` is never read
[INFO] [stdout]     --> src/main.rs:2426:21
[INFO] [stdout]      |
[INFO] [stdout] 2426 |                     ui_clicks += 1;
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `color` is never used
[INFO] [stdout]   --> src/main.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Quadrant {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 22 |     fn color(&self) -> (f32, f32, f32) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `resonant` is never read
[INFO] [stdout]    --> src/main.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 154 | struct Touch {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 158 |     resonant: bool,  // true = matches dominant family → gold; false → grey
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Touch` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `energy` and `family` are never read
[INFO] [stdout]    --> src/main.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 261 | struct GeoBrainHotPath {
[INFO] [stdout]     |        --------------- fields in this struct
[INFO] [stdout] 262 |     path: Vec<String>,
[INFO] [stdout] 263 |     energy: f32,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 264 |     family: String,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GeoBrainHotPath` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quadrant_to_pos` is never used
[INFO] [stdout]    --> src/main.rs:726:4
[INFO] [stdout]     |
[INFO] [stdout] 726 | fn quadrant_to_pos(q: Quadrant, base_x: f32, base_y: f32, size: f32) -> (f32, f32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vel_x` and `vel_y` are never read
[INFO] [stdout]     --> src/main.rs:1221:55
[INFO] [stdout]      |
[INFO] [stdout] 1220 | struct MeshNode {
[INFO] [stdout]      |        -------- fields in this struct
[INFO] [stdout] 1221 |     rest_x: f32, rest_y: f32, cur_x: f32, cur_y: f32, vel_x: f32, vel_y: f32,
[INFO] [stdout]      |                                                       ^^^^^       ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `MeshNode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `spring_k` and `damping` are never read
[INFO] [stdout]     --> src/main.rs:1229:5
[INFO] [stdout]      |
[INFO] [stdout] 1225 | struct LaceMesh {
[INFO] [stdout]      |        -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1229 |     spring_k: f32, damping: f32,
[INFO] [stdout]      |     ^^^^^^^^       ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `LaceMesh` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session_start_secs`, `injected_promotions`, `gen_start_secs`, and `last_injection_ts` are never read
[INFO] [stdout]     --> src/main.rs:1333:5
[INFO] [stdout]      |
[INFO] [stdout] 1332 | struct BenchmarkTracker {
[INFO] [stdout]      |        ---------------- fields in this struct
[INFO] [stdout] 1333 |     session_start_secs: u64, total_ticks: u32, hot_zone_hits: u32,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1334 |     prev_focus_path: Vec<Quadrant>, pcs_history: Vec<f32>,
[INFO] [stdout] 1335 |     spontaneous_promotions: u32, injected_promotions: u32, session_hours: f32,
[INFO] [stdout]      |                                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1336 |     family_counts: [u32; 6], gen_start_secs: u64, gen_velocities: Vec<f64>,
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^
[INFO] [stdout] 1337 |     mrs_history: Vec<f32>, last_injection_ts: u64, last_srl_ms: u64,
[INFO] [stdout]      |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `BenchmarkTracker` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `rand`
[INFO] [stderr]  --> Cargo.toml:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | rand = "0.8"
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `rand`
[INFO] [stderr] warning: `baby0` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.94s
[INFO] running `Command { std: "docker" "inspect" "c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2", kill_on_drop: false }`
[INFO] [stdout] c8269eb49e7559b2ae92c77c1f00036122c5e084f087155e6633b817af6311c2
