[INFO] cloning repository https://github.com/WardGauderis/Raytracing
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/WardGauderis/Raytracing" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWardGauderis%2FRaytracing", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWardGauderis%2FRaytracing'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 03b7aad9d731947fe59b2aa4662e3dc2746a91f7
[INFO] checking WardGauderis/Raytracing against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWardGauderis%2FRaytracing" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/WardGauderis/Raytracing
[INFO] finished tweaking git repo https://github.com/WardGauderis/Raytracing
[INFO] tweaked toml for git repo https://github.com/WardGauderis/Raytracing written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/WardGauderis/Raytracing on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/WardGauderis/Raytracing 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0699fa8646a6d81175a680e5369456de3d40d1b7bb196fc376a3cd19b422d574
[INFO] running `Command { std: "docker" "start" "-a" "0699fa8646a6d81175a680e5369456de3d40d1b7bb196fc376a3cd19b422d574", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0699fa8646a6d81175a680e5369456de3d40d1b7bb196fc376a3cd19b422d574", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0699fa8646a6d81175a680e5369456de3d40d1b7bb196fc376a3cd19b422d574", kill_on_drop: false }`
[INFO] [stdout] 0699fa8646a6d81175a680e5369456de3d40d1b7bb196fc376a3cd19b422d574
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1510fd50b06ed2e49413df5a65a4a404e5965980c69ba9293f40e3903fff0bc0
[INFO] running `Command { std: "docker" "start" "-a" "1510fd50b06ed2e49413df5a65a4a404e5965980c69ba9293f40e3903fff0bc0", kill_on_drop: false }`
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.86
[INFO] [stderr]    Compiling crossbeam-utils v0.8.3
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]    Compiling memoffset v0.6.1
[INFO] [stderr]    Compiling rayon-core v1.9.0
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling getrandom v0.2.2
[INFO] [stderr]    Compiling crc32fast v1.2.1
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]     Checking byteorder v1.4.2
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking weezl v0.1.4
[INFO] [stderr]    Compiling rayon v1.5.0
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.10
[INFO] [stderr]     Checking bytemuck v1.5.1
[INFO] [stderr]     Checking miniz_oxide v0.3.7
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking gif v0.11.1
[INFO] [stderr]     Checking deflate v0.8.6
[INFO] [stderr]     Checking png v0.16.8
[INFO] [stderr]     Checking crossbeam-epoch v0.9.3
[INFO] [stderr]     Checking crossbeam-channel v0.5.0
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking rand_core v0.6.2
[INFO] [stderr]     Checking rand_chacha v0.3.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.0
[INFO] [stderr]     Checking rand v0.8.3
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking tiff v0.6.1
[INFO] [stderr]     Checking image v0.23.14
[INFO] [stderr]     Checking raytracing v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `bvh::BVHNode`
[INFO] [stdout]  --> src/main.rs:8:2
[INFO] [stdout]   |
[INFO] [stdout] 8 |     bvh::BVHNode,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `destructuring_assignment` has been stable since 1.59.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(destructuring_assignment)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bvh::BVHNode`
[INFO] [stdout]  --> src/main.rs:8:2
[INFO] [stdout]   |
[INFO] [stdout] 8 |     bvh::BVHNode,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `destructuring_assignment` has been stable since 1.59.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(destructuring_assignment)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]   --> src/_box.rs:89:25
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]   --> src/_box.rs:89:37
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]    |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]   --> src/aarect.rs:60:25
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]   --> src/aarect.rs:60:37
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]    |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]    --> src/aarect.rs:117:25
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]     |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]    --> src/aarect.rs:117:37
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]    --> src/aarect.rs:174:25
[INFO] [stdout]     |
[INFO] [stdout] 174 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]     |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]    --> src/aarect.rs:174:37
[INFO] [stdout]     |
[INFO] [stdout] 174 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]   --> src/bvh.rs:95:25
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> { Some(self.aabb.clone(),) }
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]   --> src/bvh.rs:95:37
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> { Some(self.aabb.clone(),) }
[INFO] [stdout]    |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]    --> src/hittable.rs:154:25
[INFO] [stdout]     |
[INFO] [stdout] 154 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> { self.bbox.clone() }
[INFO] [stdout]     |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]    --> src/hittable.rs:154:37
[INFO] [stdout]     |
[INFO] [stdout] 154 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> { self.bbox.clone() }
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `output_box` is never read
[INFO] [stdout]   --> src/hittable_list.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 output_box = if first_box {temp_box} else { surrounding_box(output_box, temp_box) };
[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: value assigned to `first_box` is never read
[INFO] [stdout]   --> src/hittable_list.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |                 first_box = false;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uu`
[INFO] [stdout]   --> src/material.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn emitted(&self, uu: f64, v: f64, p: &Point3,) -> Color { Color::new(0.0, 0.0, 0.0,) }
[INFO] [stdout]    |                       ^^ help: if this is intentional, prefix it with an underscore: `_uu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/material.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn emitted(&self, uu: f64, v: f64, p: &Point3,) -> Color { Color::new(0.0, 0.0, 0.0,) }
[INFO] [stdout]    |                                ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/material.rs:17:37
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn emitted(&self, uu: f64, v: f64, p: &Point3,) -> Color { Color::new(0.0, 0.0, 0.0,) }
[INFO] [stdout]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_in`
[INFO] [stdout]    --> src/material.rs:140:20
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn scatter(&self, r_in: &Ray, rec: &HitRecord,) -> Option<(Vec3, Ray,),> { None }
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_r_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rec`
[INFO] [stdout]    --> src/material.rs:140:32
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn scatter(&self, r_in: &Ray, rec: &HitRecord,) -> Option<(Vec3, Ray,),> { None }
[INFO] [stdout]     |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_rec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/perlin.rs:32:7
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let mut u = p.x() - p.x().floor();
[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/perlin.rs:33:7
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let mut v = p.y() - p.y().floor();
[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/perlin.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let mut w = p.z() - p.z().floor();
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/perlin.rs:58:7
[INFO] [stdout]    |
[INFO] [stdout] 58 |         for i in 0 .. depth {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uu`
[INFO] [stdout]   --> src/perlin.rs:68:7
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let uu = u * u * (3.0 - 2.0 * u);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_uu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vv`
[INFO] [stdout]   --> src/perlin.rs:69:7
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let vv = v * v * (3.0 - 2.0 * v);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_vv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ww`
[INFO] [stdout]   --> src/perlin.rs:70:7
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let ww = w * w * (3.0 - 2.0 * w);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_ww`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]   --> src/sphere.rs:74:25
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn bounding_box(&self, time0: f64, time1: f64) -> Option<AABB> {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]   --> src/sphere.rs:74:37
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn bounding_box(&self, time0: f64, time1: f64) -> Option<AABB> {
[INFO] [stdout]    |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]   --> src/texture.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn value(&self, u: f64, v: f64, p: &Point3,) -> Color { self.color_value }
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/texture.rs:37:26
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn value(&self, u: f64, v: f64, p: &Point3,) -> Color { self.color_value }
[INFO] [stdout]    |                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/texture.rs:37:34
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn value(&self, u: f64, v: f64, p: &Point3,) -> Color { self.color_value }
[INFO] [stdout]    |                                     ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]   --> src/texture.rs:80:18
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn value(&self, u: f64, v: f64, p: &Vec3,) -> Vec3 {
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/texture.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn value(&self, u: f64, v: f64, p: &Vec3,) -> Vec3 {
[INFO] [stdout]    |                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/texture.rs:120:42
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn value(&self, mut u: f64, mut v: f64, p: &Point3,) -> Color {
[INFO] [stdout]     |                                             ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `vfov` is never read
[INFO] [stdout]    --> src/main.rs:347:17
[INFO] [stdout]     |
[INFO] [stdout] 347 |     let mut vfov = 40.0;
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `background` is never read
[INFO] [stdout]    --> src/main.rs:349:23
[INFO] [stdout]     |
[INFO] [stdout] 349 |     let mut background = Color::default();
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hit` is never used
[INFO] [stdout]   --> src/aabb.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl AABB {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn hit(&self, r: &Ray, mut t_min: f64, mut t_max: f64) -> bool {
[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 `BVHNode` is never constructed
[INFO] [stdout]   --> src/bvh.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct BVHNode {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_list` and `new` are never used
[INFO] [stdout]   --> src/bvh.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl BVHNode {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 21 |     pub fn from_list(list: &HittableList, time0: f64, time1: f64,) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_compare` is never used
[INFO] [stdout]   --> src/bvh.rs:99:4
[INFO] [stdout]    |
[INFO] [stdout] 99 | fn box_compare(a: &Rc<dyn Hittable,>, b: &Rc<dyn Hittable,>, axis: usize,) -> Ordering {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_x_compare` is never used
[INFO] [stdout]    --> src/bvh.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn box_x_compare(a: &Rc<dyn Hittable,>, b: &Rc<dyn Hittable,>,) -> Ordering {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_y_compare` is never used
[INFO] [stdout]    --> src/bvh.rs:116:4
[INFO] [stdout]     |
[INFO] [stdout] 116 | fn box_y_compare(a: &Rc<dyn Hittable,>, b: &Rc<dyn Hittable,>,) -> Ordering {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_z_compare` is never used
[INFO] [stdout]    --> src/bvh.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn box_z_compare(a: &Rc<dyn Hittable,>, b: &Rc<dyn Hittable,>,) -> Ordering {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `w` is never read
[INFO] [stdout]   --> src/camera.rs:12:2
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct Camera {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     w: Vec3,
[INFO] [stdout]    |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_texture` is never used
[INFO] [stdout]   --> src/constantmedium.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ConstantMedium {
[INFO] [stdout]    | ------------------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn from_texture(boundary: Rc<dyn Hittable,>, d: f64, a: Rc<dyn Texture,>,) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]   --> src/hittable_list.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl HittableList {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/material.rs:128:9
[INFO] [stdout]     |
[INFO] [stdout] 127 | impl DiffuseLight {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] 128 |     pub fn new(emit: Rc<dyn Texture,>,) -> Self { DiffuseLight { emit, } }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/material.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 149 | impl Isotrophic {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 150 |     pub fn new(albedo: Rc<dyn Texture,>,) -> Self { Isotrophic { albedo, } }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/texture.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl SolidColor {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 21 |     pub fn new(red: f64, green: f64, blue: f64,) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_in_hemisphere` is never used
[INFO] [stdout]    --> src/vec3.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 258 | pub fn random_in_hemisphere(normal: &Vec3) -> Vec3 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `enable_debug` should have an upper case name
[INFO] [stdout]   --> src/constantmedium.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         const enable_debug: bool = false;
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 39 -         const enable_debug: bool = false;
[INFO] [stdout] 39 +         const ENABLE_DEBUG: bool = false;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]   --> src/_box.rs:89:25
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]   --> src/_box.rs:89:37
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]    |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]   --> src/aarect.rs:60:25
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]   --> src/aarect.rs:60:37
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]    |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]    --> src/aarect.rs:117:25
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]     |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]    --> src/aarect.rs:117:37
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]    --> src/aarect.rs:174:25
[INFO] [stdout]     |
[INFO] [stdout] 174 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]     |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]    --> src/aarect.rs:174:37
[INFO] [stdout]     |
[INFO] [stdout] 174 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]   --> src/bvh.rs:95:25
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> { Some(self.aabb.clone(),) }
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]   --> src/bvh.rs:95:37
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> { Some(self.aabb.clone(),) }
[INFO] [stdout]    |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]    --> src/hittable.rs:154:25
[INFO] [stdout]     |
[INFO] [stdout] 154 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> { self.bbox.clone() }
[INFO] [stdout]     |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]    --> src/hittable.rs:154:37
[INFO] [stdout]     |
[INFO] [stdout] 154 |     fn bounding_box(&self, time0: f64, time1: f64,) -> Option<AABB,> { self.bbox.clone() }
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `output_box` is never read
[INFO] [stdout]   --> src/hittable_list.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 output_box = if first_box {temp_box} else { surrounding_box(output_box, temp_box) };
[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: value assigned to `first_box` is never read
[INFO] [stdout]   --> src/hittable_list.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |                 first_box = false;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uu`
[INFO] [stdout]   --> src/material.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn emitted(&self, uu: f64, v: f64, p: &Point3,) -> Color { Color::new(0.0, 0.0, 0.0,) }
[INFO] [stdout]    |                       ^^ help: if this is intentional, prefix it with an underscore: `_uu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/material.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn emitted(&self, uu: f64, v: f64, p: &Point3,) -> Color { Color::new(0.0, 0.0, 0.0,) }
[INFO] [stdout]    |                                ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/material.rs:17:37
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn emitted(&self, uu: f64, v: f64, p: &Point3,) -> Color { Color::new(0.0, 0.0, 0.0,) }
[INFO] [stdout]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_in`
[INFO] [stdout]    --> src/material.rs:140:20
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn scatter(&self, r_in: &Ray, rec: &HitRecord,) -> Option<(Vec3, Ray,),> { None }
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_r_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rec`
[INFO] [stdout]    --> src/material.rs:140:32
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn scatter(&self, r_in: &Ray, rec: &HitRecord,) -> Option<(Vec3, Ray,),> { None }
[INFO] [stdout]     |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_rec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/perlin.rs:32:7
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let mut u = p.x() - p.x().floor();
[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/perlin.rs:33:7
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let mut v = p.y() - p.y().floor();
[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/perlin.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let mut w = p.z() - p.z().floor();
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/perlin.rs:58:7
[INFO] [stdout]    |
[INFO] [stdout] 58 |         for i in 0 .. depth {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uu`
[INFO] [stdout]   --> src/perlin.rs:68:7
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let uu = u * u * (3.0 - 2.0 * u);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_uu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vv`
[INFO] [stdout]   --> src/perlin.rs:69:7
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let vv = v * v * (3.0 - 2.0 * v);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_vv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ww`
[INFO] [stdout]   --> src/perlin.rs:70:7
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let ww = w * w * (3.0 - 2.0 * w);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_ww`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time0`
[INFO] [stdout]   --> src/sphere.rs:74:25
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn bounding_box(&self, time0: f64, time1: f64) -> Option<AABB> {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time1`
[INFO] [stdout]   --> src/sphere.rs:74:37
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn bounding_box(&self, time0: f64, time1: f64) -> Option<AABB> {
[INFO] [stdout]    |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]   --> src/texture.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn value(&self, u: f64, v: f64, p: &Point3,) -> Color { self.color_value }
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/texture.rs:37:26
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn value(&self, u: f64, v: f64, p: &Point3,) -> Color { self.color_value }
[INFO] [stdout]    |                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/texture.rs:37:34
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn value(&self, u: f64, v: f64, p: &Point3,) -> Color { self.color_value }
[INFO] [stdout]    |                                     ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]   --> src/texture.rs:80:18
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn value(&self, u: f64, v: f64, p: &Vec3,) -> Vec3 {
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/texture.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn value(&self, u: f64, v: f64, p: &Vec3,) -> Vec3 {
[INFO] [stdout]    |                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/texture.rs:120:42
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn value(&self, mut u: f64, mut v: f64, p: &Point3,) -> Color {
[INFO] [stdout]     |                                             ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `vfov` is never read
[INFO] [stdout]    --> src/main.rs:347:17
[INFO] [stdout]     |
[INFO] [stdout] 347 |     let mut vfov = 40.0;
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `background` is never read
[INFO] [stdout]    --> src/main.rs:349:23
[INFO] [stdout]     |
[INFO] [stdout] 349 |     let mut background = Color::default();
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hit` is never used
[INFO] [stdout]   --> src/aabb.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl AABB {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn hit(&self, r: &Ray, mut t_min: f64, mut t_max: f64) -> bool {
[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 `BVHNode` is never constructed
[INFO] [stdout]   --> src/bvh.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct BVHNode {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_list` and `new` are never used
[INFO] [stdout]   --> src/bvh.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl BVHNode {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 21 |     pub fn from_list(list: &HittableList, time0: f64, time1: f64,) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_compare` is never used
[INFO] [stdout]   --> src/bvh.rs:99:4
[INFO] [stdout]    |
[INFO] [stdout] 99 | fn box_compare(a: &Rc<dyn Hittable,>, b: &Rc<dyn Hittable,>, axis: usize,) -> Ordering {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_x_compare` is never used
[INFO] [stdout]    --> src/bvh.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn box_x_compare(a: &Rc<dyn Hittable,>, b: &Rc<dyn Hittable,>,) -> Ordering {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_y_compare` is never used
[INFO] [stdout]    --> src/bvh.rs:116:4
[INFO] [stdout]     |
[INFO] [stdout] 116 | fn box_y_compare(a: &Rc<dyn Hittable,>, b: &Rc<dyn Hittable,>,) -> Ordering {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_z_compare` is never used
[INFO] [stdout]    --> src/bvh.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn box_z_compare(a: &Rc<dyn Hittable,>, b: &Rc<dyn Hittable,>,) -> Ordering {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `w` is never read
[INFO] [stdout]   --> src/camera.rs:12:2
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct Camera {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     w: Vec3,
[INFO] [stdout]    |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_texture` is never used
[INFO] [stdout]   --> src/constantmedium.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ConstantMedium {
[INFO] [stdout]    | ------------------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn from_texture(boundary: Rc<dyn Hittable,>, d: f64, a: Rc<dyn Texture,>,) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]   --> src/hittable_list.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl HittableList {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/material.rs:128:9
[INFO] [stdout]     |
[INFO] [stdout] 127 | impl DiffuseLight {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] 128 |     pub fn new(emit: Rc<dyn Texture,>,) -> Self { DiffuseLight { emit, } }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/material.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 149 | impl Isotrophic {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 150 |     pub fn new(albedo: Rc<dyn Texture,>,) -> Self { Isotrophic { albedo, } }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/texture.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl SolidColor {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 21 |     pub fn new(red: f64, green: f64, blue: f64,) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_in_hemisphere` is never used
[INFO] [stdout]    --> src/vec3.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 258 | pub fn random_in_hemisphere(normal: &Vec3) -> Vec3 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `enable_debug` should have an upper case name
[INFO] [stdout]   --> src/constantmedium.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         const enable_debug: bool = false;
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 39 -         const enable_debug: bool = false;
[INFO] [stdout] 39 +         const ENABLE_DEBUG: bool = false;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 9.70s
[INFO] running `Command { std: "docker" "inspect" "1510fd50b06ed2e49413df5a65a4a404e5965980c69ba9293f40e3903fff0bc0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1510fd50b06ed2e49413df5a65a4a404e5965980c69ba9293f40e3903fff0bc0", kill_on_drop: false }`
[INFO] [stdout] 1510fd50b06ed2e49413df5a65a4a404e5965980c69ba9293f40e3903fff0bc0
