[INFO] cloning repository https://github.com/matejur/ray_tracer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/matejur/ray_tracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatejur%2Fray_tracer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatejur%2Fray_tracer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e17101ece8fe227eba0eca18f4bf178fae8ddbae [INFO] testing matejur/ray_tracer against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759-retry [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatejur%2Fray_tracer" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/matejur/ray_tracer [INFO] finished tweaking git repo https://github.com/matejur/ray_tracer [INFO] tweaked toml for git repo https://github.com/matejur/ray_tracer written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/matejur/ray_tracer on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/matejur/ray_tracer 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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9a5e7db1f77435b96e80f52475304b8ece0e39af14322dc1d29e729092e82908 [INFO] running `Command { std: "docker" "start" "-a" "9a5e7db1f77435b96e80f52475304b8ece0e39af14322dc1d29e729092e82908", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9a5e7db1f77435b96e80f52475304b8ece0e39af14322dc1d29e729092e82908", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9a5e7db1f77435b96e80f52475304b8ece0e39af14322dc1d29e729092e82908", kill_on_drop: false }` [INFO] [stdout] 9a5e7db1f77435b96e80f52475304b8ece0e39af14322dc1d29e729092e82908 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3279c06445cf8e7c51b60cc348b84540e7576fd7e3801c626016693261a37e09 [INFO] running `Command { std: "docker" "start" "-a" "3279c06445cf8e7c51b60cc348b84540e7576fd7e3801c626016693261a37e09", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.141 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling getrandom v0.2.9 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling ray_tracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/material.rs:26:40 [INFO] [stdout] | [INFO] [stdout] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^ help: try ignoring the field: `t: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `front_face` [INFO] [stdout] --> src/material.rs:26:51 [INFO] [stdout] | [INFO] [stdout] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `front_face: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material` [INFO] [stdout] --> src/material.rs:26:63 [INFO] [stdout] | [INFO] [stdout] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ray` [INFO] [stdout] --> src/material.rs:25:23 [INFO] [stdout] | [INFO] [stdout] 25 | fn scatter(&self, ray: &Ray, record: &HitRecord) -> MaterialData { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ray` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/material.rs:55:40 [INFO] [stdout] | [INFO] [stdout] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^ help: try ignoring the field: `t: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `front_face` [INFO] [stdout] --> src/material.rs:55:51 [INFO] [stdout] | [INFO] [stdout] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `front_face: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material` [INFO] [stdout] --> src/material.rs:55:63 [INFO] [stdout] | [INFO] [stdout] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/material.rs:89:40 [INFO] [stdout] | [INFO] [stdout] 89 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^ help: try ignoring the field: `t: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material` [INFO] [stdout] --> src/material.rs:89:63 [INFO] [stdout] | [INFO] [stdout] 89 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `point` [INFO] [stdout] --> src/main.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | point, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `point: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `normal` [INFO] [stdout] --> src/main.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | normal, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `normal: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `clear` is never used [INFO] [stdout] --> src/hittable.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl<'a> HittableList<'a> { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn clear(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `degrees_to_radians` is never used [INFO] [stdout] --> src/utility.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn degrees_to_radians(degrees: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/hittable.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord; [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 15 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/hittable.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord { [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 37 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sphere.rs:10:54 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn new(center: Vec3, radius: f64, material: &'a impl Material) -> Sphere { [INFO] [stdout] | ^^ ------ the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 10 | pub fn new(center: Vec3, radius: f64, material: &'a impl Material) -> Sphere<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sphere.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord { [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 20 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.91s [INFO] running `Command { std: "docker" "inspect" "3279c06445cf8e7c51b60cc348b84540e7576fd7e3801c626016693261a37e09", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3279c06445cf8e7c51b60cc348b84540e7576fd7e3801c626016693261a37e09", kill_on_drop: false }` [INFO] [stdout] 3279c06445cf8e7c51b60cc348b84540e7576fd7e3801c626016693261a37e09 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 61fa225b3246c3e843d73e93c9750d6016b03ab6eb4535537cf6c63c542ecf7b [INFO] running `Command { std: "docker" "start" "-a" "61fa225b3246c3e843d73e93c9750d6016b03ab6eb4535537cf6c63c542ecf7b", kill_on_drop: false }` [INFO] [stderr] Compiling ray_tracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/material.rs:26:40 [INFO] [stdout] | [INFO] [stdout] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^ help: try ignoring the field: `t: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `front_face` [INFO] [stdout] --> src/material.rs:26:51 [INFO] [stdout] | [INFO] [stdout] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `front_face: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material` [INFO] [stdout] --> src/material.rs:26:63 [INFO] [stdout] | [INFO] [stdout] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ray` [INFO] [stdout] --> src/material.rs:25:23 [INFO] [stdout] | [INFO] [stdout] 25 | fn scatter(&self, ray: &Ray, record: &HitRecord) -> MaterialData { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ray` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/material.rs:55:40 [INFO] [stdout] | [INFO] [stdout] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^ help: try ignoring the field: `t: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `front_face` [INFO] [stdout] --> src/material.rs:55:51 [INFO] [stdout] | [INFO] [stdout] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `front_face: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material` [INFO] [stdout] --> src/material.rs:55:63 [INFO] [stdout] | [INFO] [stdout] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/material.rs:89:40 [INFO] [stdout] | [INFO] [stdout] 89 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^ help: try ignoring the field: `t: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material` [INFO] [stdout] --> src/material.rs:89:63 [INFO] [stdout] | [INFO] [stdout] 89 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `point` [INFO] [stdout] --> src/main.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | point, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `point: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `normal` [INFO] [stdout] --> src/main.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | normal, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `normal: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `clear` is never used [INFO] [stdout] --> src/hittable.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl<'a> HittableList<'a> { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn clear(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `degrees_to_radians` is never used [INFO] [stdout] --> src/utility.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn degrees_to_radians(degrees: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/hittable.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord; [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 15 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/hittable.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord { [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 37 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sphere.rs:10:54 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn new(center: Vec3, radius: f64, material: &'a impl Material) -> Sphere { [INFO] [stdout] | ^^ ------ the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 10 | pub fn new(center: Vec3, radius: f64, material: &'a impl Material) -> Sphere<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sphere.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord { [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 20 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s [INFO] running `Command { std: "docker" "inspect" "61fa225b3246c3e843d73e93c9750d6016b03ab6eb4535537cf6c63c542ecf7b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "61fa225b3246c3e843d73e93c9750d6016b03ab6eb4535537cf6c63c542ecf7b", kill_on_drop: false }` [INFO] [stdout] 61fa225b3246c3e843d73e93c9750d6016b03ab6eb4535537cf6c63c542ecf7b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 5c2454296f9f935714eb0138883b6bf571409198fb839d6f0a607fa1c201698b [INFO] running `Command { std: "docker" "start" "-a" "5c2454296f9f935714eb0138883b6bf571409198fb839d6f0a607fa1c201698b", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `t` [INFO] [stderr] --> src/material.rs:26:40 [INFO] [stderr] | [INFO] [stderr] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stderr] | ^ help: try ignoring the field: `t: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `front_face` [INFO] [stderr] --> src/material.rs:26:51 [INFO] [stderr] | [INFO] [stderr] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stderr] | ^^^^^^^^^^ help: try ignoring the field: `front_face: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `material` [INFO] [stderr] --> src/material.rs:26:63 [INFO] [stderr] | [INFO] [stderr] 26 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ray` [INFO] [stderr] --> src/material.rs:25:23 [INFO] [stderr] | [INFO] [stderr] 25 | fn scatter(&self, ray: &Ray, record: &HitRecord) -> MaterialData { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_ray` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `t` [INFO] [stderr] --> src/material.rs:55:40 [INFO] [stderr] | [INFO] [stderr] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stderr] | ^ help: try ignoring the field: `t: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `front_face` [INFO] [stderr] --> src/material.rs:55:51 [INFO] [stderr] | [INFO] [stderr] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stderr] | ^^^^^^^^^^ help: try ignoring the field: `front_face: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `material` [INFO] [stderr] --> src/material.rs:55:63 [INFO] [stderr] | [INFO] [stderr] 55 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `t` [INFO] [stderr] --> src/material.rs:89:40 [INFO] [stderr] | [INFO] [stderr] 89 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stderr] | ^ help: try ignoring the field: `t: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `material` [INFO] [stderr] --> src/material.rs:89:63 [INFO] [stderr] | [INFO] [stderr] 89 | if let HitRecord::Hit { point, t, normal, front_face, material } = record { [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `material: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `point` [INFO] [stderr] --> src/main.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | point, [INFO] [stderr] | ^^^^^ help: try ignoring the field: `point: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `normal` [INFO] [stderr] --> src/main.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | normal, [INFO] [stderr] | ^^^^^^ help: try ignoring the field: `normal: _` [INFO] [stderr] [INFO] [stderr] warning: method `clear` is never used [INFO] [stderr] --> src/hittable.rs:31:12 [INFO] [stderr] | [INFO] [stderr] 22 | impl<'a> HittableList<'a> { [INFO] [stderr] | ------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 31 | pub fn clear(&mut self) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `degrees_to_radians` is never used [INFO] [stderr] --> src/utility.rs:13:8 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn degrees_to_radians(degrees: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/hittable.rs:15:12 [INFO] [stderr] | [INFO] [stderr] 15 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord; [INFO] [stderr] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 15 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_>; [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/hittable.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 37 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord { [INFO] [stderr] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 37 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/sphere.rs:10:54 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn new(center: Vec3, radius: f64, material: &'a impl Material) -> Sphere { [INFO] [stderr] | ^^ ------ the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 10 | pub fn new(center: Vec3, radius: f64, material: &'a impl Material) -> Sphere<'a> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/sphere.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 20 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord { [INFO] [stderr] | ^^^^^ this lifetime flows to the output --------- the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 20 | fn hit(&self, ray: &Ray, t_min: f64, t_max: f64) -> HitRecord<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `ray_tracer` (bin "ray_tracer" test) generated 17 warnings [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ray_tracer-1e47908e7b4bbfc0) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "5c2454296f9f935714eb0138883b6bf571409198fb839d6f0a607fa1c201698b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c2454296f9f935714eb0138883b6bf571409198fb839d6f0a607fa1c201698b", kill_on_drop: false }` [INFO] [stdout] 5c2454296f9f935714eb0138883b6bf571409198fb839d6f0a607fa1c201698b