[INFO] cloning repository https://github.com/andywarduk/raytracer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/andywarduk/raytracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandywarduk%2Fraytracer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandywarduk%2Fraytracer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 37112b74e15e860e6a308c450778e0b80f88993c
[INFO] testing andywarduk/raytracer/37112b74e15e860e6a308c450778e0b80f88993c against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandywarduk%2Fraytracer" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/andywarduk/raytracer
[INFO] finished tweaking git repo https://github.com/andywarduk/raytracer
[INFO] tweaked toml for git repo https://github.com/andywarduk/raytracer written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/andywarduk/raytracer 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/andywarduk/raytracer 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] [stderr]     Updating git repository `https://github.com/robotty/simple-process-stats`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded noisy_float v0.2.0
[INFO] [stderr]   Downloaded ravif v0.11.7
[INFO] [stderr]   Downloaded xcursor v0.3.5
[INFO] [stderr]   Downloaded darwin-libproc v0.2.0
[INFO] [stderr]   Downloaded darwin-libproc-sys v0.2.0
[INFO] [stderr]   Downloaded bitstream-io v2.4.2
[INFO] [stderr]   Downloaded toml v0.7.6
[INFO] [stderr]   Downloaded procfs v0.9.1
[INFO] [stderr]   Downloaded toml_edit v0.19.12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] da237ca9a350e9c80782acab6d67d085abdac4da18b1810354f15697b456bb60
[INFO] running `Command { std: "docker" "start" "-a" "da237ca9a350e9c80782acab6d67d085abdac4da18b1810354f15697b456bb60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "da237ca9a350e9c80782acab6d67d085abdac4da18b1810354f15697b456bb60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "da237ca9a350e9c80782acab6d67d085abdac4da18b1810354f15697b456bb60", kill_on_drop: false }`
[INFO] [stdout] da237ca9a350e9c80782acab6d67d085abdac4da18b1810354f15697b456bb60
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] cd1c24b8a78b63377f594239a17dbdc5979aa5cfd2975cecc47c113b64e7a70a
[INFO] running `Command { std: "docker" "start" "-a" "cd1c24b8a78b63377f594239a17dbdc5979aa5cfd2975cecc47c113b64e7a70a", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling xml-rs v0.8.20
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling thiserror v1.0.61
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling libloading v0.8.4
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling anyhow v1.0.86
[INFO] [stderr]    Compiling miniz_oxide v0.7.4
[INFO] [stderr]    Compiling either v1.12.0
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling aligned-vec v0.5.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling built v0.7.3
[INFO] [stderr]    Compiling bytemuck v1.16.1
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling bitstream-io v2.4.2
[INFO] [stderr]    Compiling flate2 v1.0.30
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling weezl v0.1.8
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling syn v2.0.67
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling rav1e v0.7.1
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling v_frame v0.3.8
[INFO] [stderr]    Compiling imgref v1.10.1
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling flume v0.11.0
[INFO] [stderr]    Compiling anstyle-parse v0.2.4
[INFO] [stderr]    Compiling num-bigint v0.4.5
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling loop9 v0.1.5
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling rgb v0.8.37
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling avif-serialize v0.8.1
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling fdeflate v0.3.4
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.60
[INFO] [stderr]    Compiling lebe v0.5.2
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling bit_field v0.10.2
[INFO] [stderr]    Compiling colorchoice v1.0.1
[INFO] [stderr]    Compiling jpeg-decoder v0.3.1
[INFO] [stderr]    Compiling cc v1.0.99
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.0
[INFO] [stderr]    Compiling zune-core v0.4.12
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling anstyle v1.0.7
[INFO] [stderr]    Compiling bitflags v2.5.0
[INFO] [stderr]    Compiling wayland-commons v0.29.5
[INFO] [stderr]    Compiling anstyle-query v1.1.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling anstream v0.6.14
[INFO] [stderr]    Compiling zune-jpeg v0.4.11
[INFO] [stderr]    Compiling gif v0.13.1
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling tiff v0.9.1
[INFO] [stderr]    Compiling av1-grain v0.2.3
[INFO] [stderr]    Compiling png v0.17.13
[INFO] [stderr]    Compiling exr v1.72.0
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling clap_lex v0.7.1
[INFO] [stderr]    Compiling fastrand v2.1.0
[INFO] [stderr]    Compiling xcursor v0.3.5
[INFO] [stderr]    Compiling tempfile v3.10.1
[INFO] [stderr]    Compiling procfs v0.9.1
[INFO] [stderr]    Compiling clap_builder v4.5.7
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling noisy_float v0.2.0
[INFO] [stderr]    Compiling raw-window-handle v0.6.2
[INFO] [stderr]    Compiling auto_ops v0.3.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling minifb v0.27.0
[INFO] [stderr]    Compiling wayland-cursor v0.29.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.61
[INFO] [stderr]    Compiling profiling-procmacros v1.0.15
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling clap_derive v4.5.5
[INFO] [stderr]    Compiling profiling v1.0.15
[INFO] [stderr]    Compiling image-webp v0.1.2
[INFO] [stderr]    Compiling simple-process-stats v1.0.0 (https://github.com/robotty/simple-process-stats#7dfa6c02)
[INFO] [stderr]    Compiling clap v4.5.7
[INFO] [stderr]    Compiling ravif v0.11.7
[INFO] [stderr]    Compiling image v0.25.1
[INFO] [stderr]    Compiling raytracer_lib v0.1.0 (/opt/rustwide/workdir/raytracer_lib)
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/bvh.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit>;
[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] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>>;
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &dyn Hittable {
[INFO] [stdout]    |                     ^^          -------------
[INFO] [stdout]    |                     |           ||
[INFO] [stdout]    |                     |           |the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     |           the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &'a dyn Hittable<'a> {
[INFO] [stdout]    |                                  ++             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable_list.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/materials/material.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &dyn Material {
[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] 43 |     pub fn get_ref(&'a self) -> &'a dyn Material {
[INFO] [stdout]    |                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/shapes/boxcomp.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> raytracer_lib/src/shapes/quad.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]     |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> raytracer_lib/src/shapes/sphere.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]     |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/textures/texture.rs:38:21
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn get_ref(&'a self) -> &dyn Texture {
[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] 38 |     pub fn get_ref(&'a self) -> &'a dyn Texture {
[INFO] [stdout]    |                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/constant_medium.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/invisible_for.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/rotate_y.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/translate.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling binlib v0.1.0 (/opt/rustwide/workdir/binlib)
[INFO] [stderr]    Compiling part2-5 v0.1.0 (/opt/rustwide/workdir/part2/part2-5)
[INFO] [stderr]    Compiling part1-5 v0.1.0 (/opt/rustwide/workdir/part1/part1-5)
[INFO] [stderr]    Compiling part1-2 v0.1.0 (/opt/rustwide/workdir/part1/part1-2)
[INFO] [stderr]    Compiling part2-13 v0.1.0 (/opt/rustwide/workdir/part2/part2-13)
[INFO] [stderr]    Compiling exp2 v0.1.0 (/opt/rustwide/workdir/exp/exp2)
[INFO] [stderr]    Compiling part2-6 v0.1.0 (/opt/rustwide/workdir/part2/part2-6)
[INFO] [stderr]    Compiling exp8 v0.1.0 (/opt/rustwide/workdir/exp/exp8)
[INFO] [stderr]    Compiling part1-3 v0.1.0 (/opt/rustwide/workdir/part1/part1-3)
[INFO] [stderr]    Compiling part1-8 v0.1.0 (/opt/rustwide/workdir/part1/part1-8)
[INFO] [stderr]    Compiling part2-11 v0.1.0 (/opt/rustwide/workdir/part2/part2-11)
[INFO] [stderr]    Compiling exp9 v0.1.0 (/opt/rustwide/workdir/exp/exp9)
[INFO] [stderr]    Compiling part2-2 v0.1.0 (/opt/rustwide/workdir/part2/part2-2)
[INFO] [stderr]    Compiling exp4 v0.1.0 (/opt/rustwide/workdir/exp/exp4)
[INFO] [stderr]    Compiling exp6 v0.1.0 (/opt/rustwide/workdir/exp/exp6)
[INFO] [stderr]    Compiling part1-9 v0.1.0 (/opt/rustwide/workdir/part1/part1-9)
[INFO] [stderr]    Compiling exp1 v0.1.0 (/opt/rustwide/workdir/exp/exp1)
[INFO] [stderr]    Compiling exp5 v0.1.0 (/opt/rustwide/workdir/exp/exp5)
[INFO] [stderr]    Compiling part1-4 v0.1.0 (/opt/rustwide/workdir/part1/part1-4)
[INFO] [stderr]    Compiling part1-7 v0.1.0 (/opt/rustwide/workdir/part1/part1-7)
[INFO] [stderr]    Compiling part2-12 v0.1.0 (/opt/rustwide/workdir/part2/part2-12)
[INFO] [stderr]    Compiling part2-3 v0.1.0 (/opt/rustwide/workdir/part2/part2-3)
[INFO] [stderr]    Compiling exp3 v0.1.0 (/opt/rustwide/workdir/exp/exp3)
[INFO] [stderr]    Compiling part2-1 v0.1.0 (/opt/rustwide/workdir/part2/part2-1)
[INFO] [stderr]    Compiling part2-7 v0.1.0 (/opt/rustwide/workdir/part2/part2-7)
[INFO] [stderr]    Compiling part1-10 v0.1.0 (/opt/rustwide/workdir/part1/part1-10)
[INFO] [stderr]    Compiling part1-6 v0.1.0 (/opt/rustwide/workdir/part1/part1-6)
[INFO] [stderr]    Compiling part2-9 v0.1.0 (/opt/rustwide/workdir/part2/part2-9)
[INFO] [stderr]    Compiling part2-8 v0.1.0 (/opt/rustwide/workdir/part2/part2-8)
[INFO] [stderr]    Compiling final2 v0.1.0 (/opt/rustwide/workdir/final2)
[INFO] [stderr]    Compiling final1 v0.1.0 (/opt/rustwide/workdir/final1)
[INFO] [stderr]    Compiling part2-4 v0.1.0 (/opt/rustwide/workdir/part2/part2-4)
[INFO] [stderr]    Compiling part2-14 v0.1.0 (/opt/rustwide/workdir/part2/part2-14)
[INFO] [stderr]    Compiling part2-10 v0.1.0 (/opt/rustwide/workdir/part2/part2-10)
[INFO] [stderr]    Compiling part1-1 v0.1.0 (/opt/rustwide/workdir/part1/part1-1)
[INFO] [stderr]    Compiling exp7 v0.1.0 (/opt/rustwide/workdir/exp/exp7)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6m 06s
[INFO] running `Command { std: "docker" "inspect" "cd1c24b8a78b63377f594239a17dbdc5979aa5cfd2975cecc47c113b64e7a70a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd1c24b8a78b63377f594239a17dbdc5979aa5cfd2975cecc47c113b64e7a70a", kill_on_drop: false }`
[INFO] [stdout] cd1c24b8a78b63377f594239a17dbdc5979aa5cfd2975cecc47c113b64e7a70a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] cd80884161d0c40987af080af746a03e986473a9dc8b16ed755cc9b94e775238
[INFO] running `Command { std: "docker" "start" "-a" "cd80884161d0c40987af080af746a03e986473a9dc8b16ed755cc9b94e775238", kill_on_drop: false }`
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/bvh.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit>;
[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] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>>;
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &dyn Hittable {
[INFO] [stdout]    |                     ^^          -------------
[INFO] [stdout]    |                     |           ||
[INFO] [stdout]    |                     |           |the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     |           the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &'a dyn Hittable<'a> {
[INFO] [stdout]    |                                  ++             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable_list.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/materials/material.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &dyn Material {
[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] 43 |     pub fn get_ref(&'a self) -> &'a dyn Material {
[INFO] [stdout]    |                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/shapes/boxcomp.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> raytracer_lib/src/shapes/quad.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]     |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> raytracer_lib/src/shapes/sphere.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]     |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/textures/texture.rs:38:21
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn get_ref(&'a self) -> &dyn Texture {
[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] 38 |     pub fn get_ref(&'a self) -> &'a dyn Texture {
[INFO] [stdout]    |                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/constant_medium.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/invisible_for.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/rotate_y.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/translate.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling raytracer_lib v0.1.0 (/opt/rustwide/workdir/raytracer_lib)
[INFO] [stderr]    Compiling binlib v0.1.0 (/opt/rustwide/workdir/binlib)
[INFO] [stderr]    Compiling part2-8 v0.1.0 (/opt/rustwide/workdir/part2/part2-8)
[INFO] [stderr]    Compiling exp8 v0.1.0 (/opt/rustwide/workdir/exp/exp8)
[INFO] [stderr]    Compiling part2-12 v0.1.0 (/opt/rustwide/workdir/part2/part2-12)
[INFO] [stderr]    Compiling part2-14 v0.1.0 (/opt/rustwide/workdir/part2/part2-14)
[INFO] [stderr]    Compiling part2-13 v0.1.0 (/opt/rustwide/workdir/part2/part2-13)
[INFO] [stderr]    Compiling part1-10 v0.1.0 (/opt/rustwide/workdir/part1/part1-10)
[INFO] [stderr]    Compiling part1-1 v0.1.0 (/opt/rustwide/workdir/part1/part1-1)
[INFO] [stderr]    Compiling part2-1 v0.1.0 (/opt/rustwide/workdir/part2/part2-1)
[INFO] [stderr]    Compiling part1-7 v0.1.0 (/opt/rustwide/workdir/part1/part1-7)
[INFO] [stderr]    Compiling part2-7 v0.1.0 (/opt/rustwide/workdir/part2/part2-7)
[INFO] [stderr]    Compiling part1-2 v0.1.0 (/opt/rustwide/workdir/part1/part1-2)
[INFO] [stderr]    Compiling exp6 v0.1.0 (/opt/rustwide/workdir/exp/exp6)
[INFO] [stderr]    Compiling exp4 v0.1.0 (/opt/rustwide/workdir/exp/exp4)
[INFO] [stderr]    Compiling part1-9 v0.1.0 (/opt/rustwide/workdir/part1/part1-9)
[INFO] [stderr]    Compiling exp7 v0.1.0 (/opt/rustwide/workdir/exp/exp7)
[INFO] [stderr]    Compiling exp2 v0.1.0 (/opt/rustwide/workdir/exp/exp2)
[INFO] [stderr]    Compiling final1 v0.1.0 (/opt/rustwide/workdir/final1)
[INFO] [stderr]    Compiling part2-3 v0.1.0 (/opt/rustwide/workdir/part2/part2-3)
[INFO] [stderr]    Compiling exp1 v0.1.0 (/opt/rustwide/workdir/exp/exp1)
[INFO] [stderr]    Compiling part1-6 v0.1.0 (/opt/rustwide/workdir/part1/part1-6)
[INFO] [stderr]    Compiling exp3 v0.1.0 (/opt/rustwide/workdir/exp/exp3)
[INFO] [stderr]    Compiling part2-11 v0.1.0 (/opt/rustwide/workdir/part2/part2-11)
[INFO] [stderr]    Compiling part1-3 v0.1.0 (/opt/rustwide/workdir/part1/part1-3)
[INFO] [stderr]    Compiling part2-5 v0.1.0 (/opt/rustwide/workdir/part2/part2-5)
[INFO] [stderr]    Compiling exp5 v0.1.0 (/opt/rustwide/workdir/exp/exp5)
[INFO] [stderr]    Compiling part2-4 v0.1.0 (/opt/rustwide/workdir/part2/part2-4)
[INFO] [stderr]    Compiling part1-5 v0.1.0 (/opt/rustwide/workdir/part1/part1-5)
[INFO] [stderr]    Compiling part2-2 v0.1.0 (/opt/rustwide/workdir/part2/part2-2)
[INFO] [stderr]    Compiling part1-4 v0.1.0 (/opt/rustwide/workdir/part1/part1-4)
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/bvh.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit>;
[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] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>>;
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &dyn Hittable {
[INFO] [stdout]    |                     ^^          -------------
[INFO] [stdout]    |                     |           ||
[INFO] [stdout]    |                     |           |the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     |           the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &'a dyn Hittable<'a> {
[INFO] [stdout]    |                                  ++             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/hits/hittable_list.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/materials/material.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn get_ref(&'a self) -> &dyn Material {
[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] 43 |     pub fn get_ref(&'a self) -> &'a dyn Material {
[INFO] [stdout]    |                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/shapes/boxcomp.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> raytracer_lib/src/shapes/quad.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]     |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> raytracer_lib/src/shapes/sphere.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]     |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/textures/texture.rs:38:21
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn get_ref(&'a self) -> &dyn Texture {
[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] 38 |     pub fn get_ref(&'a self) -> &'a dyn Texture {
[INFO] [stdout]    |                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/constant_medium.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/invisible_for.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/rotate_y.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> raytracer_lib/src/transforms/translate.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stdout]    |                                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling part2-9 v0.1.0 (/opt/rustwide/workdir/part2/part2-9)
[INFO] [stderr]    Compiling exp9 v0.1.0 (/opt/rustwide/workdir/exp/exp9)
[INFO] [stderr]    Compiling final2 v0.1.0 (/opt/rustwide/workdir/final2)
[INFO] [stderr]    Compiling part1-8 v0.1.0 (/opt/rustwide/workdir/part1/part1-8)
[INFO] [stderr]    Compiling part2-10 v0.1.0 (/opt/rustwide/workdir/part2/part2-10)
[INFO] [stderr]    Compiling part2-6 v0.1.0 (/opt/rustwide/workdir/part2/part2-6)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.63s
[INFO] running `Command { std: "docker" "inspect" "cd80884161d0c40987af080af746a03e986473a9dc8b16ed755cc9b94e775238", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd80884161d0c40987af080af746a03e986473a9dc8b16ed755cc9b94e775238", kill_on_drop: false }`
[INFO] [stdout] cd80884161d0c40987af080af746a03e986473a9dc8b16ed755cc9b94e775238
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] a976e87630201ebef48441b5d828329a240d8b6aa60d1cbc1492c223800b9f18
[INFO] running `Command { std: "docker" "start" "-a" "a976e87630201ebef48441b5d828329a240d8b6aa60d1cbc1492c223800b9f18", kill_on_drop: false }`
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/hits/bvh.rs:93:12
[INFO] [stderr]    |
[INFO] [stderr] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]    |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/hits/hittable.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit>;
[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] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>>;
[INFO] [stderr]    |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/hits/hittable.rs:43:21
[INFO] [stderr]    |
[INFO] [stderr] 43 |     pub fn get_ref(&'a self) -> &dyn Hittable {
[INFO] [stderr]    |                     ^^          -------------
[INFO] [stderr]    |                     |           ||
[INFO] [stderr]    |                     |           |the lifetimes get resolved as `'a`
[INFO] [stderr]    |                     |           the lifetimes get resolved as `'a`
[INFO] [stderr]    |                     this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 43 |     pub fn get_ref(&'a self) -> &'a dyn Hittable<'a> {
[INFO] [stderr]    |                                  ++             ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/hits/hittable_list.rs:65:12
[INFO] [stderr]    |
[INFO] [stderr] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]    |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/materials/material.rs:43:21
[INFO] [stderr]    |
[INFO] [stderr] 43 |     pub fn get_ref(&'a self) -> &dyn Material {
[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] 43 |     pub fn get_ref(&'a self) -> &'a dyn Material {
[INFO] [stderr]    |                                  ++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/shapes/boxcomp.rs:78:12
[INFO] [stderr]    |
[INFO] [stderr] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]    |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> raytracer_lib/src/shapes/quad.rs:124:12
[INFO] [stderr]     |
[INFO] [stderr] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]     |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> raytracer_lib/src/shapes/sphere.rs:110:12
[INFO] [stderr]     |
[INFO] [stderr] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]     |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/textures/texture.rs:38:21
[INFO] [stderr]    |
[INFO] [stderr] 38 |     pub fn get_ref(&'a self) -> &dyn Texture {
[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] 38 |     pub fn get_ref(&'a self) -> &'a dyn Texture {
[INFO] [stderr]    |                                  ++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/transforms/constant_medium.rs:72:12
[INFO] [stderr]    |
[INFO] [stderr] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]    |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/transforms/invisible_for.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]    |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/transforms/rotate_y.rs:77:12
[INFO] [stderr]    |
[INFO] [stderr] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]    |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> raytracer_lib/src/transforms/translate.rs:40:12
[INFO] [stderr]    |
[INFO] [stderr] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[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] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit<'_>> {
[INFO] [stderr]    |                                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `raytracer_lib` (lib) generated 13 warnings
[INFO] [stderr] warning: `raytracer_lib` (lib test) generated 13 warnings (13 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.35s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/binlib-8a3ca5bbd11556fa)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp1-c489ac161a487c38)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp2-1555626213d5b64e)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp3-d72a5446057d1d49)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp4-116d782c71ab1ce9)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp5-161a93fd1ef9b7f3)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp6-d9de52be8066895f)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp7-8599891b62636f80)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp8-16405651641e882e)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/exp9-07c7275de6581af0)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/final1-7fa456a21b60f10a)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/final2-94ebdd79ac0aa199)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_1-bc3c0c39e91a3f50)
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_10-7c57bafd041a2c5b)
[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] [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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_2-37e7d380b6239028)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_3-8eae2fb40061f62e)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_4-39173541c3ab0452)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_5-7e1b5b9a1aa8484a)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_6-944cd4dfa57dfdc8)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_7-17a073367544db57)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_8-c3c31a19fc294b25)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part1_9-f1c2617573325093)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_1-e49eb4312f530653)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_10-76cd0363852cf4c9)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_11-328e56ae5ca7651c)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_12-69171b0b0b83b3bd)
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_13-f4930a769d21b770)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_14-f23c2914bf8a3df7)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_2-d6aa1fd87b654705)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_3-741e373b7bcd9e69)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_4-10ce0bcd8d399d8b)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_5-5236c880319de96b)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_6-2f3eeb2c13eef400)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_7-0fcbc2611e1a0716)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_8-d34842d971a43b6d)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/part2_9-9099555e4d47937f)
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[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] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/raytracer_lib-8ff29231f238ce73)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test triple::vec::tests::test_cross ... ok
[INFO] [stdout] test triple::vec::tests::test_sub ... ok
[INFO] [stdout] test triple::vec::tests::test_dot ... ok
[INFO] [stdout] test triple::vec::tests::test_mul ... ok
[INFO] [stdout] test triple::vec::tests::test_length ... ok
[INFO] [stdout] test triple::vec::tests::test_add ... ok
[INFO] [stdout] test triple::vec::tests::test_length_squared ... ok
[INFO] [stdout] test triple::vec::tests::test_div ... ok
[INFO] [stdout] test triple::vec::tests::test_unit_vector ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests binlib
[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] [stderr]    Doc-tests raytracer_lib
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/camera.rs:30:19
[INFO] [stderr]    |
[INFO] [stderr] 30 |     aspect_ratio: Flt,
[INFO] [stderr]    |                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/camera.rs:44:11
[INFO] [stderr]    |
[INFO] [stderr] 44 |     vfov: Flt,
[INFO] [stderr]    |           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/camera.rs:54:26
[INFO] [stderr]    |
[INFO] [stderr] 54 |     pixel_samples_scale: Flt,
[INFO] [stderr]    |                          ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/camera.rs:58:20
[INFO] [stderr]    |
[INFO] [stderr] 58 |     defocus_angle: Flt,
[INFO] [stderr]    |                    ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/camera.rs:60:17
[INFO] [stderr]    |
[INFO] [stderr] 60 |     focus_dist: Flt,
[INFO] [stderr]    |                 ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/camera.rs:66:16
[INFO] [stderr]    |
[INFO] [stderr] 66 |     time_span: Flt,
[INFO] [stderr]    |                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/camera.rs:73:23
[INFO] [stderr]    |
[INFO] [stderr] 73 |         aspect_ratio: FltPrim,
[INFO] [stderr]    |                       ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/camera.rs:147:38
[INFO] [stderr]     |
[INFO] [stderr] 147 |     pub fn set_vfov(&mut self, vfov: FltPrim) {
[INFO] [stderr]     |                                      ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/camera.rs:154:48
[INFO] [stderr]     |
[INFO] [stderr] 154 |     pub fn set_focus(&mut self, defocus_angle: FltPrim, focus_dist: FltPrim) {
[INFO] [stderr]     |                                                ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/camera.rs:154:69
[INFO] [stderr]     |
[INFO] [stderr] 154 |     pub fn set_focus(&mut self, defocus_angle: FltPrim, focus_dist: FltPrim) {
[INFO] [stderr]     |                                                                     ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/camera.rs:162:48
[INFO] [stderr]     |
[INFO] [stderr] 162 |     pub fn set_time_span(&mut self, time_span: FltPrim) {
[INFO] [stderr]     |                                                ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/camera.rs:196:27
[INFO] [stderr]     |
[INFO] [stderr] 196 |     pub fn vfov(&self) -> FltPrim {
[INFO] [stderr]     |                           ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/camera.rs:201:29
[INFO] [stderr]     |
[INFO] [stderr] 201 |     pub fn focus(&self) -> (FltPrim, FltPrim) {
[INFO] [stderr]     |                             ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/camera.rs:201:38
[INFO] [stderr]     |
[INFO] [stderr] 201 |     pub fn focus(&self) -> (FltPrim, FltPrim) {
[INFO] [stderr]     |                                      ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/camera.rs:206:32
[INFO] [stderr]     |
[INFO] [stderr] 206 |     pub fn time_span(&self) -> FltPrim {
[INFO] [stderr]     |                                ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/gamma.rs:10:11
[INFO] [stderr]    |
[INFO] [stderr] 10 |     Power(Flt),
[INFO] [stderr]    |           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/gamma.rs:15:24
[INFO] [stderr]    |
[INFO] [stderr] 15 |     pub fn new(factor: FltPrim) -> Self {
[INFO] [stderr]    |                        ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/aabb.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pub ranges: [Range<Flt>; 3],
[INFO] [stderr]    |                        ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/aabb.rs:22:37
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn new_from_ranges(x: Range<Flt>, y: Range<Flt>, z: Range<Flt>) -> Self {
[INFO] [stderr]    |                                     ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/aabb.rs:22:52
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn new_from_ranges(x: Range<Flt>, y: Range<Flt>, z: Range<Flt>) -> Self {
[INFO] [stderr]    |                                                    ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/aabb.rs:22:67
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn new_from_ranges(x: Range<Flt>, y: Range<Flt>, z: Range<Flt>) -> Self {
[INFO] [stderr]    |                                                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/aabb.rs:73:50
[INFO] [stderr]    |
[INFO] [stderr] 73 |     pub fn hit(&self, ray: &Ray, t_range: &Range<Flt>) -> bool {
[INFO] [stderr]    |                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]    --> raytracer_lib/src/hits/aabb.rs:116:18
[INFO] [stderr]     |
[INFO] [stderr] 116 |     const DELTA: FltPrim = 0.0001;
[INFO] [stderr]     |                  ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::FltPrim;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/bvh.rs:93:66
[INFO] [stderr]    |
[INFO] [stderr] 93 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]    |                                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hit.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 18 |     pub t: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hit.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub u: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hit.rs:22:12
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub v: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hit.rs:33:12
[INFO] [stderr]    |
[INFO] [stderr] 33 |         t: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hit.rs:34:12
[INFO] [stderr]    |
[INFO] [stderr] 34 |         u: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hit.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 35 |         v: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hittable.rs:15:18
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub const T_MIN: FltPrim = 0.00001;
[INFO] [stderr]    |                  ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hittable.rs:21:66
[INFO] [stderr]    |
[INFO] [stderr] 21 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit>;
[INFO] [stderr]    |                                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/hits/hittable_list.rs:65:66
[INFO] [stderr]    |
[INFO] [stderr] 65 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]    |                                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dielectric.rs:12:23
[INFO] [stderr]    |
[INFO] [stderr] 12 |     refraction_index: Flt,
[INFO] [stderr]    |                       ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dielectric.rs:13:27
[INFO] [stderr]    |
[INFO] [stderr] 13 |     inv_refraction_index: Flt,
[INFO] [stderr]    |                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dielectric.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 |     r0_sq: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dielectric.rs:15:16
[INFO] [stderr]    |
[INFO] [stderr] 15 |     inv_r0_sq: Flt,
[INFO] [stderr]    |                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dielectric.rs:20:34
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub fn new(refraction_index: FltPrim) -> Self {
[INFO] [stderr]    |                                  ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dielectric.rs:37:35
[INFO] [stderr]    |
[INFO] [stderr] 37 |     fn reflectance(&self, cosine: Flt, r0_sq: Flt) -> Flt {
[INFO] [stderr]    |                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dielectric.rs:37:47
[INFO] [stderr]    |
[INFO] [stderr] 37 |     fn reflectance(&self, cosine: Flt, r0_sq: Flt) -> Flt {
[INFO] [stderr]    |                                               ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dielectric.rs:37:55
[INFO] [stderr]    |
[INFO] [stderr] 37 |     fn reflectance(&self, cosine: Flt, r0_sq: Flt) -> Flt {
[INFO] [stderr]    |                                                       ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/diffuse_light.rs:41:43
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/diffuse_light.rs:41:51
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dir_light.rs:41:43
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/dir_light.rs:41:51
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/isotropic.rs:42:43
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/isotropic.rs:42:51
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/lambertian.rs:42:43
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/lambertian.rs:42:51
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/material.rs:19:45
[INFO] [stderr]    |
[INFO] [stderr] 19 |     fn hit(&self, _rng: &mut ThreadRng, _u: Flt, _v: Flt, _p: &Point3) -> bool {
[INFO] [stderr]    |                                             ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/material.rs:19:54
[INFO] [stderr]    |
[INFO] [stderr] 19 |     fn hit(&self, _rng: &mut ThreadRng, _u: Flt, _v: Flt, _p: &Point3) -> bool {
[INFO] [stderr]    |                                                      ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/metal.rs:18:11
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fuzz: Flt,
[INFO] [stderr]    |           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/metal.rs:23:38
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub fn new(albedo: Colour, fuzz: FltPrim) -> Self {
[INFO] [stderr]    |                                      ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/polar_light.rs:21:16
[INFO] [stderr]    |
[INFO] [stderr] 21 |     cos_angle: Flt,
[INFO] [stderr]    |                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/polar_light.rs:27:35
[INFO] [stderr]    |
[INFO] [stderr] 27 |     pub fn new_with_colour(angle: FltPrim, albedo: Colour) -> Self {
[INFO] [stderr]    |                                   ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/polar_light.rs:32:36
[INFO] [stderr]    |
[INFO] [stderr] 32 |     pub fn new_with_texture(angle: FltPrim, texture: &'a dyn Texture) -> Self {
[INFO] [stderr]    |                                    ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/polar_light.rs:36:31
[INFO] [stderr]    |
[INFO] [stderr] 36 |     fn new_with_texref(angle: FltPrim, texture: TexRef<'a>) -> Self {
[INFO] [stderr]    |                               ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/polar_light.rs:45:43
[INFO] [stderr]    |
[INFO] [stderr] 45 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/materials/polar_light.rs:45:51
[INFO] [stderr]    |
[INFO] [stderr] 45 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, p: &Point3) -> bool {
[INFO] [stderr]    |                                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/perlin.rs:28:40
[INFO] [stderr]    |
[INFO] [stderr] 28 |     pub fn noise(&self, p: &Point3) -> Flt {
[INFO] [stderr]    |                                        ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/perlin.rs:58:59
[INFO] [stderr]    |
[INFO] [stderr] 58 |     pub fn turbulence(&self, p: &Point3, depth: usize) -> Flt {
[INFO] [stderr]    |                                                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/perlin.rs:86:49
[INFO] [stderr]    |
[INFO] [stderr] 86 |     fn perlin_interp(c: Vec<Vec<Vec<Vec3>>>, u: Flt, v: Flt, w: Flt) -> Flt {
[INFO] [stderr]    |                                                 ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/perlin.rs:86:57
[INFO] [stderr]    |
[INFO] [stderr] 86 |     fn perlin_interp(c: Vec<Vec<Vec<Vec3>>>, u: Flt, v: Flt, w: Flt) -> Flt {
[INFO] [stderr]    |                                                         ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/perlin.rs:86:65
[INFO] [stderr]    |
[INFO] [stderr] 86 |     fn perlin_interp(c: Vec<Vec<Vec<Vec3>>>, u: Flt, v: Flt, w: Flt) -> Flt {
[INFO] [stderr]    |                                                                 ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/perlin.rs:86:73
[INFO] [stderr]    |
[INFO] [stderr] 86 |     fn perlin_interp(c: Vec<Vec<Vec<Vec3>>>, u: Flt, v: Flt, w: Flt) -> Flt {
[INFO] [stderr]    |                                                                         ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/ray.rs:20:11
[INFO] [stderr]    |
[INFO] [stderr] 20 |     time: Flt,
[INFO] [stderr]    |           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/ray.rs:27:47
[INFO] [stderr]    |
[INFO] [stderr] 27 |     pub fn new(orig: Point3, dir: Vec3, time: Flt) -> Self {
[INFO] [stderr]    |                                               ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/ray.rs:55:27
[INFO] [stderr]    |
[INFO] [stderr] 55 |     pub fn time(&self) -> Flt {
[INFO] [stderr]    |                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/ray.rs:60:25
[INFO] [stderr]    |
[INFO] [stderr] 60 |     pub fn at(&self, t: Flt) -> Point3 {
[INFO] [stderr]    |                         ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/boxcomp.rs:78:66
[INFO] [stderr]    |
[INFO] [stderr] 78 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]    |                                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/shapes/quad.rs:104:38
[INFO] [stderr]     |
[INFO] [stderr] 104 |     fn position_at_time(&self, time: Flt) -> (Point3, Vec3, Vec3, Vec3) {
[INFO] [stderr]     |                                      ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/shapes/quad.rs:124:66
[INFO] [stderr]     |
[INFO] [stderr] 124 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]     |                                                                  ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/sphere.rs:25:13
[INFO] [stderr]    |
[INFO] [stderr] 25 |     radius: Flt,
[INFO] [stderr]    |             ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/sphere.rs:34:40
[INFO] [stderr]    |
[INFO] [stderr] 34 |     pub fn new(center: Point3, radius: FltPrim, material: &'a dyn Material) -> Self {
[INFO] [stderr]    |                                        ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/sphere.rs:39:52
[INFO] [stderr]    |
[INFO] [stderr] 39 |     pub fn new_with_matref(center: Point3, radius: FltPrim, matref: MatRef<'a>) -> Self {
[INFO] [stderr]    |                                                    ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/sphere.rs:47:17
[INFO] [stderr]    |
[INFO] [stderr] 47 |         radius: FltPrim,
[INFO] [stderr]    |                 ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/sphere.rs:57:17
[INFO] [stderr]    |
[INFO] [stderr] 57 |         radius: FltPrim,
[INFO] [stderr]    |                 ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/sphere.rs:83:38
[INFO] [stderr]    |
[INFO] [stderr] 83 |     fn position_at_time(&self, time: Flt) -> Point3 {
[INFO] [stderr]    |                                      ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/sphere.rs:91:29
[INFO] [stderr]    |
[INFO] [stderr] 91 |     fn get_uv(p: &Vec3) -> (Flt, Flt) {
[INFO] [stderr]    |                             ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/shapes/sphere.rs:91:34
[INFO] [stderr]    |
[INFO] [stderr] 91 |     fn get_uv(p: &Vec3) -> (Flt, Flt) {
[INFO] [stderr]    |                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/shapes/sphere.rs:110:66
[INFO] [stderr]     |
[INFO] [stderr] 110 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]     |                                                                  ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/checker.rs:16:16
[INFO] [stderr]    |
[INFO] [stderr] 16 |     inv_scale: Flt,
[INFO] [stderr]    |                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/checker.rs:23:37
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub fn new_with_textures(scale: FltPrim, even: &'a dyn Texture, odd: &'a dyn Texture) -> Self {
[INFO] [stderr]    |                                     ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/checker.rs:28:36
[INFO] [stderr]    |
[INFO] [stderr] 28 |     pub fn new_with_colours(scale: FltPrim, even: Colour, odd: Colour) -> Self {
[INFO] [stderr]    |                                    ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/checker.rs:36:35
[INFO] [stderr]    |
[INFO] [stderr] 36 |     pub fn new_with_texref(scale: FltPrim, even: TexRef<'a>, odd: TexRef<'a>) -> Self {
[INFO] [stderr]    |                                   ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/checker.rs:46:24
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn value(&self, u: Flt, v: Flt, p: &Point3) -> Colour {
[INFO] [stderr]    |                        ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/checker.rs:46:32
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn value(&self, u: Flt, v: Flt, p: &Point3) -> Colour {
[INFO] [stderr]    |                                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:67:29
[INFO] [stderr]    |
[INFO] [stderr] 67 |     fn map_coords(&self, u: Flt, v: Flt) -> usize {
[INFO] [stderr]    |                             ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:67:37
[INFO] [stderr]    |
[INFO] [stderr] 67 |     fn map_coords(&self, u: Flt, v: Flt) -> usize {
[INFO] [stderr]    |                                     ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:78:26
[INFO] [stderr]    |
[INFO] [stderr] 78 |     fn get_rgb(&self, u: Flt, v: Flt) -> (u8, u8, u8) {
[INFO] [stderr]    |                          ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:78:34
[INFO] [stderr]    |
[INFO] [stderr] 78 |     fn get_rgb(&self, u: Flt, v: Flt) -> (u8, u8, u8) {
[INFO] [stderr]    |                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:84:28
[INFO] [stderr]    |
[INFO] [stderr] 84 |     fn get_alpha(&self, u: Flt, v: Flt) -> u8 {
[INFO] [stderr]    |                            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:84:36
[INFO] [stderr]    |
[INFO] [stderr] 84 |     fn get_alpha(&self, u: Flt, v: Flt) -> u8 {
[INFO] [stderr]    |                                    ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:91:17
[INFO] [stderr]    |
[INFO] [stderr] 91 | const U8_SCALE: FltPrim = 1.0 / 255.0;
[INFO] [stderr]    |                 ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:94:43
[INFO] [stderr]    |
[INFO] [stderr] 94 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, _p: &Point3) -> bool {
[INFO] [stderr]    |                                           ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/image.rs:94:51
[INFO] [stderr]    |
[INFO] [stderr] 94 |     fn hit(&self, rng: &mut ThreadRng, u: Flt, v: Flt, _p: &Point3) -> bool {
[INFO] [stderr]    |                                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/textures/image.rs:114:24
[INFO] [stderr]     |
[INFO] [stderr] 114 |     fn value(&self, u: Flt, v: Flt, _p: &Point3) -> Colour {
[INFO] [stderr]     |                        ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/textures/image.rs:114:32
[INFO] [stderr]     |
[INFO] [stderr] 114 |     fn value(&self, u: Flt, v: Flt, _p: &Point3) -> Colour {
[INFO] [stderr]     |                                ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/marble.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 |     scale: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/marble.rs:22:23
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn new(scale: FltPrim, depth: usize, axis: usize) -> Self {
[INFO] [stderr]    |                       ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/marble.rs:33:25
[INFO] [stderr]    |
[INFO] [stderr] 33 |     fn value(&self, _u: Flt, _v: Flt, p: &Point3) -> Colour {
[INFO] [stderr]    |                         ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/marble.rs:33:34
[INFO] [stderr]    |
[INFO] [stderr] 33 |     fn value(&self, _u: Flt, _v: Flt, p: &Point3) -> Colour {
[INFO] [stderr]    |                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/perlin.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 |     scale: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/perlin.rs:20:23
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub fn new(scale: FltPrim) -> Self {
[INFO] [stderr]    |                       ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/perlin.rs:29:25
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn value(&self, _u: Flt, _v: Flt, p: &Point3) -> Colour {
[INFO] [stderr]    |                         ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/perlin.rs:29:34
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn value(&self, _u: Flt, _v: Flt, p: &Point3) -> Colour {
[INFO] [stderr]    |                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/solid.rs:24:25
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn value(&self, _u: Flt, _v: Flt, _p: &Point3) -> Colour {
[INFO] [stderr]    |                         ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/solid.rs:24:34
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn value(&self, _u: Flt, _v: Flt, _p: &Point3) -> Colour {
[INFO] [stderr]    |                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/texture.rs:14:45
[INFO] [stderr]    |
[INFO] [stderr] 14 |     fn hit(&self, _rng: &mut ThreadRng, _u: Flt, _v: Flt, _p: &Point3) -> bool {
[INFO] [stderr]    |                                             ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/texture.rs:14:54
[INFO] [stderr]    |
[INFO] [stderr] 14 |     fn hit(&self, _rng: &mut ThreadRng, _u: Flt, _v: Flt, _p: &Point3) -> bool {
[INFO] [stderr]    |                                                      ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/texture.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |     fn value(&self, u: Flt, v: Flt, p: &Point3) -> Colour;
[INFO] [stderr]    |                        ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/texture.rs:19:32
[INFO] [stderr]    |
[INFO] [stderr] 19 |     fn value(&self, u: Flt, v: Flt, p: &Point3) -> Colour;
[INFO] [stderr]    |                                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/turbulence.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 |     scale: Flt,
[INFO] [stderr]    |            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/turbulence.rs:21:23
[INFO] [stderr]    |
[INFO] [stderr] 21 |     pub fn new(scale: FltPrim, depth: usize) -> Self {
[INFO] [stderr]    |                       ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/turbulence.rs:31:25
[INFO] [stderr]    |
[INFO] [stderr] 31 |     fn value(&self, _u: Flt, _v: Flt, p: &Point3) -> Colour {
[INFO] [stderr]    |                         ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/textures/turbulence.rs:31:34
[INFO] [stderr]    |
[INFO] [stderr] 31 |     fn value(&self, _u: Flt, _v: Flt, p: &Point3) -> Colour {
[INFO] [stderr]    |                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/constant_medium.rs:26:22
[INFO] [stderr]    |
[INFO] [stderr] 26 |     neg_inv_density: Flt,
[INFO] [stderr]    |                      ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/constant_medium.rs:34:18
[INFO] [stderr]    |
[INFO] [stderr] 34 |         density: FltPrim,
[INFO] [stderr]    |                  ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/constant_medium.rs:47:18
[INFO] [stderr]    |
[INFO] [stderr] 47 |         density: FltPrim,
[INFO] [stderr]    |                  ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/constant_medium.rs:60:18
[INFO] [stderr]    |
[INFO] [stderr] 60 |         density: FltPrim,
[INFO] [stderr]    |                  ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/constant_medium.rs:72:66
[INFO] [stderr]    |
[INFO] [stderr] 72 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]    |                                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/invisible_for.rs:35:66
[INFO] [stderr]    |
[INFO] [stderr] 35 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]    |                                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/rotate_y.rs:21:16
[INFO] [stderr]    |
[INFO] [stderr] 21 |     cos_theta: Flt,
[INFO] [stderr]    |                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/rotate_y.rs:22:16
[INFO] [stderr]    |
[INFO] [stderr] 22 |     sin_theta: Flt,
[INFO] [stderr]    |                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/rotate_y.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |     pub fn new(angle: FltPrim, object: impl Hittable<'a> + 'a) -> Self {
[INFO] [stderr]    |                       ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/rotate_y.rs:77:66
[INFO] [stderr]    |
[INFO] [stderr] 77 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]    |                                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/transforms/translate.rs:40:66
[INFO] [stderr]    |
[INFO] [stderr] 40 |     fn hit(&self, rng: &mut ThreadRng, ray: &Ray, t_range: Range<Flt>) -> Option<Hit> {
[INFO] [stderr]    |                                                                  ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/colour.rs:27:28
[INFO] [stderr]    |
[INFO] [stderr] 27 |     pub fn new_grey(level: FltPrim) -> Self {
[INFO] [stderr]    |                            ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/colour.rs:52:42
[INFO] [stderr]    |
[INFO] [stderr] 52 |     fn linear_to_gamma(linear_component: Flt, power: Flt) -> Flt {
[INFO] [stderr]    |                                          ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/colour.rs:52:54
[INFO] [stderr]    |
[INFO] [stderr] 52 |     fn linear_to_gamma(linear_component: Flt, power: Flt) -> Flt {
[INFO] [stderr]    |                                                      ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/colour.rs:52:62
[INFO] [stderr]    |
[INFO] [stderr] 52 |     fn linear_to_gamma(linear_component: Flt, power: Flt) -> Flt {
[INFO] [stderr]    |                                                              ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:129:49
[INFO] [stderr]     |
[INFO] [stderr] 129 |         impl_op_ex_commutative!(*|a: &$type, b: Flt| -> $type {
[INFO] [stderr]     |                                                 ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/colour.rs:76:1
[INFO] [stderr]     |
[INFO] [stderr] 76  | impl_op_mul_float!(Colour);
[INFO] [stderr]     | -------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_mul_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/colour.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:138:43
[INFO] [stderr]     |
[INFO] [stderr] 138 |         impl_op_ex!(*= |a: &mut $type, b: Flt| { a.e[0] *= b; a.e[1] *= b; a.e[2] *= b; });
[INFO] [stderr]     |                                           ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/colour.rs:77:1
[INFO] [stderr]     |
[INFO] [stderr] 77  | impl_op_mul_assign_float!(Colour);
[INFO] [stderr]     | --------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_mul_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/colour.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:145:38
[INFO] [stderr]     |
[INFO] [stderr] 145 |         impl_op_ex!(/ |a: &$type, b: Flt| -> $type { a * b.recip() } );
[INFO] [stderr]     |                                      ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/colour.rs:79:1
[INFO] [stderr]     |
[INFO] [stderr] 79  | impl_op_div_float!(Colour);
[INFO] [stderr]     | -------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_div_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/colour.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:152:43
[INFO] [stderr]     |
[INFO] [stderr] 152 |         impl_op_ex!(/= |a: &mut $type, b: Flt| { *a *= b.recip() });
[INFO] [stderr]     |                                           ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/colour.rs:80:1
[INFO] [stderr]     |
[INFO] [stderr] 80  | impl_op_div_assign_float!(Colour);
[INFO] [stderr]     | --------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_div_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/colour.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/ops.rs:35:51
[INFO] [stderr]    |
[INFO] [stderr] 35 |         impl_op_ex_commutative!(+ |a: &$type, b: &Flt| -> $type { $type::new_from_array([a[0] + b, a[1] + b, a[2] + b]) });
[INFO] [stderr]    |                                                   ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr]   ::: raytracer_lib/src/triple/point.rs:40:1
[INFO] [stderr]    |
[INFO] [stderr] 40 | impl_op_add_float!(Point3);
[INFO] [stderr]    | -------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `impl_op_add_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]   --> raytracer_lib/src/triple/point.rs:1:1
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/ops.rs:42:44
[INFO] [stderr]    |
[INFO] [stderr] 42 |         impl_op_ex!(+= |a: &mut $type, b: &Flt| { a.e[0] += b; a.e[1] += b; a.e[2] += b; });
[INFO] [stderr]    |                                            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr]   ::: raytracer_lib/src/triple/point.rs:41:1
[INFO] [stderr]    |
[INFO] [stderr] 41 | impl_op_add_assign_float!(Point3);
[INFO] [stderr]    | --------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `impl_op_add_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]   --> raytracer_lib/src/triple/point.rs:1:1
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/ops.rs:81:38
[INFO] [stderr]    |
[INFO] [stderr] 81 |         impl_op_ex!(-|a: &$type, b: &Flt| -> $type {
[INFO] [stderr]    |                                      ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr]   ::: raytracer_lib/src/triple/point.rs:45:1
[INFO] [stderr]    |
[INFO] [stderr] 45 | impl_op_sub_float!(Point3);
[INFO] [stderr]    | -------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `impl_op_sub_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]   --> raytracer_lib/src/triple/point.rs:1:1
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/ops.rs:90:44
[INFO] [stderr]    |
[INFO] [stderr] 90 |         impl_op_ex!(-= |a: &mut $type, b: &Flt| { a.e[0] -= b; a.e[1] -= b; a.e[2] -= b; });
[INFO] [stderr]    |                                            ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr]   ::: raytracer_lib/src/triple/point.rs:46:1
[INFO] [stderr]    |
[INFO] [stderr] 46 | impl_op_sub_assign_float!(Point3);
[INFO] [stderr]    | --------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `impl_op_sub_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]   --> raytracer_lib/src/triple/point.rs:1:1
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:129:49
[INFO] [stderr]     |
[INFO] [stderr] 129 |         impl_op_ex_commutative!(*|a: &$type, b: Flt| -> $type {
[INFO] [stderr]     |                                                 ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/point.rs:48:1
[INFO] [stderr]     |
[INFO] [stderr] 48  | impl_op_mul_float!(Point3);
[INFO] [stderr]     | -------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_mul_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/point.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:138:43
[INFO] [stderr]     |
[INFO] [stderr] 138 |         impl_op_ex!(*= |a: &mut $type, b: Flt| { a.e[0] *= b; a.e[1] *= b; a.e[2] *= b; });
[INFO] [stderr]     |                                           ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/point.rs:49:1
[INFO] [stderr]     |
[INFO] [stderr] 49  | impl_op_mul_assign_float!(Point3);
[INFO] [stderr]     | --------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_mul_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/point.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:145:38
[INFO] [stderr]     |
[INFO] [stderr] 145 |         impl_op_ex!(/ |a: &$type, b: Flt| -> $type { a * b.recip() } );
[INFO] [stderr]     |                                      ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/point.rs:51:1
[INFO] [stderr]     |
[INFO] [stderr] 51  | impl_op_div_float!(Point3);
[INFO] [stderr]     | -------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_div_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/point.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:152:43
[INFO] [stderr]     |
[INFO] [stderr] 152 |         impl_op_ex!(/= |a: &mut $type, b: Flt| { *a *= b.recip() });
[INFO] [stderr]     |                                           ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/point.rs:52:1
[INFO] [stderr]     |
[INFO] [stderr] 52  | impl_op_div_assign_float!(Point3);
[INFO] [stderr]     | --------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_div_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/point.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/vec.rs:63:29
[INFO] [stderr]    |
[INFO] [stderr] 63 |     pub fn length(&self) -> Flt {
[INFO] [stderr]    |                             ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/vec.rs:69:37
[INFO] [stderr]    |
[INFO] [stderr] 69 |     pub fn length_squared(&self) -> Flt {
[INFO] [stderr]    |                                     ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/vec.rs:75:48
[INFO] [stderr]    |
[INFO] [stderr] 75 |     pub fn dot<T>(&self, other: &Triple<T>) -> Flt {
[INFO] [stderr]    |                                                ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 1  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/vec.rs:109:53
[INFO] [stderr]     |
[INFO] [stderr] 109 |     pub fn refract(&self, n: &Vec3, etai_over_etat: Flt) -> Vec3 {
[INFO] [stderr]     |                                                     ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:42:44
[INFO] [stderr]     |
[INFO] [stderr] 42  |         impl_op_ex!(+= |a: &mut $type, b: &Flt| { a.e[0] += b; a.e[1] += b; a.e[2] += b; });
[INFO] [stderr]     |                                            ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/vec.rs:133:1
[INFO] [stderr]     |
[INFO] [stderr] 133 | impl_op_add_assign_float!(Vec3);
[INFO] [stderr]     | ------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_add_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/vec.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:90:44
[INFO] [stderr]     |
[INFO] [stderr] 90  |         impl_op_ex!(-= |a: &mut $type, b: &Flt| { a.e[0] -= b; a.e[1] -= b; a.e[2] -= b; });
[INFO] [stderr]     |                                            ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/vec.rs:136:1
[INFO] [stderr]     |
[INFO] [stderr] 136 | impl_op_sub_assign_float!(Vec3);
[INFO] [stderr]     | ------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_sub_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/vec.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:129:49
[INFO] [stderr]     |
[INFO] [stderr] 129 |         impl_op_ex_commutative!(*|a: &$type, b: Flt| -> $type {
[INFO] [stderr]     |                                                 ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/vec.rs:138:1
[INFO] [stderr]     |
[INFO] [stderr] 138 | impl_op_mul_float!(Vec3);
[INFO] [stderr]     | ------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_mul_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/vec.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:138:43
[INFO] [stderr]     |
[INFO] [stderr] 138 |         impl_op_ex!(*= |a: &mut $type, b: Flt| { a.e[0] *= b; a.e[1] *= b; a.e[2] *= b; });
[INFO] [stderr]     |                                           ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/vec.rs:139:1
[INFO] [stderr]     |
[INFO] [stderr] 139 | impl_op_mul_assign_float!(Vec3);
[INFO] [stderr]     | ------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_mul_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/vec.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:145:38
[INFO] [stderr]     |
[INFO] [stderr] 145 |         impl_op_ex!(/ |a: &$type, b: Flt| -> $type { a * b.recip() } );
[INFO] [stderr]     |                                      ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/vec.rs:141:1
[INFO] [stderr]     |
[INFO] [stderr] 141 | impl_op_div_float!(Vec3);
[INFO] [stderr]     | ------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_div_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/vec.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/ops.rs:152:43
[INFO] [stderr]     |
[INFO] [stderr] 152 |         impl_op_ex!(/= |a: &mut $type, b: Flt| { *a *= b.recip() });
[INFO] [stderr]     |                                           ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr]    ::: raytracer_lib/src/triple/vec.rs:142:1
[INFO] [stderr]     |
[INFO] [stderr] 142 | impl_op_div_assign_float!(Vec3);
[INFO] [stderr]     | ------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in the macro `impl_op_div_assign_float` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    --> raytracer_lib/src/triple/vec.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:23:13
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub e: [Flt; 3],
[INFO] [stderr]    |             ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:31:24
[INFO] [stderr]    |
[INFO] [stderr] 31 |     pub fn new_flt(e1: Flt, e2: Flt, e3: Flt) -> Self {
[INFO] [stderr]    |                        ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:31:33
[INFO] [stderr]    |
[INFO] [stderr] 31 |     pub fn new_flt(e1: Flt, e2: Flt, e3: Flt) -> Self {
[INFO] [stderr]    |                                 ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:31:42
[INFO] [stderr]    |
[INFO] [stderr] 31 |     pub fn new_flt(e1: Flt, e2: Flt, e3: Flt) -> Self {
[INFO] [stderr]    |                                          ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:37:20
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub fn new(e1: FltPrim, e2: FltPrim, e3: FltPrim) -> Self {
[INFO] [stderr]    |                    ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:37:33
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub fn new(e1: FltPrim, e2: FltPrim, e3: FltPrim) -> Self {
[INFO] [stderr]    |                                 ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:37:46
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub fn new(e1: FltPrim, e2: FltPrim, e3: FltPrim) -> Self {
[INFO] [stderr]    |                                              ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:43:31
[INFO] [stderr]    |
[INFO] [stderr] 43 |     pub fn new_from_array(e: [Flt; 3]) -> Self {
[INFO] [stderr]    |                               ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:58:57
[INFO] [stderr]    |
[INFO] [stderr] 58 |     pub fn new_random_clamped(rng: &mut ThreadRng, min: FltPrim, max: FltPrim) -> Self {
[INFO] [stderr]    |                                                         ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `FltPrim` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:58:71
[INFO] [stderr]    |
[INFO] [stderr] 58 |     pub fn new_random_clamped(rng: &mut ThreadRng, min: FltPrim, max: FltPrim) -> Self {
[INFO] [stderr]    |                                                                       ^^^^^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::FltPrim;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:68:24
[INFO] [stderr]    |
[INFO] [stderr] 68 |     pub fn x(&self) -> Flt {
[INFO] [stderr]    |                        ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:74:24
[INFO] [stderr]    |
[INFO] [stderr] 74 |     pub fn y(&self) -> Flt {
[INFO] [stderr]    |                        ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]   --> raytracer_lib/src/triple/mod.rs:80:24
[INFO] [stderr]    |
[INFO] [stderr] 80 |     pub fn z(&self) -> Flt {
[INFO] [stderr]    |                        ^^^ not found in this scope
[INFO] [stderr]    |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]    |
[INFO] [stderr] 3  + use raytracer_lib::float::Flt;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/mod.rs:101:19
[INFO] [stderr]     |
[INFO] [stderr] 101 |     type Output = Flt;
[INFO] [stderr]     |                   ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Flt` in this scope
[INFO] [stderr]    --> raytracer_lib/src/triple/mod.rs:104:35
[INFO] [stderr]     |
[INFO] [stderr] 104 |     fn index(&self, i: usize) -> &Flt {
[INFO] [stderr]     |                                   ^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: consider importing this type alias
[INFO] [stderr]     |
[INFO] [stderr] 3   + use raytracer_lib::float::Flt;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 168 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0412`.
[INFO] [stderr] error: doctest failed, to rerun pass `-p raytracer_lib --doc`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/d98a5da813da67eb189387b8ccfb73cf481275d8/bin/rustdoc --edition=2021 --crate-type lib --color auto --crate-name raytracer_lib --test raytracer_lib/src/lib.rs --test-run-directory /opt/rustwide/workdir/raytracer_lib -L dependency=/opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps -L native=/opt/rustwide/target/debug/build/minifb-f84a4b01e3a56d54/out --extern auto_ops=/opt/rustwide/target/debug/deps/libauto_ops-47b0cfa1e78d80aa.rlib --extern image=/opt/rustwide/target/debug/deps/libimage-e463ea6d7481fbd4.rlib --extern noisy_float=/opt/rustwide/target/debug/deps/libnoisy_float-e9469119bb020be6.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-d4e83319e7af2fb6.rlib --extern rayon=/opt/rustwide/target/debug/deps/librayon-0216c67fd9613c31.rlib --extern raytracer_lib=/opt/rustwide/target/debug/deps/libraytracer_lib-de12ce4ecb5e2bdf.rlib -C embed-bitcode=no --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' --cap-lints=forbid --error-format human` (exit status: 1)
[INFO] [stderr] note: test exited abnormally; to see the full output pass --nocapture to the harness.
[INFO] running `Command { std: "docker" "inspect" "a976e87630201ebef48441b5d828329a240d8b6aa60d1cbc1492c223800b9f18", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a976e87630201ebef48441b5d828329a240d8b6aa60d1cbc1492c223800b9f18", kill_on_drop: false }`
[INFO] [stdout] a976e87630201ebef48441b5d828329a240d8b6aa60d1cbc1492c223800b9f18
