[INFO] cloning repository https://github.com/avalanche666/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/avalanche666/Ray-Tracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Favalanche666%2FRay-Tracer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Favalanche666%2FRay-Tracer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a9152679631fa941c421ce9f983718b2741c273d
[INFO] checking avalanche666/Ray-Tracer against try#3fada14ee01d755dc8076e611f11bf65b28ffd21 for pr-154971
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Favalanche666%2FRay-Tracer" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/avalanche666/Ray-Tracer
[INFO] finished tweaking git repo https://github.com/avalanche666/Ray-Tracer
[INFO] tweaked toml for git repo https://github.com/avalanche666/Ray-Tracer written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/avalanche666/Ray-Tracer on toolchain 3fada14ee01d755dc8076e611f11bf65b28ffd21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3fada14ee01d755dc8076e611f11bf65b28ffd21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/avalanche666/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" "+3fada14ee01d755dc8076e611f11bf65b28ffd21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+3fada14ee01d755dc8076e611f11bf65b28ffd21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 77371b48b497ce860f2ac6171bc1b37dfb782f4314e2185f97903f88a81b22e6
[INFO] running `Command { std: "docker" "start" "-a" "77371b48b497ce860f2ac6171bc1b37dfb782f4314e2185f97903f88a81b22e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "77371b48b497ce860f2ac6171bc1b37dfb782f4314e2185f97903f88a81b22e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "77371b48b497ce860f2ac6171bc1b37dfb782f4314e2185f97903f88a81b22e6", kill_on_drop: false }`
[INFO] [stdout] 77371b48b497ce860f2ac6171bc1b37dfb782f4314e2185f97903f88a81b22e6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+3fada14ee01d755dc8076e611f11bf65b28ffd21" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 03c467010db0f47a577437bcb2d426e684a89ac945f52d1410efa02b84fc3e96
[INFO] running `Command { std: "docker" "start" "-a" "03c467010db0f47a577437bcb2d426e684a89ac945f52d1410efa02b84fc3e96", kill_on_drop: false }`
[INFO] [stderr]     Checking ray-tracer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0405]: cannot find trait `default` in this scope
[INFO] [stdout]   --> src/hittable.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl default for Hit_Record {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/3fada14ee01d755dc8076e611f11bf65b28ffd21/library/core/src/default.rs:107:0
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named trait `Default` defined here
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 11 - impl default for Hit_Record {
[INFO] [stdout] 11 + impl Default for Hit_Record {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `center` in this scope
[INFO] [stdout]   --> src/sphere.rs:11:45
[INFO] [stdout]    |
[INFO] [stdout] 11 |         let po :Custom_Point = r.origin() - center; // O-P
[INFO] [stdout]    |                                             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 11 |         let po :Custom_Point = r.origin() - self.center; // O-P
[INFO] [stdout]    |                                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `radius` in this scope
[INFO] [stdout]   --> src/sphere.rs:14:36
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let c :f64 = dot(po, po) - radius * radius; // -2OP + OO + PP - r*r = (O-P)^2 - r^2
[INFO] [stdout]    |                                    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let c :f64 = dot(po, po) - self.radius * radius; // -2OP + OO + PP - r*r = (O-P)^2 - r^2
[INFO] [stdout]    |                                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `radius` in this scope
[INFO] [stdout]   --> src/sphere.rs:14:45
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let c :f64 = dot(po, po) - radius * radius; // -2OP + OO + PP - r*r = (O-P)^2 - r^2
[INFO] [stdout]    |                                             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let c :f64 = dot(po, po) - radius * self.radius; // -2OP + OO + PP - r*r = (O-P)^2 - r^2
[INFO] [stdout]    |                                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `center` in this scope
[INFO] [stdout]   --> src/sphere.rs:31:31
[INFO] [stdout]    |
[INFO] [stdout] 31 |         rec.normal = (rec.p - center) / radius;
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 31 |         rec.normal = (rec.p - self.center) / radius;
[INFO] [stdout]    |                               +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `radius` in this scope
[INFO] [stdout]   --> src/sphere.rs:31:41
[INFO] [stdout]    |
[INFO] [stdout] 31 |         rec.normal = (rec.p - center) / radius;
[INFO] [stdout]    |                                         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 31 |         rec.normal = (rec.p - center) / self.radius;
[INFO] [stdout]    |                                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Hittable_List` in this scope
[INFO] [stdout]   --> src/main.rs:17:32
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn ray_color (r :&Ray, world :&Hittable_List) -> Custom_Color {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] note: struct `crate::hittable_list::Hittable_List` exists but is inaccessible
[INFO] [stdout]   --> src/hittable_list.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | struct Hittable_List {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cross`
[INFO] [stdout]  --> src/main.rs:8:82
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::vector::{Custom_Color, Custom_Point, Custom_Vector, unit_vector, dot, cross};
[INFO] [stdout]   |                                                                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Custom_Vector` should have an upper camel case name
[INFO] [stdout]  --> src/vector.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Custom_Vector {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomVector`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Custom_Point` should have an upper camel case name
[INFO] [stdout]    --> src/vector.rs:157:10
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub type Custom_Point = Custom_Vector;
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomPoint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Custom_Color` should have an upper camel case name
[INFO] [stdout]    --> src/vector.rs:158:10
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub type Custom_Color = Custom_Vector;
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomColor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vector`
[INFO] [stdout]  --> src/ray.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{Custom_Vector, vector};
[INFO] [stdout]   |                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Hit_Record` should have an upper camel case name
[INFO] [stdout]  --> src/hittable.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Hit_Record {
[INFO] [stdout]   |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `HitRecord`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Hittable_List` should have an upper camel case name
[INFO] [stdout]  --> src/hittable_list.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Hittable_List {
[INFO] [stdout]   |        ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HittableList`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `default` in this scope
[INFO] [stdout]   --> src/hittable.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl default for Hit_Record {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/3fada14ee01d755dc8076e611f11bf65b28ffd21/library/core/src/default.rs:107:0
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named trait `Default` defined here
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 11 - impl default for Hit_Record {
[INFO] [stdout] 11 + impl Default for Hit_Record {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `center` in this scope
[INFO] [stdout]   --> src/sphere.rs:11:45
[INFO] [stdout]    |
[INFO] [stdout] 11 |         let po :Custom_Point = r.origin() - center; // O-P
[INFO] [stdout]    |                                             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 11 |         let po :Custom_Point = r.origin() - self.center; // O-P
[INFO] [stdout]    |                                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `radius` in this scope
[INFO] [stdout]   --> src/sphere.rs:14:36
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let c :f64 = dot(po, po) - radius * radius; // -2OP + OO + PP - r*r = (O-P)^2 - r^2
[INFO] [stdout]    |                                    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let c :f64 = dot(po, po) - self.radius * radius; // -2OP + OO + PP - r*r = (O-P)^2 - r^2
[INFO] [stdout]    |                                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `radius` in this scope
[INFO] [stdout]   --> src/sphere.rs:14:45
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let c :f64 = dot(po, po) - radius * radius; // -2OP + OO + PP - r*r = (O-P)^2 - r^2
[INFO] [stdout]    |                                             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let c :f64 = dot(po, po) - radius * self.radius; // -2OP + OO + PP - r*r = (O-P)^2 - r^2
[INFO] [stdout]    |                                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `center` in this scope
[INFO] [stdout]   --> src/sphere.rs:31:31
[INFO] [stdout]    |
[INFO] [stdout] 31 |         rec.normal = (rec.p - center) / radius;
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 31 |         rec.normal = (rec.p - self.center) / radius;
[INFO] [stdout]    |                               +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `radius` in this scope
[INFO] [stdout]   --> src/sphere.rs:31:41
[INFO] [stdout]    |
[INFO] [stdout] 31 |         rec.normal = (rec.p - center) / radius;
[INFO] [stdout]    |                                         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use the available field
[INFO] [stdout]    |
[INFO] [stdout] 31 |         rec.normal = (rec.p - center) / self.radius;
[INFO] [stdout]    |                                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Hittable_List` in this scope
[INFO] [stdout]   --> src/main.rs:17:32
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn ray_color (r :&Ray, world :&Hittable_List) -> Custom_Color {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] note: struct `crate::hittable_list::Hittable_List` exists but is inaccessible
[INFO] [stdout]   --> src/hittable_list.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | struct Hittable_List {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cross`
[INFO] [stdout]  --> src/main.rs:8:82
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::vector::{Custom_Color, Custom_Point, Custom_Vector, unit_vector, dot, cross};
[INFO] [stdout]   |                                                                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Custom_Vector` should have an upper camel case name
[INFO] [stdout]  --> src/vector.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Custom_Vector {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomVector`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Custom_Point` should have an upper camel case name
[INFO] [stdout]    --> src/vector.rs:157:10
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub type Custom_Point = Custom_Vector;
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomPoint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Custom_Color` should have an upper camel case name
[INFO] [stdout]    --> src/vector.rs:158:10
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub type Custom_Color = Custom_Vector;
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomColor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vector`
[INFO] [stdout]  --> src/ray.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{Custom_Vector, vector};
[INFO] [stdout]   |                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Hit_Record` should have an upper camel case name
[INFO] [stdout]  --> src/hittable.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Hit_Record {
[INFO] [stdout]   |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `HitRecord`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Hittable_List` should have an upper camel case name
[INFO] [stdout]  --> src/hittable_list.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Hittable_List {
[INFO] [stdout]   |        ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HittableList`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0782]: expected a type, found a trait
[INFO] [stdout]  --> src/hittable_list.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 |     objects :Vec<Hittable>
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: you can add the `dyn` keyword if you want a trait object
[INFO] [stdout]   |
[INFO] [stdout] 6 |     objects :Vec<dyn Hittable>
[INFO] [stdout]   |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0782]: expected a type, found a trait
[INFO] [stdout]  --> src/hittable_list.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 |     objects :Vec<Hittable>
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: you can add the `dyn` keyword if you want a trait object
[INFO] [stdout]   |
[INFO] [stdout] 6 |     objects :Vec<dyn Hittable>
[INFO] [stdout]   |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `hit_sphere` in this scope
[INFO] [stdout]   --> src/main.rs:57:26
[INFO] [stdout]    |
[INFO] [stdout] 57 |             let t :f64 = hit_sphere(&r, &sphere, 1.0);
[INFO] [stdout]    |                          ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `sphere_color` in this scope
[INFO] [stdout]   --> src/main.rs:60:21
[INFO] [stdout]    |
[INFO] [stdout] 60 |                 c = sphere_color(&r);
[INFO] [stdout]    |                     ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0425, E0782.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `hit_sphere` in this scope
[INFO] [stdout]   --> src/main.rs:57:26
[INFO] [stdout]    |
[INFO] [stdout] 57 |             let t :f64 = hit_sphere(&r, &sphere, 1.0);
[INFO] [stdout]    |                          ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `sphere_color` in this scope
[INFO] [stdout]   --> src/main.rs:60:21
[INFO] [stdout]    |
[INFO] [stdout] 60 |                 c = sphere_color(&r);
[INFO] [stdout]    |                     ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0425, E0782.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ray-tracer` (bin "ray-tracer") due to 10 previous errors; 8 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `ray-tracer` (bin "ray-tracer" test) due to 10 previous errors; 8 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "03c467010db0f47a577437bcb2d426e684a89ac945f52d1410efa02b84fc3e96", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "03c467010db0f47a577437bcb2d426e684a89ac945f52d1410efa02b84fc3e96", kill_on_drop: false }`
[INFO] [stdout] 03c467010db0f47a577437bcb2d426e684a89ac945f52d1410efa02b84fc3e96
