[INFO] cloning repository https://github.com/KungFuDonkey/rust_renderer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/KungFuDonkey/rust_renderer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKungFuDonkey%2Frust_renderer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKungFuDonkey%2Frust_renderer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e7f63fd04ca96f6a78a4fbbd67eadc1079912930 [INFO] checking KungFuDonkey/rust_renderer/e7f63fd04ca96f6a78a4fbbd67eadc1079912930 against master#f609b7e0586f81fefb3523e3e17adf779ac416be for pr-129466-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKungFuDonkey%2Frust_renderer" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/KungFuDonkey/rust_renderer on toolchain f609b7e0586f81fefb3523e3e17adf779ac416be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/KungFuDonkey/rust_renderer [INFO] finished tweaking git repo https://github.com/KungFuDonkey/rust_renderer [INFO] tweaked toml for git repo https://github.com/KungFuDonkey/rust_renderer written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/KungFuDonkey/rust_renderer 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" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded chlorine v1.0.10 [INFO] [stderr] Downloaded bytemuck v1.14.2 [INFO] [stderr] Downloaded cl3 v0.9.5 [INFO] [stderr] Downloaded opencl-sys v0.2.8 [INFO] [stderr] Downloaded glfw-sys v3.3.5 [INFO] [stderr] Downloaded imgui-sys v0.11.0 [INFO] [stderr] Downloaded imgui-opengl-renderer v0.5.0 [INFO] [stderr] Downloaded imgui v0.11.0 [INFO] [stderr] Downloaded imgui-glfw-rs v0.4.1 [INFO] [stderr] Downloaded glfw v0.31.0 [INFO] [stderr] Downloaded glfw v0.44.0 [INFO] [stderr] Downloaded imgui v0.1.0 [INFO] [stderr] Downloaded imgui-sys v0.1.0 [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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 802288a7a995bf578959e59104af28b6e8bda888abb9f51bfb9b7a266da9431b [INFO] running `Command { std: "docker" "start" "-a" "802288a7a995bf578959e59104af28b6e8bda888abb9f51bfb9b7a266da9431b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "802288a7a995bf578959e59104af28b6e8bda888abb9f51bfb9b7a266da9431b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "802288a7a995bf578959e59104af28b6e8bda888abb9f51bfb9b7a266da9431b", kill_on_drop: false }` [INFO] [stdout] 802288a7a995bf578959e59104af28b6e8bda888abb9f51bfb9b7a266da9431b [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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d84db77fac172ceb2498ef5ffcdb86e683a792845d06c10a107d4db1adc72fbc [INFO] running `Command { std: "docker" "start" "-a" "d84db77fac172ceb2498ef5ffcdb86e683a792845d06c10a107d4db1adc72fbc", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling autocfg v0.1.8 [INFO] [stderr] Checking rand_core v0.4.2 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling proc-macro2 v1.0.78 [INFO] [stderr] Compiling khronos_api v2.2.0 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling parking_lot_core v0.5.0 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Checking rand_jitter v0.1.4 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling xml-rs v0.7.0 [INFO] [stderr] Checking miniz_oxide v0.7.2 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling parking_lot v0.8.0 [INFO] [stderr] Checking smallvec v0.6.14 [INFO] [stderr] Checking smallvec v1.13.1 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Checking lock_api v0.2.0 [INFO] [stderr] Compiling cmake v0.1.50 [INFO] [stderr] Compiling gl_generator v0.9.0 [INFO] [stderr] Compiling xml-rs v0.8.19 [INFO] [stderr] Checking either v1.9.0 [INFO] [stderr] Compiling parking_lot_core v0.9.9 [INFO] [stderr] Checking rayon v1.8.1 [INFO] [stderr] Compiling ahash v0.8.7 [INFO] [stderr] Compiling syn v2.0.48 [INFO] [stderr] Checking flate2 v1.0.28 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Compiling imgui-sys v0.1.0 [INFO] [stderr] Compiling glfw-sys v3.3.5 [INFO] [stderr] Compiling imgui-sys v0.11.0 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling imgui-opengl-renderer v0.5.0 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Checking weezl v0.1.8 [INFO] [stderr] Compiling thiserror v1.0.56 [INFO] [stderr] Compiling opencl-sys v0.2.8 [INFO] [stderr] Compiling gl v0.14.0 [INFO] [stderr] Checking flume v0.11.0 [INFO] [stderr] Checking getrandom v0.2.12 [INFO] [stderr] Checking fdeflate v0.3.4 [INFO] [stderr] Checking zune-inflate v0.2.54 [INFO] [stderr] Checking jpeg-decoder v0.3.1 [INFO] [stderr] Checking half v2.3.1 [INFO] [stderr] Checking mint v0.5.9 [INFO] [stderr] Checking color_quant v1.1.0 [INFO] [stderr] Checking zerocopy v0.7.32 [INFO] [stderr] Checking lebe v0.5.2 [INFO] [stderr] Checking bytemuck v1.14.2 [INFO] [stderr] Checking cty v0.2.2 [INFO] [stderr] Checking bit_field v0.10.2 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Checking chlorine v1.0.10 [INFO] [stderr] Checking raw-window-handle v0.4.3 [INFO] [stderr] Checking qoi v0.4.1 [INFO] [stderr] Checking exr v1.72.0 [INFO] [stderr] Checking tiff v0.9.1 [INFO] [stderr] Compiling thiserror-impl v1.0.56 [INFO] [stderr] Checking gif v0.12.0 [INFO] [stderr] Checking png v0.17.11 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking ieee754 v0.2.6 [INFO] [stderr] Checking cl3 v0.9.5 [INFO] [stderr] Checking fast-math v0.1.1 [INFO] [stderr] Checking tobj v4.0.1 [INFO] [stderr] Checking image v0.24.8 [INFO] [stderr] Checking glfw v0.31.0 [INFO] [stderr] Checking glfw v0.44.0 [INFO] [stderr] Checking imgui v0.1.0 [INFO] [stderr] Checking imgui v0.11.0 [INFO] [stderr] Checking imgui-glfw-rs v0.4.1 [INFO] [stderr] Checking ray_renderer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `CL_PROGRAM_BINARIES` [INFO] [stdout] --> src/opencl.rs:23:16 [INFO] [stdout] | [INFO] [stdout] 23 | use cl3::ext::{CL_PROGRAM_BINARIES, CL_QUEUE_PROFILING_ENABLE}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::opencl::OpenCLVendor::Nvidia` [INFO] [stdout] --> src/opencl.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | use crate::opencl::OpenCLVendor::Nvidia; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/opencl.rs:260:56 [INFO] [stdout] | [INFO] [stdout] 260 | let mut arch: OpenCLArch = OpenCLArch::Unknown;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/opencl.rs:657:19 [INFO] [stdout] | [INFO] [stdout] 657 | };; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::surface::Surface` [INFO] [stdout] --> src/opengl.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::surface::Surface; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FrameTimer` and `Timer` [INFO] [stdout] --> src/application.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::timer::{FrameTimer,Timer}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Timer` [INFO] [stdout] --> src/profiler.rs:1:32 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::timer::{FrameTimer, Timer}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f32::consts::PI` [INFO] [stdout] --> src/scene.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::f32::consts::PI; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BVH` [INFO] [stdout] --> src/bvh_construction.rs:2:38 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::render_components::{AABB, BVH, BVHNode, Triangle}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CL_PROGRAM_BINARIES` [INFO] [stdout] --> src/opencl.rs:23:16 [INFO] [stdout] | [INFO] [stdout] 23 | use cl3::ext::{CL_PROGRAM_BINARIES, CL_QUEUE_PROFILING_ENABLE}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::opencl::OpenCLVendor::Nvidia` [INFO] [stdout] --> src/opencl.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | use crate::opencl::OpenCLVendor::Nvidia; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/opencl.rs:260:56 [INFO] [stdout] | [INFO] [stdout] 260 | let mut arch: OpenCLArch = OpenCLArch::Unknown;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/opencl.rs:657:19 [INFO] [stdout] | [INFO] [stdout] 657 | };; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::surface::Surface` [INFO] [stdout] --> src/opengl.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::surface::Surface; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FrameTimer` and `Timer` [INFO] [stdout] --> src/application.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::timer::{FrameTimer,Timer}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Timer` [INFO] [stdout] --> src/profiler.rs:1:32 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::timer::{FrameTimer, Timer}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f32::consts::PI` [INFO] [stdout] --> src/scene.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::f32::consts::PI; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BVH` [INFO] [stdout] --> src/bvh_construction.rs:2:38 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::render_components::{AABB, BVH, BVHNode, Triangle}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/opengl.rs:57:44 [INFO] [stdout] | [INFO] [stdout] 57 | let vao_ptr: *mut GLuint = &mut VAO as *mut GLuint; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 57 | let vao_ptr: *mut GLuint = addr_of_mut!(VAO) as *mut GLuint; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/opengl.rs:57:44 [INFO] [stdout] | [INFO] [stdout] 57 | let vao_ptr: *mut GLuint = &mut VAO as *mut GLuint; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 57 | let vao_ptr: *mut GLuint = addr_of_mut!(VAO) as *mut GLuint; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/obj_loader.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | for i in 0..num_vertices [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mat_id` [INFO] [stdout] --> src/obj_loader.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let mat_id = mesh.material_id; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mat_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/obj_loader.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | for i in 0..num_vertices [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mat_id` [INFO] [stdout] --> src/obj_loader.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let mat_id = mesh.material_id; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mat_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/opencl.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | let mut vendor: OpenCLVendor; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/opencl.rs:425:13 [INFO] [stdout] | [INFO] [stdout] 425 | let mut timer = Timer::new(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cl` [INFO] [stdout] --> src/opencl.rs:502:25 [INFO] [stdout] | [INFO] [stdout] 502 | pub fn from_program(cl: &OpenCL, program: &OpenCLProgram, entry_point: &str) -> Self [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/opencl.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | let mut vendor: OpenCLVendor; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/opencl.rs:425:13 [INFO] [stdout] | [INFO] [stdout] 425 | let mut timer = Timer::new(); [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/application.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let mut scene = Scene::new(&cl); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cl` [INFO] [stdout] --> src/opencl.rs:502:25 [INFO] [stdout] | [INFO] [stdout] 502 | pub fn from_program(cl: &OpenCL, program: &OpenCLProgram, entry_point: &str) -> Self [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/application.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let mut scene = Scene::new(&cl); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scene` [INFO] [stdout] --> src/renderer.rs:315:43 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn render(&mut self, cl: &OpenCL, scene: &Scene) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scene` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/scene.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let mut scene = SceneDescription{ [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scene` [INFO] [stdout] --> src/renderer.rs:315:43 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn render(&mut self, cl: &OpenCL, scene: &Scene) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scene` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/scene.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let mut scene = SceneDescription{ [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_key_released` is never used [INFO] [stdout] --> src/input.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Input [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn is_key_released(&self, key: glfw::Key) -> bool [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_cl_platform_info` is never used [INFO] [stdout] --> src/opencl.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn get_cl_platform_info() -> Result<(), cl_int> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `platform` is never read [INFO] [stdout] --> src/opencl.rs:147:5 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct OpenCL [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 146 | { [INFO] [stdout] 147 | platform: cl_platform_id, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `write_only` is never used [INFO] [stdout] --> src/opencl.rs:671:12 [INFO] [stdout] | [INFO] [stdout] 643 | impl OpenCLBuffer [INFO] [stdout] | ------------------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 671 | pub fn write_only(cl: &OpenCL, host_data: Vec) -> Self [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `elapsed_seconds` is never used [INFO] [stdout] --> src/timer.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl Timer [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn elapsed_seconds(&self) -> u64 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `internal_timer`, `avg`, and `alpha` are never read [INFO] [stdout] --> src/timer.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct FrameTimer [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 30 | { [INFO] [stdout] 31 | internal_timer: Timer, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 32 | avg: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 33 | alpha: f32 [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `reset`, `get_frame_time`, and `print_frame_time` are never used [INFO] [stdout] --> src/timer.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl FrameTimer [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn reset(&mut self) [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn get_frame_time(&mut self) -> (f32, f32) [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn print_frame_time(&mut self) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `load_from_file` are never used [INFO] [stdout] --> src/surface.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Surface [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 13 | { [INFO] [stdout] 14 | pub fn new() -> Self [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn load_from_file(file: &std::path::Path) -> Self [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `render_timer` is never read [INFO] [stdout] --> src/profiler.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Profiler [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 4 | { [INFO] [stdout] 5 | render_timer: FrameTimer, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `PathTracing`, `Normals`, `AccumulatedLight`, and `LightLayer` are never constructed [INFO] [stdout] --> src/renderer.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum RenderMode [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 13 | { [INFO] [stdout] 14 | PathTracing, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 15 | Normals, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 16 | Albedo, [INFO] [stdout] 17 | AccumulatedLight, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 18 | LightLayer [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RenderMode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/renderer.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct Renderer [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 46 | pub last_settings: RenderSettings, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | extend_kernel: OpenCLKernel, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 51 | shade_kernel: OpenCLKernel, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 52 | connect_kernel: OpenCLKernel, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | finalize_kernel: OpenCLKernel, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | ray_write_back_ids: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 60 | ray_ts: OpenCLBuffer, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 61 | ray_origins: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 62 | ray_directions: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 63 | ray_normals: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 64 | [INFO] [stdout] 65 | ray_energies: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 66 | ray_intersection_colors: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 67 | ray_write_back_lights: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 68 | [INFO] [stdout] 69 | shadow_ray_ts: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 70 | shadow_ray_origins: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 71 | shadow_ray_directions: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 72 | shadow_ray_write_back_ids: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 73 | shadow_ray_write_back_lights: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 74 | [INFO] [stdout] 75 | albedo: OpenCLBuffer, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 76 | light: OpenCLBuffer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 77 | light_accumulator: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | blue_noise_texture: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `children` is never read [INFO] [stdout] --> src/scene.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct SceneObject [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 15 | pub children: Vec [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `bvhs` is never read [INFO] [stdout] --> src/scene.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct Scene [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 106 | pub bvhs: Vec [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tri_idx` is never read [INFO] [stdout] --> src/render_components.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Triangle [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 6 | { [INFO] [stdout] 7 | pub tri_idx: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Triangle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/render_components.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl AABB [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn reset(&mut self) [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn contains(&self, vector: &Float3) -> bool [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn contains2(&self, vector: &Float3) -> bool [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn extend_x(&self) -> f32 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn extend_y(&self) -> f32 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn extend_z(&self) -> f32 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn set_bounds(&mut self, max_bound: &Float3, min_bound: &Float3) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_plane_intersection` is never used [INFO] [stdout] --> src/render_components.rs:168:4 [INFO] [stdout] | [INFO] [stdout] 168 | fn test_plane_intersection(normal_axis: f32, e0x: f32, e0y: f32, e1x: f32, e1y: f32, e2x: f32, e2y: f32, v0x: f32, v0y: f32, v1x: f32, v1... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect_aabb_triangle` is never used [INFO] [stdout] --> src/render_components.rs:200:8 [INFO] [stdout] | [INFO] [stdout] 200 | pub fn intersect_aabb_triangle(aabb: &AABB, triangle: &Triangle, triangle_normal: &Float3) -> bool [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `triangle_is_in_aabb` is never used [INFO] [stdout] --> src/render_components.rs:256:8 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn triangle_is_in_aabb(aabb: &AABB, triangle: &Triangle, triangle_normal: &Float3) -> bool [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_leaf` is never used [INFO] [stdout] --> src/render_components.rs:271:12 [INFO] [stdout] | [INFO] [stdout] 269 | impl BVHNode [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 270 | { [INFO] [stdout] 271 | pub fn is_leaf(&self) -> bool [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sphere` is never constructed [INFO] [stdout] --> src/render_components.rs:296:12 [INFO] [stdout] | [INFO] [stdout] 296 | pub struct Sphere [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Plane` is never constructed [INFO] [stdout] --> src/render_components.rs:304:12 [INFO] [stdout] | [INFO] [stdout] 304 | pub struct Plane [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `vertex_uvs` is never read [INFO] [stdout] --> src/render_components.rs:315:9 [INFO] [stdout] | [INFO] [stdout] 310 | pub struct Mesh [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 315 | pub vertex_uvs: Vec [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `v` is never read [INFO] [stdout] --> src/bvh_construction.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 4 | struct Clipped [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 7 | pub v: [Float3; 9], [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `root_node_idx` is never read [INFO] [stdout] --> src/bvh_construction.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 134 | pub struct BVHConstructor [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 140 | pub root_node_idx: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_total_sah`, `get_node_count`, `get_leaf_count`, `sah_cost`, and `finalize_sbvh` are never used [INFO] [stdout] --> src/bvh_construction.rs:231:8 [INFO] [stdout] | [INFO] [stdout] 149 | impl BVHConstructor [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 231 | fn get_total_sah(&self, node_idx: usize) -> f32 [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | fn get_node_count(&self, node_idx: usize) -> u32 [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | fn get_leaf_count(&self, node_idx: usize) -> u32 [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | fn sah_cost(&self, node_idx: usize) -> f32 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | fn finalize_sbvh(&mut self, node_idx: usize) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_key_released` is never used [INFO] [stdout] --> src/input.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Input [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn is_key_released(&self, key: glfw::Key) -> bool [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_cl_platform_info` is never used [INFO] [stdout] --> src/opencl.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn get_cl_platform_info() -> Result<(), cl_int> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `platform` is never read [INFO] [stdout] --> src/opencl.rs:147:5 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct OpenCL [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 146 | { [INFO] [stdout] 147 | platform: cl_platform_id, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `write_only` is never used [INFO] [stdout] --> src/opencl.rs:671:12 [INFO] [stdout] | [INFO] [stdout] 643 | impl OpenCLBuffer [INFO] [stdout] | ------------------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 671 | pub fn write_only(cl: &OpenCL, host_data: Vec) -> Self [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `elapsed_seconds` is never used [INFO] [stdout] --> src/timer.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl Timer [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn elapsed_seconds(&self) -> u64 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `internal_timer`, `avg`, and `alpha` are never read [INFO] [stdout] --> src/timer.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct FrameTimer [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 30 | { [INFO] [stdout] 31 | internal_timer: Timer, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 32 | avg: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 33 | alpha: f32 [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `reset`, `get_frame_time`, and `print_frame_time` are never used [INFO] [stdout] --> src/timer.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl FrameTimer [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn reset(&mut self) [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn get_frame_time(&mut self) -> (f32, f32) [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn print_frame_time(&mut self) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `load_from_file` are never used [INFO] [stdout] --> src/surface.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Surface [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 13 | { [INFO] [stdout] 14 | pub fn new() -> Self [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn load_from_file(file: &std::path::Path) -> Self [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `render_timer` is never read [INFO] [stdout] --> src/profiler.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Profiler [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 4 | { [INFO] [stdout] 5 | render_timer: FrameTimer, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `PathTracing`, `Normals`, `AccumulatedLight`, and `LightLayer` are never constructed [INFO] [stdout] --> src/renderer.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum RenderMode [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 13 | { [INFO] [stdout] 14 | PathTracing, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 15 | Normals, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 16 | Albedo, [INFO] [stdout] 17 | AccumulatedLight, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 18 | LightLayer [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RenderMode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/renderer.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct Renderer [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 46 | pub last_settings: RenderSettings, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | extend_kernel: OpenCLKernel, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 51 | shade_kernel: OpenCLKernel, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 52 | connect_kernel: OpenCLKernel, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | finalize_kernel: OpenCLKernel, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | ray_write_back_ids: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 60 | ray_ts: OpenCLBuffer, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 61 | ray_origins: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 62 | ray_directions: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 63 | ray_normals: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 64 | [INFO] [stdout] 65 | ray_energies: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 66 | ray_intersection_colors: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 67 | ray_write_back_lights: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 68 | [INFO] [stdout] 69 | shadow_ray_ts: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 70 | shadow_ray_origins: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 71 | shadow_ray_directions: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 72 | shadow_ray_write_back_ids: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 73 | shadow_ray_write_back_lights: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 74 | [INFO] [stdout] 75 | albedo: OpenCLBuffer, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 76 | light: OpenCLBuffer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 77 | light_accumulator: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | blue_noise_texture: OpenCLBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `children` is never read [INFO] [stdout] --> src/scene.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct SceneObject [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 15 | pub children: Vec [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `bvhs` is never read [INFO] [stdout] --> src/scene.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct Scene [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 106 | pub bvhs: Vec [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tri_idx` is never read [INFO] [stdout] --> src/render_components.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Triangle [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 6 | { [INFO] [stdout] 7 | pub tri_idx: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Triangle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/render_components.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl AABB [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn reset(&mut self) [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn contains(&self, vector: &Float3) -> bool [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn contains2(&self, vector: &Float3) -> bool [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn extend_x(&self) -> f32 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn extend_y(&self) -> f32 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn extend_z(&self) -> f32 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn set_bounds(&mut self, max_bound: &Float3, min_bound: &Float3) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_plane_intersection` is never used [INFO] [stdout] --> src/render_components.rs:168:4 [INFO] [stdout] | [INFO] [stdout] 168 | fn test_plane_intersection(normal_axis: f32, e0x: f32, e0y: f32, e1x: f32, e1y: f32, e2x: f32, e2y: f32, v0x: f32, v0y: f32, v1x: f32, v1... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect_aabb_triangle` is never used [INFO] [stdout] --> src/render_components.rs:200:8 [INFO] [stdout] | [INFO] [stdout] 200 | pub fn intersect_aabb_triangle(aabb: &AABB, triangle: &Triangle, triangle_normal: &Float3) -> bool [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `triangle_is_in_aabb` is never used [INFO] [stdout] --> src/render_components.rs:256:8 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn triangle_is_in_aabb(aabb: &AABB, triangle: &Triangle, triangle_normal: &Float3) -> bool [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_leaf` is never used [INFO] [stdout] --> src/render_components.rs:271:12 [INFO] [stdout] | [INFO] [stdout] 269 | impl BVHNode [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 270 | { [INFO] [stdout] 271 | pub fn is_leaf(&self) -> bool [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sphere` is never constructed [INFO] [stdout] --> src/render_components.rs:296:12 [INFO] [stdout] | [INFO] [stdout] 296 | pub struct Sphere [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Plane` is never constructed [INFO] [stdout] --> src/render_components.rs:304:12 [INFO] [stdout] | [INFO] [stdout] 304 | pub struct Plane [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `vertex_uvs` is never read [INFO] [stdout] --> src/render_components.rs:315:9 [INFO] [stdout] | [INFO] [stdout] 310 | pub struct Mesh [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 315 | pub vertex_uvs: Vec [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `v` is never read [INFO] [stdout] --> src/bvh_construction.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 4 | struct Clipped [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 7 | pub v: [Float3; 9], [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `root_node_idx` is never read [INFO] [stdout] --> src/bvh_construction.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 134 | pub struct BVHConstructor [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 140 | pub root_node_idx: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_total_sah`, `get_node_count`, `get_leaf_count`, `sah_cost`, and `finalize_sbvh` are never used [INFO] [stdout] --> src/bvh_construction.rs:231:8 [INFO] [stdout] | [INFO] [stdout] 149 | impl BVHConstructor [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 231 | fn get_total_sah(&self, node_idx: usize) -> f32 [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | fn get_node_count(&self, node_idx: usize) -> u32 [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | fn get_leaf_count(&self, node_idx: usize) -> u32 [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | fn sah_cost(&self, node_idx: usize) -> f32 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | fn finalize_sbvh(&mut self, node_idx: usize) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/opencl.rs:424:9 [INFO] [stdout] | [INFO] [stdout] 424 | stdout().flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 424 | let _ = stdout().flush(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/opencl.rs:424:9 [INFO] [stdout] | [INFO] [stdout] 424 | stdout().flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 424 | let _ = stdout().flush(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 44 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 44 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.86s [INFO] running `Command { std: "docker" "inspect" "d84db77fac172ceb2498ef5ffcdb86e683a792845d06c10a107d4db1adc72fbc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d84db77fac172ceb2498ef5ffcdb86e683a792845d06c10a107d4db1adc72fbc", kill_on_drop: false }` [INFO] [stdout] d84db77fac172ceb2498ef5ffcdb86e683a792845d06c10a107d4db1adc72fbc