[INFO] fetching crate source_map_gen 0.1.0...
[INFO] building source_map_gen-0.1.0 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate source_map_gen 0.1.0 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate source_map_gen 0.1.0
[INFO] finished tweaking crates.io crate source_map_gen 0.1.0
[INFO] tweaked toml for crates.io crate source_map_gen 0.1.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate source_map_gen 0.1.0 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate source_map_gen 0.1.0 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" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d876ff3743b52538f9a6e968fa51855589c6067b671d5e7db9a1f3e0fcc19475
[INFO] running `Command { std: "docker" "start" "-a" "d876ff3743b52538f9a6e968fa51855589c6067b671d5e7db9a1f3e0fcc19475", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d876ff3743b52538f9a6e968fa51855589c6067b671d5e7db9a1f3e0fcc19475", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d876ff3743b52538f9a6e968fa51855589c6067b671d5e7db9a1f3e0fcc19475", kill_on_drop: false }`
[INFO] [stdout] d876ff3743b52538f9a6e968fa51855589c6067b671d5e7db9a1f3e0fcc19475
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c3e203e50186d2dc4e4ab875202c09b843bbe00bf46c9adafb44b69a99982539
[INFO] running `Command { std: "docker" "start" "-a" "c3e203e50186d2dc4e4ab875202c09b843bbe00bf46c9adafb44b69a99982539", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling libc v0.2.146
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]    Compiling proc-macro2 v1.0.60
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling unicode-ident v1.0.9
[INFO] [stderr]    Compiling quote v1.0.28
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.57
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling bytemuck v1.13.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling walkdir v2.3.3
[INFO] [stderr]    Compiling indextree v4.6.0
[INFO] [stderr]    Compiling rgb v0.8.36
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling num_cpus v1.15.0
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling chrono v0.4.26
[INFO] [stderr]    Compiling rayon v1.7.0
[INFO] [stderr]    Compiling vmf_parser_nom v0.1.1
[INFO] [stderr]    Compiling spa v0.3.1
[INFO] [stderr]    Compiling derive_ops v0.1.0
[INFO] [stderr]    Compiling source_map_gen v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `region::*`
[INFO] [stdout]  --> src/generation/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use region::*;
[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 macro definition: `dbg2`
[INFO] [stdout]   --> src/lib.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 | macro_rules! dbg2 {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/generation/region.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let root = self.root;
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spike_mats`
[INFO] [stdout]    --> src/generation2/shape/old.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let spike_mats = mats;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spike_mats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `top_bounds`
[INFO] [stdout]    --> src/generation2/shape/old.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let top_bounds =
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_top_bounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bottom_bounds`
[INFO] [stdout]    --> src/generation2/shape/old.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |     let bottom_bounds =
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bottom_bounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rgb`
[INFO] [stdout]    --> src/light/colorspace/mod.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let rgb = dbg!(xyz.to_rgb());
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rgb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `smoothing_groups` is assigned to, but never used
[INFO] [stdout]    --> src/vmf.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let mut smoothing_groups = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_smoothing_groups` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `smoothing_groups` is never read
[INFO] [stdout]    --> src/vmf.rs:292:17
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 smoothing_groups = value.parse::<i32>().ok();
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/generation/mod.rs:221:53
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fn cube_str(bounds: Bounds<f32>, textures: [&str; 6]) -> Solid {
[INFO] [stdout]     |                                                     ^^^^         ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fn cube_str(bounds: Bounds<f32>, textures: [&str; 6]) -> Solid<'_> {
[INFO] [stdout]     |                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/map/texture.rs:165:39
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub const fn cube_textures(mats: [&str; 6]) -> [Texture; 6] {
[INFO] [stdout]     |                                       ^^^^          ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub const fn cube_textures(mats: [&str; 6]) -> [Texture<'_>; 6] {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils.rs:412:23
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub const fn rows(&self) -> Vec2dRows<T> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub const fn rows(&self) -> Vec2dRows<'_, T> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ellipse_verts_2d` is never used
[INFO] [stdout]   --> src/generation2/shape.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn ellipse_verts_2d(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SphereOptions` is never constructed
[INFO] [stdout]    --> src/generation2/shape.rs:434:19
[INFO] [stdout]     |
[INFO] [stdout] 434 | pub(crate) struct SphereOptions {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `temp_to_rgb_simple` is never used
[INFO] [stdout]    --> src/light/colorspace/mod.rs:155:4
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn temp_to_rgb_simple(kelvin: f64) -> (u8, u8, u8) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToHigher` is never used
[INFO] [stdout]   --> src/vmf.rs:39:18
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) trait ToHigher<T>: Clone {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `block_to_solid` is never used
[INFO] [stdout]    --> src/vmf.rs:219:15
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub(crate) fn block_to_solid<'a>(block: &'a Block<impl AsRef<str>>) -> Solid<'a> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_side` is never used
[INFO] [stdout]    --> src/vmf.rs:238:15
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub(crate) fn parse_side<'a>(block: &'a Block<impl AsRef<str>>) -> Side<'a> {
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_uvaxis` is never used
[INFO] [stdout]    --> src/vmf.rs:322:4
[INFO] [stdout]     |
[INFO] [stdout] 322 | fn parse_uvaxis(s: &str) -> UVAxis<f32> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_dispinfo` is never used
[INFO] [stdout]    --> src/vmf.rs:333:4
[INFO] [stdout]     |
[INFO] [stdout] 333 | fn parse_dispinfo<'a>(block: &Block<impl AsRef<str>>) -> Result<DispInfo, &'static str> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_seps_chunks` is never used
[INFO] [stdout]    --> src/vmf.rs:450:4
[INFO] [stdout]     |
[INFO] [stdout] 450 | fn parse_seps_chunks<'a, 'b, T: FromStr + std::fmt::Debug>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec2d_f32_to_vector3` is never used
[INFO] [stdout]    --> src/vmf.rs:474:4
[INFO] [stdout]     |
[INFO] [stdout] 474 | fn vec2d_f32_to_vector3(vec2d: Vec2d<f32>) -> Vec2d<Vector3<f32>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `f32s_to_vector3s` is never used
[INFO] [stdout]    --> src/vmf.rs:478:4
[INFO] [stdout]     |
[INFO] [stdout] 478 | fn f32s_to_vector3s(f32s: &[f32]) -> Vec<Vector3<f32>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_vec2d` is never used
[INFO] [stdout]    --> src/vmf.rs:487:4
[INFO] [stdout]     |
[INFO] [stdout] 487 | fn parse_vec2d<'a, T: FromStr + std::fmt::Debug>(
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `construct_sky` and `construct_dev_inside` are never used
[INFO] [stdout]   --> src/generation/region/room.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl<'a> Room<'a> {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub(crate) fn construct_sky(&self) -> [Solid<'a>; 6] {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub(crate) fn construct_dev_inside(&self) -> [Solid<'a>; 6] {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `radius_at_sphere_height_xy` is never used
[INFO] [stdout]  --> src/generation2/shape/old.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn radius_at_sphere_height_xy(
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spike` is never used
[INFO] [stdout]   --> src/generation2/shape/old.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn spike<'a>(
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cylinder` is never used
[INFO] [stdout]   --> src/generation2/shape/old.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn cylinder<'a>(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `frustum_old` is never used
[INFO] [stdout]    --> src/generation2/shape/old.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub fn frustum_old<'a, I>(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sphere` is never used
[INFO] [stdout]    --> src/generation2/shape/old.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn sphere<'a>(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lines_overlap` is never used
[INFO] [stdout]    --> src/generation/mod.rs:270:4
[INFO] [stdout]     |
[INFO] [stdout] 270 | fn lines_overlap(x1: f32, x2: f32, y1: f32, y2: f32) -> f32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/pallet/pallet_lib.rs:193:17
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 panic!("bruh impossible");
[INFO] [stdout]     |                 ------------------------- any code following this expression is unreachable
[INFO] [stdout] 193 |                 continue;
[INFO] [stdout]     |                 ^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hello_world` is never used
[INFO] [stdout]   --> src/main.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn hello_world() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/pallet/mod.rs:248:51
[INFO] [stdout]     |
[INFO] [stdout] 248 | fn pallet_solid(bounds: Bounds<f32>, top_texture: &str) -> Solid {
[INFO] [stdout]     |                                                   ^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 248 | fn pallet_solid(bounds: Bounds<f32>, top_texture: &str) -> Solid<'_> {
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Dest` is never constructed
[INFO] [stdout]    --> src/pallet/vpk.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub enum VpkError {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 187 |     Dest(IoError),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VpkError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Options` is never constructed
[INFO] [stdout]    --> src/pallet/vpk.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct Options {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_all` is never used
[INFO] [stdout]    --> src/pallet/vpk.rs:295:8
[INFO] [stdout]     |
[INFO] [stdout] 295 | pub fn extract_all(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_one` is never used
[INFO] [stdout]    --> src/pallet/vpk.rs:339:4
[INFO] [stdout]     |
[INFO] [stdout] 339 | fn extract_one(
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `archive` is never used
[INFO] [stdout]    --> src/pallet/vpk.rs:375:8
[INFO] [stdout]     |
[INFO] [stdout] 375 | pub fn archive(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.17s
[INFO] running `Command { std: "docker" "inspect" "c3e203e50186d2dc4e4ab875202c09b843bbe00bf46c9adafb44b69a99982539", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3e203e50186d2dc4e4ab875202c09b843bbe00bf46c9adafb44b69a99982539", kill_on_drop: false }`
[INFO] [stdout] c3e203e50186d2dc4e4ab875202c09b843bbe00bf46c9adafb44b69a99982539
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c3b41f7b278f2d74f2f8652f15dba3eee2f9eebd0451dee698083025fee46744
[INFO] running `Command { std: "docker" "start" "-a" "c3b41f7b278f2d74f2f8652f15dba3eee2f9eebd0451dee698083025fee46744", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stdout] warning: unused import: `region::*`
[INFO] [stdout]  --> src/generation/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use region::*;
[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 macro definition: `dbg2`
[INFO] [stdout]   --> src/lib.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 | macro_rules! dbg2 {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/generation/region.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let root = self.root;
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spike_mats`
[INFO] [stdout]    --> src/generation2/shape/old.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let spike_mats = mats;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spike_mats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `top_bounds`
[INFO] [stdout]    --> src/generation2/shape/old.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let top_bounds =
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_top_bounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bottom_bounds`
[INFO] [stdout]    --> src/generation2/shape/old.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |     let bottom_bounds =
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bottom_bounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rgb`
[INFO] [stdout]    --> src/light/colorspace/mod.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let rgb = dbg!(xyz.to_rgb());
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rgb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `smoothing_groups` is assigned to, but never used
[INFO] [stdout]    --> src/vmf.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let mut smoothing_groups = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_smoothing_groups` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `smoothing_groups` is never read
[INFO] [stdout]    --> src/vmf.rs:292:17
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 smoothing_groups = value.parse::<i32>().ok();
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/generation/mod.rs:221:53
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fn cube_str(bounds: Bounds<f32>, textures: [&str; 6]) -> Solid {
[INFO] [stdout]     |                                                     ^^^^         ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fn cube_str(bounds: Bounds<f32>, textures: [&str; 6]) -> Solid<'_> {
[INFO] [stdout]     |                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/map/texture.rs:165:39
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub const fn cube_textures(mats: [&str; 6]) -> [Texture; 6] {
[INFO] [stdout]     |                                       ^^^^          ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub const fn cube_textures(mats: [&str; 6]) -> [Texture<'_>; 6] {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils.rs:412:23
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub const fn rows(&self) -> Vec2dRows<T> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub const fn rows(&self) -> Vec2dRows<'_, T> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ellipse_verts_2d` is never used
[INFO] [stdout]   --> src/generation2/shape.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn ellipse_verts_2d(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SphereOptions` is never constructed
[INFO] [stdout]    --> src/generation2/shape.rs:434:19
[INFO] [stdout]     |
[INFO] [stdout] 434 | pub(crate) struct SphereOptions {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `temp_to_rgb_simple` is never used
[INFO] [stdout]    --> src/light/colorspace/mod.rs:155:4
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn temp_to_rgb_simple(kelvin: f64) -> (u8, u8, u8) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToHigher` is never used
[INFO] [stdout]   --> src/vmf.rs:39:18
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) trait ToHigher<T>: Clone {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `block_to_solid` is never used
[INFO] [stdout]    --> src/vmf.rs:219:15
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub(crate) fn block_to_solid<'a>(block: &'a Block<impl AsRef<str>>) -> Solid<'a> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_side` is never used
[INFO] [stdout]    --> src/vmf.rs:238:15
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub(crate) fn parse_side<'a>(block: &'a Block<impl AsRef<str>>) -> Side<'a> {
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_uvaxis` is never used
[INFO] [stdout]    --> src/vmf.rs:322:4
[INFO] [stdout]     |
[INFO] [stdout] 322 | fn parse_uvaxis(s: &str) -> UVAxis<f32> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_dispinfo` is never used
[INFO] [stdout]    --> src/vmf.rs:333:4
[INFO] [stdout]     |
[INFO] [stdout] 333 | fn parse_dispinfo<'a>(block: &Block<impl AsRef<str>>) -> Result<DispInfo, &'static str> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_seps_chunks` is never used
[INFO] [stdout]    --> src/vmf.rs:450:4
[INFO] [stdout]     |
[INFO] [stdout] 450 | fn parse_seps_chunks<'a, 'b, T: FromStr + std::fmt::Debug>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec2d_f32_to_vector3` is never used
[INFO] [stdout]    --> src/vmf.rs:474:4
[INFO] [stdout]     |
[INFO] [stdout] 474 | fn vec2d_f32_to_vector3(vec2d: Vec2d<f32>) -> Vec2d<Vector3<f32>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `f32s_to_vector3s` is never used
[INFO] [stdout]    --> src/vmf.rs:478:4
[INFO] [stdout]     |
[INFO] [stdout] 478 | fn f32s_to_vector3s(f32s: &[f32]) -> Vec<Vector3<f32>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_vec2d` is never used
[INFO] [stdout]    --> src/vmf.rs:487:4
[INFO] [stdout]     |
[INFO] [stdout] 487 | fn parse_vec2d<'a, T: FromStr + std::fmt::Debug>(
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `construct_sky` and `construct_dev_inside` are never used
[INFO] [stdout]   --> src/generation/region/room.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl<'a> Room<'a> {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub(crate) fn construct_sky(&self) -> [Solid<'a>; 6] {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub(crate) fn construct_dev_inside(&self) -> [Solid<'a>; 6] {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `radius_at_sphere_height_xy` is never used
[INFO] [stdout]  --> src/generation2/shape/old.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn radius_at_sphere_height_xy(
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spike` is never used
[INFO] [stdout]   --> src/generation2/shape/old.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn spike<'a>(
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cylinder` is never used
[INFO] [stdout]   --> src/generation2/shape/old.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn cylinder<'a>(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `frustum_old` is never used
[INFO] [stdout]    --> src/generation2/shape/old.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub fn frustum_old<'a, I>(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sphere` is never used
[INFO] [stdout]    --> src/generation2/shape/old.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn sphere<'a>(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lines_overlap` is never used
[INFO] [stdout]    --> src/generation/mod.rs:270:4
[INFO] [stdout]     |
[INFO] [stdout] 270 | fn lines_overlap(x1: f32, x2: f32, y1: f32, y2: f32) -> f32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.31
[INFO] [stderr]    Compiling const_format v0.2.31
[INFO] [stderr]    Compiling source_map_gen v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `region::*`
[INFO] [stdout]  --> src/generation/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use region::*;
[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 macro definition: `dbg2`
[INFO] [stdout]   --> src/lib.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 | macro_rules! dbg2 {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/pallet/pallet_lib.rs:193:17
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 panic!("bruh impossible");
[INFO] [stdout]     |                 ------------------------- any code following this expression is unreachable
[INFO] [stdout] 193 |                 continue;
[INFO] [stdout]     |                 ^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hello_world` is never used
[INFO] [stdout]   --> src/main.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn hello_world() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/pallet/mod.rs:248:51
[INFO] [stdout]     |
[INFO] [stdout] 248 | fn pallet_solid(bounds: Bounds<f32>, top_texture: &str) -> Solid {
[INFO] [stdout]     |                                                   ^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 248 | fn pallet_solid(bounds: Bounds<f32>, top_texture: &str) -> Solid<'_> {
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spike_mats`
[INFO] [stdout]    --> src/generation2/shape/old.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let spike_mats = mats;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spike_mats`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `top_bounds`
[INFO] [stdout]    --> src/generation2/shape/old.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let top_bounds =
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_top_bounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bottom_bounds`
[INFO] [stdout]    --> src/generation2/shape/old.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |     let bottom_bounds =
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bottom_bounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/generation/region.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let root = self.root;
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rgb`
[INFO] [stdout]    --> src/light/colorspace/mod.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let rgb = dbg!(xyz.to_rgb());
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rgb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `smoothing_groups` is assigned to, but never used
[INFO] [stdout]    --> src/vmf.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let mut smoothing_groups = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_smoothing_groups` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `smoothing_groups` is never read
[INFO] [stdout]    --> src/vmf.rs:292:17
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 smoothing_groups = value.parse::<i32>().ok();
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/generation/mod.rs:221:53
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fn cube_str(bounds: Bounds<f32>, textures: [&str; 6]) -> Solid {
[INFO] [stdout]     |                                                     ^^^^         ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fn cube_str(bounds: Bounds<f32>, textures: [&str; 6]) -> Solid<'_> {
[INFO] [stdout]     |                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/map/texture.rs:165:39
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub const fn cube_textures(mats: [&str; 6]) -> [Texture; 6] {
[INFO] [stdout]     |                                       ^^^^          ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub const fn cube_textures(mats: [&str; 6]) -> [Texture<'_>; 6] {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ellipse_verts_2d` is never used
[INFO] [stdout]   --> src/generation2/shape.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn ellipse_verts_2d(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SphereOptions` is never constructed
[INFO] [stdout]    --> src/generation2/shape.rs:434:19
[INFO] [stdout]     |
[INFO] [stdout] 434 | pub(crate) struct SphereOptions {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `radius_at_sphere_height_xy` is never used
[INFO] [stdout]  --> src/generation2/shape/old.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn radius_at_sphere_height_xy(
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spike` is never used
[INFO] [stdout]   --> src/generation2/shape/old.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn spike<'a>(
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cylinder` is never used
[INFO] [stdout]   --> src/generation2/shape/old.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn cylinder<'a>(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `frustum_old` is never used
[INFO] [stdout]    --> src/generation2/shape/old.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub fn frustum_old<'a, I>(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sphere` is never used
[INFO] [stdout]    --> src/generation2/shape/old.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn sphere<'a>(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToHigher` is never used
[INFO] [stdout]   --> src/vmf.rs:39:18
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) trait ToHigher<T>: Clone {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils.rs:412:23
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub const fn rows(&self) -> Vec2dRows<T> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub const fn rows(&self) -> Vec2dRows<'_, T> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `construct_sky` and `construct_dev_inside` are never used
[INFO] [stdout]   --> src/generation/region/room.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl<'a> Room<'a> {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub(crate) fn construct_sky(&self) -> [Solid<'a>; 6] {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub(crate) fn construct_dev_inside(&self) -> [Solid<'a>; 6] {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `temp_to_rgb_simple` is never used
[INFO] [stdout]    --> src/light/colorspace/mod.rs:155:4
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn temp_to_rgb_simple(kelvin: f64) -> (u8, u8, u8) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eprint_return` is never used
[INFO] [stdout]    --> src/generation/mod.rs:341:12
[INFO] [stdout]     |
[INFO] [stdout] 341 |         fn eprint_return<T: std::fmt::Display>(value: T) -> T {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.54s
[INFO] running `Command { std: "docker" "inspect" "c3b41f7b278f2d74f2f8652f15dba3eee2f9eebd0451dee698083025fee46744", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3b41f7b278f2d74f2f8652f15dba3eee2f9eebd0451dee698083025fee46744", kill_on_drop: false }`
[INFO] [stdout] c3b41f7b278f2d74f2f8652f15dba3eee2f9eebd0451dee698083025fee46744
