[INFO] updating cached repository amejii/edupt-rust [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/amejii/edupt-rust [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/amejii/edupt-rust" "work/ex/clippy-test-run/sources/stable/gh/amejii/edupt-rust"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/amejii/edupt-rust'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/amejii/edupt-rust" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/amejii/edupt-rust"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/amejii/edupt-rust'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 754ae3c6f281fbdf64ee0c3993fa0a20c647ba49 [INFO] sha for GitHub repo amejii/edupt-rust: 754ae3c6f281fbdf64ee0c3993fa0a20c647ba49 [INFO] validating manifest of amejii/edupt-rust on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of amejii/edupt-rust on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing amejii/edupt-rust [INFO] finished frobbing amejii/edupt-rust [INFO] frobbed toml for amejii/edupt-rust written to work/ex/clippy-test-run/sources/stable/gh/amejii/edupt-rust/Cargo.toml [INFO] started frobbing amejii/edupt-rust [INFO] finished frobbing amejii/edupt-rust [INFO] frobbed toml for amejii/edupt-rust written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/amejii/edupt-rust/Cargo.toml [INFO] crate amejii/edupt-rust has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting amejii/edupt-rust against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-0/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/amejii/edupt-rust:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dclippy::into_iter_on_array" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] a45d984ede413891cf68c75930a0a772df2429f5d2e0eac102f1be305b0cfad2 [INFO] running `"docker" "start" "-a" "a45d984ede413891cf68c75930a0a772df2429f5d2e0eac102f1be305b0cfad2"` [INFO] [stderr] Checking vecmath v0.3.1 [INFO] [stderr] Checking edupt_rust v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:18:14 [INFO] [stderr] | [INFO] [stderr] 18 | x : x, [INFO] [stderr] | ^^^^^ help: replace it with: `x` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:19:14 [INFO] [stderr] | [INFO] [stderr] 19 | y : y, [INFO] [stderr] | ^^^^^ help: replace it with: `y` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:20:14 [INFO] [stderr] | [INFO] [stderr] 20 | z : z, [INFO] [stderr] | ^^^^^ help: replace it with: `z` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:12:13 [INFO] [stderr] | [INFO] [stderr] 12 | org : org, [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `org` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | dir : dir, [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | radius: radius, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `radius` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | position: position, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | emission: emission, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `emission` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | reflection_type: reflection_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `reflection_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/radiance.rs:68:68 [INFO] [stderr] | [INFO] [stderr] 68 | incoming_radiance = radiance(Ray{org:hitpoint.position,dir:dir}, rnd, depth+1); [INFO] [stderr] | ^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/render.rs:44:62 [INFO] [stderr] | [INFO] [stderr] 44 | radiance(Ray{org:camera_position,dir:dir}, &mut rnd, 0) / samples as f64 / (supersamples * supersamples) as f64; [INFO] [stderr] | ^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:18:14 [INFO] [stderr] | [INFO] [stderr] 18 | x : x, [INFO] [stderr] | ^^^^^ help: replace it with: `x` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:19:14 [INFO] [stderr] | [INFO] [stderr] 19 | y : y, [INFO] [stderr] | ^^^^^ help: replace it with: `y` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:20:14 [INFO] [stderr] | [INFO] [stderr] 20 | z : z, [INFO] [stderr] | ^^^^^ help: replace it with: `z` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:12:13 [INFO] [stderr] | [INFO] [stderr] 12 | org : org, [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `org` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | dir : dir, [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | radius: radius, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `radius` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | position: position, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | emission: emission, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `emission` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | reflection_type: reflection_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `reflection_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/radiance.rs:68:68 [INFO] [stderr] | [INFO] [stderr] 68 | incoming_radiance = radiance(Ray{org:hitpoint.position,dir:dir}, rnd, depth+1); [INFO] [stderr] | ^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/render.rs:44:62 [INFO] [stderr] | [INFO] [stderr] 44 | radiance(Ray{org:camera_position,dir:dir}, &mut rnd, 0) / samples as f64 / (supersamples * supersamples) as f64; [INFO] [stderr] | ^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/constant.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | pub const K_PI : f64 = 3.14159265358979323846; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider: `3.141_592_653_589_793_238_46` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/random.rs:31:18 [INFO] [stderr] | [INFO] [stderr] 31 | s = (1812433253_u32).wrapping_mul(s^(s>>30)) + i; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider: `1_812_433_253_u32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/scene.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | / if spheres[i].intersect(ray, &mut hitpoint) { [INFO] [stderr] 31 | | if hitpoint.distance < intersection.hitpoint.distance { [INFO] [stderr] 32 | | intersection.hitpoint = hitpoint; [INFO] [stderr] 33 | | intersection.object_id = i as i32; [INFO] [stderr] 34 | | } [INFO] [stderr] 35 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 30 | if spheres[i].intersect(ray, &mut hitpoint) && hitpoint.distance < intersection.hitpoint.distance { [INFO] [stderr] 31 | intersection.hitpoint = hitpoint; [INFO] [stderr] 32 | intersection.object_id = i as i32; [INFO] [stderr] 33 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/constant.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | pub const K_PI : f64 = 3.14159265358979323846; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider: `3.141_592_653_589_793_238_46` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/random.rs:31:18 [INFO] [stderr] | [INFO] [stderr] 31 | s = (1812433253_u32).wrapping_mul(s^(s>>30)) + i; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider: `1_812_433_253_u32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/scene.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | / if spheres[i].intersect(ray, &mut hitpoint) { [INFO] [stderr] 31 | | if hitpoint.distance < intersection.hitpoint.distance { [INFO] [stderr] 32 | | intersection.hitpoint = hitpoint; [INFO] [stderr] 33 | | intersection.object_id = i as i32; [INFO] [stderr] 34 | | } [INFO] [stderr] 35 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 30 | if spheres[i].intersect(ray, &mut hitpoint) && hitpoint.distance < intersection.hitpoint.distance { [INFO] [stderr] 31 | intersection.hitpoint = hitpoint; [INFO] [stderr] 32 | intersection.object_id = i as i32; [INFO] [stderr] 33 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: value assigned to `weight` is never read [INFO] [stderr] --> src/radiance.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | let mut weight : Color = Color{x:1.0, y:1.0, z:1.0}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `weight` is never read [INFO] [stderr] --> src/radiance.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | let mut weight : Color = Color{x:1.0, y:1.0, z:1.0}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/ray.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | fn new(org : Vector, dir : Vector) -> Ray{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/sphere.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn new(radius:f64, position: Vector, emission: Color, color: Color, reflection_type: ReflectionType) -> Sphere { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/constant.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | pub const K_PI : f64 = 3.14159265358979323846; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `3.141_592_653_589_793` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/random.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | self.next() as f64 / u32::max_value() as f64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.next())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/random.rs:23:30 [INFO] [stderr] | [INFO] [stderr] 23 | self.next() as f64 / u32::max_value() as f64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(u32::max_value())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/ray.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | fn new(org : Vector, dir : Vector) -> Ray{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/sphere.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn new(radius:f64, position: Vector, emission: Color, color: Color, reflection_type: ReflectionType) -> Sphere { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/random.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | i = i + 1; [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `i += 1` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: variant `REFLECTION_TYPE_DIFFUSE` should have a camel case name such as `ReflectionTypeDiffuse` [INFO] [stderr] --> src/material.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | REFLECTION_TYPE_DIFFUSE, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant `REFLECTION_TYPE_SPECULAR` should have a camel case name such as `ReflectionTypeSpecular` [INFO] [stderr] --> src/material.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | REFLECTION_TYPE_SPECULAR, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `REFLECTION_TYPE_REFRACTION` should have a camel case name such as `ReflectionTypeRefraction` [INFO] [stderr] --> src/material.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | REFLECTION_TYPE_REFRACTION, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/constant.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | pub const K_PI : f64 = 3.14159265358979323846; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `3.141_592_653_589_793` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/random.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | self.next() as f64 / u32::max_value() as f64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.next())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ppm.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | file.write_all(data.as_bytes()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/random.rs:23:30 [INFO] [stderr] | [INFO] [stderr] 23 | self.next() as f64 / u32::max_value() as f64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(u32::max_value())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/random.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | i = i + 1; [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `i += 1` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: variant `REFLECTION_TYPE_DIFFUSE` should have a camel case name such as `ReflectionTypeDiffuse` [INFO] [stderr] --> src/material.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | REFLECTION_TYPE_DIFFUSE, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant `REFLECTION_TYPE_SPECULAR` should have a camel case name such as `ReflectionTypeSpecular` [INFO] [stderr] --> src/material.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | REFLECTION_TYPE_SPECULAR, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `REFLECTION_TYPE_REFRACTION` should have a camel case name such as `ReflectionTypeRefraction` [INFO] [stderr] --> src/material.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | REFLECTION_TYPE_REFRACTION, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `D4` should have a snake case name such as `d4` [INFO] [stderr] --> src/sphere.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | let D4 = b * b - dot(p_o, p_o) + self.radius * self.radius; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `sqrt_D4` should have a snake case name such as `sqrt_d4` [INFO] [stderr] --> src/sphere.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | let sqrt_D4 = Sqrt::sqrt(D4); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `spheres` should have an upper case name such as `SPHERES` [INFO] [stderr] --> src/scene.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | / pub const spheres : [Sphere;10]= [ [INFO] [stderr] 10 | | Sphere{radius:1e5, position:Vector{x:1e5+1.0, y:40.8, z:81.6}, emission:Color{x:0.0,y:0.0,z:0.0}, color:Color{x:0.75, y:0.25, z:0.25}, reflection_type:ReflectionType::REFLECTION_TYPE_DIFFUSE},// left [INFO] [stderr] 11 | | Sphere{radius:1e5, position:Vector{x:-1e5+99.0, y:40.8, z:81.6},emission:Color{x:0.0,y:0.0,z:0.0}, color:Color{x:0.25, y:0.25, z:0.75}, reflection_type:ReflectionType::REFLECTION_TYPE_DIFFUSE}, // right [INFO] [stderr] 12 | | Sphere{radius:1e5, position:Vector{x:50.0, y:40.8, z:1e5}, emission:Color{x:0.0,y:0.0,z:0.0}, color:Color{x:0.75, y:0.75, z:0.75}, reflection_type:ReflectionType::REFLECTION_TYPE_DIFFUSE}, // back [INFO] [stderr] ... | [INFO] [stderr] 19 | | Sphere{radius:15.0,position:Vector{x:50.0, y:90.0, z:81.6}, emission:Color{x:36.0,y:36.0,z:36.0}, color:Color{x:0.0,y:0.0,z:0.0}, reflection_type:ReflectionType::REFLECTION_TYPE_DIFFUSE}, //illumination [INFO] [stderr] 20 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_upper_case_globals)] on by default [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `spheres` [INFO] [stderr] --> src/scene.rs:28:14 [INFO] [stderr] | [INFO] [stderr] 28 | for i in 0..n { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ppm.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | file.write_all(data.as_bytes()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 28 | for (i, ) in spheres.iter().enumerate().take(n) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `D4` should have a snake case name such as `d4` [INFO] [stderr] --> src/sphere.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | let D4 = b * b - dot(p_o, p_o) + self.radius * self.radius; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `sqrt_D4` should have a snake case name such as `sqrt_d4` [INFO] [stderr] --> src/sphere.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | let sqrt_D4 = Sqrt::sqrt(D4); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: this loop never actually loops [INFO] [stderr] --> src/radiance.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | / loop{ [INFO] [stderr] 49 | | match now_object.reflection_type { [INFO] [stderr] 50 | | ReflectionType::REFLECTION_TYPE_DIFFUSE =>{ [INFO] [stderr] 51 | | let w : Vector = orienting_normal; [INFO] [stderr] ... | [INFO] [stderr] 120 | | } [INFO] [stderr] 121 | | } break; }// always break at the end of loop [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::never_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#never_loop [INFO] [stderr] [INFO] [stderr] warning: constant `spheres` should have an upper case name such as `SPHERES` [INFO] [stderr] --> src/scene.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | / pub const spheres : [Sphere;10]= [ [INFO] [stderr] 10 | | Sphere{radius:1e5, position:Vector{x:1e5+1.0, y:40.8, z:81.6}, emission:Color{x:0.0,y:0.0,z:0.0}, color:Color{x:0.75, y:0.25, z:0.25}, reflection_type:ReflectionType::REFLECTION_TYPE_DIFFUSE},// left [INFO] [stderr] 11 | | Sphere{radius:1e5, position:Vector{x:-1e5+99.0, y:40.8, z:81.6},emission:Color{x:0.0,y:0.0,z:0.0}, color:Color{x:0.25, y:0.25, z:0.75}, reflection_type:ReflectionType::REFLECTION_TYPE_DIFFUSE}, // right [INFO] [stderr] 12 | | Sphere{radius:1e5, position:Vector{x:50.0, y:40.8, z:1e5}, emission:Color{x:0.0,y:0.0,z:0.0}, color:Color{x:0.75, y:0.75, z:0.75}, reflection_type:ReflectionType::REFLECTION_TYPE_DIFFUSE}, // back [INFO] [stderr] ... | [INFO] [stderr] 19 | | Sphere{radius:15.0,position:Vector{x:50.0, y:90.0, z:81.6}, emission:Color{x:36.0,y:36.0,z:36.0}, color:Color{x:0.0,y:0.0,z:0.0}, reflection_type:ReflectionType::REFLECTION_TYPE_DIFFUSE}, //illumination [INFO] [stderr] 20 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_upper_case_globals)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `R0` should have a snake case name such as `r0` [INFO] [stderr] --> src/radiance.rs:96:17 [INFO] [stderr] | [INFO] [stderr] 96 | let R0 = (a * a) / (b * b); [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: variable `Re` should have a snake case name such as `re` [INFO] [stderr] --> src/radiance.rs:101:17 [INFO] [stderr] | [INFO] [stderr] 101 | let Re = R0 + (1.0 - R0) * c.powf(5.0); [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: variable `Tr` should have a snake case name such as `tr` [INFO] [stderr] --> src/radiance.rs:103:17 [INFO] [stderr] | [INFO] [stderr] 103 | let Tr = (1.0 - Re) * nnt2; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `spheres` [INFO] [stderr] --> src/scene.rs:28:14 [INFO] [stderr] | [INFO] [stderr] 28 | for i in 0..n { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 28 | for (i, ) in spheres.iter().enumerate().take(n) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: this loop never actually loops [INFO] [stderr] --> src/radiance.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | / loop{ [INFO] [stderr] 49 | | match now_object.reflection_type { [INFO] [stderr] 50 | | ReflectionType::REFLECTION_TYPE_DIFFUSE =>{ [INFO] [stderr] 51 | | let w : Vector = orienting_normal; [INFO] [stderr] ... | [INFO] [stderr] 120 | | } [INFO] [stderr] 121 | | } break; }// always break at the end of loop [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::never_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#never_loop [INFO] [stderr] [INFO] [stderr] warning: variable `R0` should have a snake case name such as `r0` [INFO] [stderr] --> src/radiance.rs:96:17 [INFO] [stderr] | [INFO] [stderr] 96 | let R0 = (a * a) / (b * b); [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:12:32 [INFO] [stderr] | [INFO] [stderr] 12 | let screen_width = 30.0 * width as f64 / height as f64; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:12:47 [INFO] [stderr] | [INFO] [stderr] 12 | let screen_width = 30.0 * width as f64 / height as f64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: variable `Re` should have a snake case name such as `re` [INFO] [stderr] --> src/radiance.rs:101:17 [INFO] [stderr] | [INFO] [stderr] 101 | let Re = R0 + (1.0 - R0) * c.powf(5.0); [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: variable `Tr` should have a snake case name such as `tr` [INFO] [stderr] --> src/radiance.rs:103:17 [INFO] [stderr] | [INFO] [stderr] 103 | let Tr = (1.0 - Re) * nnt2; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:25:51 [INFO] [stderr] | [INFO] [stderr] 25 | println!("Rendering(y = {}) {} %",y,100.0*y as f64 / (height as f64 / 1.0)); [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:25:63 [INFO] [stderr] | [INFO] [stderr] 25 | println!("Rendering(y = {}) {} %",y,100.0*y as f64 / (height as f64 / 1.0)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:33:48 [INFO] [stderr] | [INFO] [stderr] 33 | let rate : f64 = 1.0 / supersamples as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(supersamples)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:34:40 [INFO] [stderr] | [INFO] [stderr] 34 | let r1 : f64 = sx as f64 * rate + rate / 2.0; [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(sx)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:12:32 [INFO] [stderr] | [INFO] [stderr] 12 | let screen_width = 30.0 * width as f64 / height as f64; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:12:47 [INFO] [stderr] | [INFO] [stderr] 12 | let screen_width = 30.0 * width as f64 / height as f64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:25:51 [INFO] [stderr] | [INFO] [stderr] 25 | println!("Rendering(y = {}) {} %",y,100.0*y as f64 / (height as f64 / 1.0)); [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:25:63 [INFO] [stderr] | [INFO] [stderr] 25 | println!("Rendering(y = {}) {} %",y,100.0*y as f64 / (height as f64 / 1.0)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:33:48 [INFO] [stderr] | [INFO] [stderr] 33 | let rate : f64 = 1.0 / supersamples as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(supersamples)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:34:40 [INFO] [stderr] | [INFO] [stderr] 34 | let r1 : f64 = sx as f64 * rate + rate / 2.0; [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(sx)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:35:40 [INFO] [stderr] | [INFO] [stderr] 35 | let r2 : f64 = sy as f64 * rate + rate / 2.0; [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(sy)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:39:36 [INFO] [stderr] | [INFO] [stderr] 39 | ((r1 + x as f64) / width as f64 - 0.5) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:39:48 [INFO] [stderr] | [INFO] [stderr] 39 | ((r1 + x as f64) / width as f64 - 0.5) + [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:40:47 [INFO] [stderr] | [INFO] [stderr] 40 | screen_y * ((r2 + y as f64) / height as f64 - 0.5); [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:40:59 [INFO] [stderr] | [INFO] [stderr] 40 | screen_y * ((r2 + y as f64) / height as f64 - 0.5); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:44:87 [INFO] [stderr] | [INFO] [stderr] 44 | radiance(Ray{org:camera_position,dir:dir}, &mut rnd, 0) / samples as f64 / (supersamples * supersamples) as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(samples)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:44:104 [INFO] [stderr] | [INFO] [stderr] 44 | radiance(Ray{org:camera_position,dir:dir}, &mut rnd, 0) / samples as f64 / (supersamples * supersamples) as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(supersamples * supersamples)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:35:40 [INFO] [stderr] | [INFO] [stderr] 35 | let r2 : f64 = sy as f64 * rate + rate / 2.0; [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(sy)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:39:36 [INFO] [stderr] | [INFO] [stderr] 39 | ((r1 + x as f64) / width as f64 - 0.5) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:39:48 [INFO] [stderr] | [INFO] [stderr] 39 | ((r1 + x as f64) / width as f64 - 0.5) + [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:40:47 [INFO] [stderr] | [INFO] [stderr] 40 | screen_y * ((r2 + y as f64) / height as f64 - 0.5); [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:40:59 [INFO] [stderr] | [INFO] [stderr] 40 | screen_y * ((r2 + y as f64) / height as f64 - 0.5); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:44:87 [INFO] [stderr] | [INFO] [stderr] 44 | radiance(Ray{org:camera_position,dir:dir}, &mut rnd, 0) / samples as f64 / (supersamples * supersamples) as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(samples)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/render.rs:44:104 [INFO] [stderr] | [INFO] [stderr] 44 | radiance(Ray{org:camera_position,dir:dir}, &mut rnd, 0) / samples as f64 / (supersamples * supersamples) as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(supersamples * supersamples)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `edupt_rust`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: Could not compile `edupt_rust`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "a45d984ede413891cf68c75930a0a772df2429f5d2e0eac102f1be305b0cfad2"` [INFO] running `"docker" "rm" "-f" "a45d984ede413891cf68c75930a0a772df2429f5d2e0eac102f1be305b0cfad2"` [INFO] [stdout] a45d984ede413891cf68c75930a0a772df2429f5d2e0eac102f1be305b0cfad2