[INFO] cloning repository https://github.com/pppKin/rs_ray_toy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pppKin/rs_ray_toy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FpppKin%2Frs_ray_toy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FpppKin%2Frs_ray_toy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4f59aaf38c59fad8bcdf5268deb6488b05cac7ea
[INFO] testing pppKin/rs_ray_toy against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FpppKin%2Frs_ray_toy" "/workspace/builds/worker-7/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/pppKin/rs_ray_toy on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/pppKin/rs_ray_toy
[INFO] finished tweaking git repo https://github.com/pppKin/rs_ray_toy
[INFO] tweaked toml for git repo https://github.com/pppKin/rs_ray_toy written to /workspace/builds/worker-7/source/Cargo.toml
[INFO] crate git repo https://github.com/pppKin/rs_ray_toy already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 0c3cbe227c87616c56e620bf6c3fca8e3884364f81508486906c57e027ad4f09
[INFO] running `Command { std: "docker" "start" "-a" "0c3cbe227c87616c56e620bf6c3fca8e3884364f81508486906c57e027ad4f09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0c3cbe227c87616c56e620bf6c3fca8e3884364f81508486906c57e027ad4f09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0c3cbe227c87616c56e620bf6c3fca8e3884364f81508486906c57e027ad4f09", kill_on_drop: false }`
[INFO] [stdout] 0c3cbe227c87616c56e620bf6c3fca8e3884364f81508486906c57e027ad4f09
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5a7bcf3a06cbc14b5804fcceb891d02e38773e1ddf432352136c542dc2e554ed
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "5a7bcf3a06cbc14b5804fcceb891d02e38773e1ddf432352136c542dc2e554ed", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.69
[INFO] [stderr]    Compiling rayon-core v1.7.0
[INFO] [stderr]    Compiling bytemuck v1.2.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling num-iter v0.1.40
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling inflate v0.4.5
[INFO] [stderr]    Compiling miniz_oxide v0.3.6
[INFO] [stderr]    Compiling deflate v0.8.4
[INFO] [stderr]    Compiling png v0.16.3
[INFO] [stderr]    Compiling tiff v0.4.0
[INFO] [stderr]    Compiling crossbeam-queue v0.2.1
[INFO] [stderr]    Compiling crossbeam-deque v0.7.3
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling rayon v1.3.0
[INFO] [stderr]    Compiling jpeg-decoder v0.1.18
[INFO] [stderr]    Compiling image v0.23.4
[INFO] [stderr]    Compiling rs_ray_toy v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::core::MAX_DIST`
[INFO] [stdout]  --> src/camera.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::core::MAX_DIST;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cxyz`
[INFO] [stdout]  --> src/camera.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::geometry::{Bounds2f, Cxyz, Point2f, Point2i, Point3f, Ray, Vector3f};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cxyz`, `Vector3f`
[INFO] [stdout]  --> src/primitives.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::geometry::{Cxyz, Normal3f, Point3f, Ray, Vector3f};
[INFO] [stdout]   |                       ^^^^                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             _ => false,
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             _ => Normal3f {
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::MAX_DIST`
[INFO] [stdout]  --> src/camera.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::core::MAX_DIST;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cxyz`
[INFO] [stdout]  --> src/camera.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::geometry::{Bounds2f, Cxyz, Point2f, Point2i, Point3f, Ray, Vector3f};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cxyz`, `Vector3f`
[INFO] [stdout]  --> src/primitives.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::geometry::{Cxyz, Normal3f, Point3f, Ray, Vector3f};
[INFO] [stdout]   |                       ^^^^                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             _ => false,
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             _ => Normal3f {
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Point3i`
[INFO] [stdout]   --> src/geometry.rs:27:1
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type Point3i = Point3<i32>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Vector2i`
[INFO] [stdout]   --> src/geometry.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub type Vector2i = Vector2<i32>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Vector3i`
[INFO] [stdout]   --> src/geometry.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type Vector3i = Vector3<i32>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Bounds3i`
[INFO] [stdout]   --> src/geometry.rs:70:1
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub type Bounds3i = Bounds3<i32>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_floor`
[INFO] [stdout]    --> src/geometry.rs:222:8
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub fn pnt2_floor(p: Point2<f64>) -> Point2<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_ceil`
[INFO] [stdout]    --> src/geometry.rs:230:8
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub fn pnt2_ceil(p: Point2<f64>) -> Point2<f64> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_min_pnt2`
[INFO] [stdout]    --> src/geometry.rs:238:8
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub fn pnt2_min_pnt2<T>(pa: Point2<T>, pb: Point2<T>) -> Point2<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_max_pnt2`
[INFO] [stdout]    --> src/geometry.rs:249:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub fn pnt2_max_pnt2<T>(pa: Point2<T>, pb: Point2<T>) -> Point2<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd2_union_pnt2`
[INFO] [stdout]    --> src/geometry.rs:262:8
[INFO] [stdout]     |
[INFO] [stdout] 262 | pub fn bnd2_union_pnt2(b: &Bounds2<f64>, p: Point2<f64>) -> Bounds2<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_inside_bnd2`
[INFO] [stdout]    --> src/geometry.rs:275:8
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub fn pnt2_inside_bnd2<T>(pt: Point2<T>, b: &Bounds2<T>) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_inside_exclusive`
[INFO] [stdout]    --> src/geometry.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub fn pnt2_inside_exclusive<T>(pt: Point2<T>, b: &Bounds2<T>) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd2_expand`
[INFO] [stdout]    --> src/geometry.rs:291:8
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub fn bnd2_expand(b: &Bounds2f, delta: f64) -> Bounds2f {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `has_nans`
[INFO] [stdout]    --> src/geometry.rs:301:12
[INFO] [stdout]     |
[INFO] [stdout] 301 |     pub fn has_nans(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_permute`
[INFO] [stdout]    --> src/geometry.rs:475:8
[INFO] [stdout]     |
[INFO] [stdout] 475 | pub fn pnt3_permute<T>(v: &Point3<T>, x: usize, y: usize, z: usize) -> Point3<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_lerp`
[INFO] [stdout]    --> src/geometry.rs:491:8
[INFO] [stdout]     |
[INFO] [stdout] 491 | pub fn pnt3_lerp(t: f64, p0: &Point3f, p1: &Point3f) -> Point3f {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_floor`
[INFO] [stdout]    --> src/geometry.rs:496:8
[INFO] [stdout]     |
[INFO] [stdout] 496 | pub fn pnt3_floor(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_ceil`
[INFO] [stdout]    --> src/geometry.rs:505:8
[INFO] [stdout]     |
[INFO] [stdout] 505 | pub fn pnt3_ceil(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_abs`
[INFO] [stdout]    --> src/geometry.rs:514:8
[INFO] [stdout]     |
[INFO] [stdout] 514 | pub fn pnt3_abs(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_distance`
[INFO] [stdout]    --> src/geometry.rs:524:8
[INFO] [stdout]     |
[INFO] [stdout] 524 | pub fn pnt3_distance(p1: &Point3<f64>, p2: &Point3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_distance_squared`
[INFO] [stdout]    --> src/geometry.rs:530:8
[INFO] [stdout]     |
[INFO] [stdout] 530 | pub fn pnt3_distance_squared(p1: &Point3<f64>, p2: &Point3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_offset_ray_origin`
[INFO] [stdout]    --> src/geometry.rs:538:8
[INFO] [stdout]     |
[INFO] [stdout] 538 | pub fn pnt3_offset_ray_origin(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec2_dot`
[INFO] [stdout]    --> src/geometry.rs:671:8
[INFO] [stdout]     |
[INFO] [stdout] 671 | pub fn vec2_dot(v1: &Vector2<f64>, v2: &Vector2<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `has_nans`
[INFO] [stdout]    --> src/geometry.rs:678:12
[INFO] [stdout]     |
[INFO] [stdout] 678 |     pub fn has_nans(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_abs_dot_vec3`
[INFO] [stdout]    --> src/geometry.rs:879:8
[INFO] [stdout]     |
[INFO] [stdout] 879 | pub fn vec3_abs_dot_vec3(v1: &Vector3<f64>, v2: &Vector3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_abs_dot_nrm`
[INFO] [stdout]    --> src/geometry.rs:884:8
[INFO] [stdout]     |
[INFO] [stdout] 884 | pub fn vec3_abs_dot_nrm(v1: &Vector3<f64>, n2: &Normal3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_cross_nrm`
[INFO] [stdout]    --> src/geometry.rs:908:8
[INFO] [stdout]     |
[INFO] [stdout] 908 | pub fn vec3_cross_nrm(v1: &Vector3f, v2: &Normal3f) -> Vector3f {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_max_component`
[INFO] [stdout]    --> src/geometry.rs:923:8
[INFO] [stdout]     |
[INFO] [stdout] 923 | pub fn vec3_max_component(v: &Vector3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_max_dimension`
[INFO] [stdout]    --> src/geometry.rs:928:8
[INFO] [stdout]     |
[INFO] [stdout] 928 | pub fn vec3_max_dimension(v: &Vector3<f64>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_permute`
[INFO] [stdout]    --> src/geometry.rs:944:8
[INFO] [stdout]     |
[INFO] [stdout] 944 | pub fn vec3_permute(v: &Vector3<f64>, x: usize, y: usize, z: usize) -> Vector3<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_coordinate_system`
[INFO] [stdout]    --> src/geometry.rs:958:8
[INFO] [stdout]     |
[INFO] [stdout] 958 | pub fn vec3_coordinate_system(v1: &Vector3f, v2: &mut Vector3f, v3: &mut Vector3f) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `spherical_direction`
[INFO] [stdout]    --> src/geometry.rs:976:8
[INFO] [stdout]     |
[INFO] [stdout] 976 | pub fn spherical_direction(sin_theta: f64, cos_theta: f64, phi: f64) -> Vector3f {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `spherical_direction_vec3`
[INFO] [stdout]    --> src/geometry.rs:987:8
[INFO] [stdout]     |
[INFO] [stdout] 987 | pub fn spherical_direction_vec3(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `spherical_theta`
[INFO] [stdout]     --> src/geometry.rs:1001:8
[INFO] [stdout]      |
[INFO] [stdout] 1001 | pub fn spherical_theta(v: &Vector3f) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `spherical_phi`
[INFO] [stdout]     --> src/geometry.rs:1006:8
[INFO] [stdout]      |
[INFO] [stdout] 1006 | pub fn spherical_phi(v: &Vector3f) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_cross_vec3`
[INFO] [stdout]     --> src/geometry.rs:1181:8
[INFO] [stdout]      |
[INFO] [stdout] 1181 | pub fn nrm_cross_vec3(n1: &Normal3f, v2: &Vector3f) -> Vector3f {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_dot_nrm`
[INFO] [stdout]     --> src/geometry.rs:1199:8
[INFO] [stdout]      |
[INFO] [stdout] 1199 | pub fn nrm_dot_nrm<T>(n1: &Normal3<T>, n2: &Normal3<T>) -> T
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_dot_vec3`
[INFO] [stdout]     --> src/geometry.rs:1209:8
[INFO] [stdout]      |
[INFO] [stdout] 1209 | pub fn nrm_dot_vec3<T>(n1: &Normal3<T>, v2: &Vector3<T>) -> T
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_abs_dot_vec3`
[INFO] [stdout]     --> src/geometry.rs:1217:8
[INFO] [stdout]      |
[INFO] [stdout] 1217 | pub fn nrm_abs_dot_vec3(n1: &Normal3<f64>, v2: &Vector3<f64>) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_abs`
[INFO] [stdout]     --> src/geometry.rs:1222:8
[INFO] [stdout]      |
[INFO] [stdout] 1222 | pub fn nrm_abs(n: &Normal3<f64>) -> Normal3<f64> {
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_faceforward_vec3`
[INFO] [stdout]     --> src/geometry.rs:1232:8
[INFO] [stdout]      |
[INFO] [stdout] 1232 | pub fn nrm_faceforward_vec3(n: &Normal3f, v: &Vector3f) -> Normal3f {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_faceforward_nrm`
[INFO] [stdout]     --> src/geometry.rs:1242:8
[INFO] [stdout]      |
[INFO] [stdout] 1242 | pub fn nrm_faceforward_nrm(n: &Normal3f, n2: &Normal3f) -> Normal3f {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd2_intersect_bnd2`
[INFO] [stdout]     --> src/geometry.rs:1341:8
[INFO] [stdout]      |
[INFO] [stdout] 1341 | pub fn bnd2_intersect_bnd2<T>(b1: &Bounds2<T>, b2: &Bounds2<T>) -> Bounds2<T>
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `corner`
[INFO] [stdout]     --> src/geometry.rs:1380:12
[INFO] [stdout]      |
[INFO] [stdout] 1380 |     pub fn corner(&self, corner: u8) -> Point3<T>
[INFO] [stdout]      |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `diagonal`
[INFO] [stdout]     --> src/geometry.rs:1406:12
[INFO] [stdout]      |
[INFO] [stdout] 1406 |     pub fn diagonal(&self) -> Vector3<T>
[INFO] [stdout]      |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `surface_area`
[INFO] [stdout]     --> src/geometry.rs:1412:12
[INFO] [stdout]      |
[INFO] [stdout] 1412 |     pub fn surface_area(&self) -> T
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `maximum_extent`
[INFO] [stdout]     --> src/geometry.rs:1421:12
[INFO] [stdout]      |
[INFO] [stdout] 1421 |     pub fn maximum_extent(&self) -> u8
[INFO] [stdout]      |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `offset`
[INFO] [stdout]     --> src/geometry.rs:1434:12
[INFO] [stdout]      |
[INFO] [stdout] 1434 |     pub fn offset(&self, p: &Point3<T>) -> Vector3<T>
[INFO] [stdout]      |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `bounding_sphere`
[INFO] [stdout]     --> src/geometry.rs:1450:12
[INFO] [stdout]      |
[INFO] [stdout] 1450 |     pub fn bounding_sphere(b: &Bounds3f, center: &mut Point3f, radius: &mut f64) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]     --> src/geometry.rs:1466:12
[INFO] [stdout]      |
[INFO] [stdout] 1466 |     pub fn new(p1: Point3<f64>, p2: Point3<f64>) -> Self {
[INFO] [stdout]      |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `lerp`
[INFO] [stdout]     --> src/geometry.rs:1479:12
[INFO] [stdout]      |
[INFO] [stdout] 1479 |     pub fn lerp(&self, t: &Point3f) -> Point3f {
[INFO] [stdout]      |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd3_union_pnt3`
[INFO] [stdout]     --> src/geometry.rs:1524:8
[INFO] [stdout]      |
[INFO] [stdout] 1524 | pub fn bnd3_union_pnt3(b: &Bounds3<f64>, p: &Point3<f64>) -> Bounds3<f64> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd3_union_bnd3`
[INFO] [stdout]     --> src/geometry.rs:1540:8
[INFO] [stdout]      |
[INFO] [stdout] 1540 | pub fn bnd3_union_bnd3(b1: &Bounds3<f64>, b2: &Bounds3<f64>) -> Bounds3<f64> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_inside_bnd3`
[INFO] [stdout]     --> src/geometry.rs:1555:8
[INFO] [stdout]      |
[INFO] [stdout] 1555 | pub fn pnt3_inside_bnd3(p: &Point3f, b: &Bounds3f) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3i_inside_exclusive`
[INFO] [stdout]     --> src/geometry.rs:1565:8
[INFO] [stdout]      |
[INFO] [stdout] 1565 | pub fn pnt3i_inside_exclusive(p: &Point3i, b: &Bounds3i) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3f_inside_exclusive`
[INFO] [stdout]     --> src/geometry.rs:1575:8
[INFO] [stdout]      |
[INFO] [stdout] 1575 | pub fn pnt3f_inside_exclusive(p: &Point3f, b: &Bounds3f) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd3_expand`
[INFO] [stdout]     --> src/geometry.rs:1585:8
[INFO] [stdout]      |
[INFO] [stdout] 1585 | pub fn bnd3_expand(b: &Bounds3f, delta: f64) -> Bounds3f {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `ONE_MINUS_EPSILON`
[INFO] [stdout]  --> src/misc.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const ONE_MINUS_EPSILON: f64 = 1.0 - MACHINE_EPSILON;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `float_to_bits`
[INFO] [stdout]   --> src/misc.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn float_to_bits(f: f64) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bits_to_float`
[INFO] [stdout]   --> src/misc.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn bits_to_float(ui: u32) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `next_float_up`
[INFO] [stdout]   --> src/misc.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn next_float_up(v: f64) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `next_float_down`
[INFO] [stdout]   --> src/misc.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn next_float_down(v: f64) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transpose`
[INFO] [stdout]   --> src/transform.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn transpose(m: &Matrix4x4) -> Matrix4x4 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `solve_linear_system_2x2`
[INFO] [stdout]    --> src/transform.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn solve_linear_system_2x2(a: [[f64; 2]; 2], b: [f64; 2], x0: &mut f64, x1: &mut f64) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]    --> src/transform.rs:194:12
[INFO] [stdout]     |
[INFO] [stdout] 194 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_identity`
[INFO] [stdout]    --> src/transform.rs:227:12
[INFO] [stdout]     |
[INFO] [stdout] 227 |     pub fn is_identity(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `swaps_handedness`
[INFO] [stdout]    --> src/transform.rs:245:12
[INFO] [stdout]     |
[INFO] [stdout] 245 |     pub fn swaps_handedness(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `rotate_x`
[INFO] [stdout]    --> src/transform.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn rotate_x(theta: f64) -> Transform {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `rotate_y`
[INFO] [stdout]    --> src/transform.rs:301:12
[INFO] [stdout]     |
[INFO] [stdout] 301 |     pub fn rotate_y(theta: f64) -> Transform {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `rotate_z`
[INFO] [stdout]    --> src/transform.rs:313:12
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn rotate_z(theta: f64) -> Transform {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `rotate`
[INFO] [stdout]    --> src/transform.rs:325:12
[INFO] [stdout]     |
[INFO] [stdout] 325 |     pub fn rotate(theta: f64, axis: &Vector3f) -> Transform {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `orthographic`
[INFO] [stdout]    --> src/transform.rs:388:12
[INFO] [stdout]     |
[INFO] [stdout] 388 |     pub fn orthographic(z_near: f64, z_far: f64) -> Transform {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transform_normal`
[INFO] [stdout]    --> src/transform.rs:462:12
[INFO] [stdout]     |
[INFO] [stdout] 462 |     pub fn transform_normal(&self, n: &Normal3f) -> Normal3f {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transform_bounds`
[INFO] [stdout]    --> src/transform.rs:492:12
[INFO] [stdout]     |
[INFO] [stdout] 492 |     pub fn transform_bounds(&self, b: &Bounds3f) -> Bounds3f {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transform_point_with_abs_error`
[INFO] [stdout]    --> src/transform.rs:601:12
[INFO] [stdout]     |
[INFO] [stdout] 601 |     pub fn transform_point_with_abs_error(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transform_vector_with_error`
[INFO] [stdout]    --> src/transform.rs:658:12
[INFO] [stdout]     |
[INFO] [stdout] 658 |     pub fn transform_vector_with_error(&self, v: &Vector3f, abs_error: &mut Vector3f) -> Vector3f {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 80 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 59.58s
[INFO] running `Command { std: "docker" "inspect" "5a7bcf3a06cbc14b5804fcceb891d02e38773e1ddf432352136c542dc2e554ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5a7bcf3a06cbc14b5804fcceb891d02e38773e1ddf432352136c542dc2e554ed", kill_on_drop: false }`
[INFO] [stdout] 5a7bcf3a06cbc14b5804fcceb891d02e38773e1ddf432352136c542dc2e554ed
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0ece0cc0102dfc2416e97f833844b3184a626883b1c6e15a36bca539f3b7ee72
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "0ece0cc0102dfc2416e97f833844b3184a626883b1c6e15a36bca539f3b7ee72", kill_on_drop: false }`
[INFO] [stderr]    Compiling rs_ray_toy v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::core::MAX_DIST`
[INFO] [stdout]  --> src/camera.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::core::MAX_DIST;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cxyz`
[INFO] [stdout]  --> src/camera.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::geometry::{Bounds2f, Cxyz, Point2f, Point2i, Point3f, Ray, Vector3f};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cxyz`, `Vector3f`
[INFO] [stdout]  --> src/primitives.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::geometry::{Cxyz, Normal3f, Point3f, Ray, Vector3f};
[INFO] [stdout]   |                       ^^^^                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             _ => false,
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             _ => Normal3f {
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::MAX_DIST`
[INFO] [stdout]  --> src/camera.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::core::MAX_DIST;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cxyz`
[INFO] [stdout]  --> src/primitives.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::geometry::{Cxyz, Normal3f, Point3f, Ray, Vector3f};
[INFO] [stdout]   |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::MAX_DIST`
[INFO] [stdout]  --> src/camera.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::core::MAX_DIST;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cxyz`
[INFO] [stdout]  --> src/primitives.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::geometry::{Cxyz, Normal3f, Point3f, Ray, Vector3f};
[INFO] [stdout]   |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             _ => false,
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             _ => Normal3f {
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resolution`
[INFO] [stdout]    --> src/camera.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |         let resolution = Point2i { x: 32, y: 32 };
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resolution`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `it`
[INFO] [stdout]    --> src/camera.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let it: Transform = Transform {
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_it`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/camera.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut r2 = Ray::new();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/camera.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let mut r3 = Ray::new();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             _ => false,
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/primitives.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             _ => Normal3f {
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resolution`
[INFO] [stdout]    --> src/camera.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |         let resolution = Point2i { x: 32, y: 32 };
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resolution`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `it`
[INFO] [stdout]    --> src/camera.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let it: Transform = Transform {
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_it`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/camera.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut r2 = Ray::new();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/camera.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let mut r3 = Ray::new();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Point3i`
[INFO] [stdout]   --> src/geometry.rs:27:1
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type Point3i = Point3<i32>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Vector2i`
[INFO] [stdout]   --> src/geometry.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub type Vector2i = Vector2<i32>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Vector3i`
[INFO] [stdout]   --> src/geometry.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type Vector3i = Vector3<i32>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Bounds3i`
[INFO] [stdout]   --> src/geometry.rs:70:1
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub type Bounds3i = Bounds3<i32>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_floor`
[INFO] [stdout]    --> src/geometry.rs:222:8
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub fn pnt2_floor(p: Point2<f64>) -> Point2<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_ceil`
[INFO] [stdout]    --> src/geometry.rs:230:8
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub fn pnt2_ceil(p: Point2<f64>) -> Point2<f64> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_min_pnt2`
[INFO] [stdout]    --> src/geometry.rs:238:8
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub fn pnt2_min_pnt2<T>(pa: Point2<T>, pb: Point2<T>) -> Point2<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_max_pnt2`
[INFO] [stdout]    --> src/geometry.rs:249:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub fn pnt2_max_pnt2<T>(pa: Point2<T>, pb: Point2<T>) -> Point2<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd2_union_pnt2`
[INFO] [stdout]    --> src/geometry.rs:262:8
[INFO] [stdout]     |
[INFO] [stdout] 262 | pub fn bnd2_union_pnt2(b: &Bounds2<f64>, p: Point2<f64>) -> Bounds2<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_inside_bnd2`
[INFO] [stdout]    --> src/geometry.rs:275:8
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub fn pnt2_inside_bnd2<T>(pt: Point2<T>, b: &Bounds2<T>) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt2_inside_exclusive`
[INFO] [stdout]    --> src/geometry.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub fn pnt2_inside_exclusive<T>(pt: Point2<T>, b: &Bounds2<T>) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd2_expand`
[INFO] [stdout]    --> src/geometry.rs:291:8
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub fn bnd2_expand(b: &Bounds2f, delta: f64) -> Bounds2f {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `has_nans`
[INFO] [stdout]    --> src/geometry.rs:301:12
[INFO] [stdout]     |
[INFO] [stdout] 301 |     pub fn has_nans(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_permute`
[INFO] [stdout]    --> src/geometry.rs:475:8
[INFO] [stdout]     |
[INFO] [stdout] 475 | pub fn pnt3_permute<T>(v: &Point3<T>, x: usize, y: usize, z: usize) -> Point3<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_lerp`
[INFO] [stdout]    --> src/geometry.rs:491:8
[INFO] [stdout]     |
[INFO] [stdout] 491 | pub fn pnt3_lerp(t: f64, p0: &Point3f, p1: &Point3f) -> Point3f {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_floor`
[INFO] [stdout]    --> src/geometry.rs:496:8
[INFO] [stdout]     |
[INFO] [stdout] 496 | pub fn pnt3_floor(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_ceil`
[INFO] [stdout]    --> src/geometry.rs:505:8
[INFO] [stdout]     |
[INFO] [stdout] 505 | pub fn pnt3_ceil(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_abs`
[INFO] [stdout]    --> src/geometry.rs:514:8
[INFO] [stdout]     |
[INFO] [stdout] 514 | pub fn pnt3_abs(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_distance_squared`
[INFO] [stdout]    --> src/geometry.rs:530:8
[INFO] [stdout]     |
[INFO] [stdout] 530 | pub fn pnt3_distance_squared(p1: &Point3<f64>, p2: &Point3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3_offset_ray_origin`
[INFO] [stdout]    --> src/geometry.rs:538:8
[INFO] [stdout]     |
[INFO] [stdout] 538 | pub fn pnt3_offset_ray_origin(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec2_dot`
[INFO] [stdout]    --> src/geometry.rs:671:8
[INFO] [stdout]     |
[INFO] [stdout] 671 | pub fn vec2_dot(v1: &Vector2<f64>, v2: &Vector2<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `has_nans`
[INFO] [stdout]    --> src/geometry.rs:678:12
[INFO] [stdout]     |
[INFO] [stdout] 678 |     pub fn has_nans(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_abs_dot_vec3`
[INFO] [stdout]    --> src/geometry.rs:879:8
[INFO] [stdout]     |
[INFO] [stdout] 879 | pub fn vec3_abs_dot_vec3(v1: &Vector3<f64>, v2: &Vector3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_abs_dot_nrm`
[INFO] [stdout]    --> src/geometry.rs:884:8
[INFO] [stdout]     |
[INFO] [stdout] 884 | pub fn vec3_abs_dot_nrm(v1: &Vector3<f64>, n2: &Normal3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_cross_nrm`
[INFO] [stdout]    --> src/geometry.rs:908:8
[INFO] [stdout]     |
[INFO] [stdout] 908 | pub fn vec3_cross_nrm(v1: &Vector3f, v2: &Normal3f) -> Vector3f {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_max_component`
[INFO] [stdout]    --> src/geometry.rs:923:8
[INFO] [stdout]     |
[INFO] [stdout] 923 | pub fn vec3_max_component(v: &Vector3<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_max_dimension`
[INFO] [stdout]    --> src/geometry.rs:928:8
[INFO] [stdout]     |
[INFO] [stdout] 928 | pub fn vec3_max_dimension(v: &Vector3<f64>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_permute`
[INFO] [stdout]    --> src/geometry.rs:944:8
[INFO] [stdout]     |
[INFO] [stdout] 944 | pub fn vec3_permute(v: &Vector3<f64>, x: usize, y: usize, z: usize) -> Vector3<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vec3_coordinate_system`
[INFO] [stdout]    --> src/geometry.rs:958:8
[INFO] [stdout]     |
[INFO] [stdout] 958 | pub fn vec3_coordinate_system(v1: &Vector3f, v2: &mut Vector3f, v3: &mut Vector3f) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `spherical_direction`
[INFO] [stdout]    --> src/geometry.rs:976:8
[INFO] [stdout]     |
[INFO] [stdout] 976 | pub fn spherical_direction(sin_theta: f64, cos_theta: f64, phi: f64) -> Vector3f {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `spherical_direction_vec3`
[INFO] [stdout]    --> src/geometry.rs:987:8
[INFO] [stdout]     |
[INFO] [stdout] 987 | pub fn spherical_direction_vec3(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `spherical_theta`
[INFO] [stdout]     --> src/geometry.rs:1001:8
[INFO] [stdout]      |
[INFO] [stdout] 1001 | pub fn spherical_theta(v: &Vector3f) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `spherical_phi`
[INFO] [stdout]     --> src/geometry.rs:1006:8
[INFO] [stdout]      |
[INFO] [stdout] 1006 | pub fn spherical_phi(v: &Vector3f) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_cross_vec3`
[INFO] [stdout]     --> src/geometry.rs:1181:8
[INFO] [stdout]      |
[INFO] [stdout] 1181 | pub fn nrm_cross_vec3(n1: &Normal3f, v2: &Vector3f) -> Vector3f {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_dot_nrm`
[INFO] [stdout]     --> src/geometry.rs:1199:8
[INFO] [stdout]      |
[INFO] [stdout] 1199 | pub fn nrm_dot_nrm<T>(n1: &Normal3<T>, n2: &Normal3<T>) -> T
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_dot_vec3`
[INFO] [stdout]     --> src/geometry.rs:1209:8
[INFO] [stdout]      |
[INFO] [stdout] 1209 | pub fn nrm_dot_vec3<T>(n1: &Normal3<T>, v2: &Vector3<T>) -> T
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_abs_dot_vec3`
[INFO] [stdout]     --> src/geometry.rs:1217:8
[INFO] [stdout]      |
[INFO] [stdout] 1217 | pub fn nrm_abs_dot_vec3(n1: &Normal3<f64>, v2: &Vector3<f64>) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_abs`
[INFO] [stdout]     --> src/geometry.rs:1222:8
[INFO] [stdout]      |
[INFO] [stdout] 1222 | pub fn nrm_abs(n: &Normal3<f64>) -> Normal3<f64> {
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_faceforward_vec3`
[INFO] [stdout]     --> src/geometry.rs:1232:8
[INFO] [stdout]      |
[INFO] [stdout] 1232 | pub fn nrm_faceforward_vec3(n: &Normal3f, v: &Vector3f) -> Normal3f {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `nrm_faceforward_nrm`
[INFO] [stdout]     --> src/geometry.rs:1242:8
[INFO] [stdout]      |
[INFO] [stdout] 1242 | pub fn nrm_faceforward_nrm(n: &Normal3f, n2: &Normal3f) -> Normal3f {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd2_intersect_bnd2`
[INFO] [stdout]     --> src/geometry.rs:1341:8
[INFO] [stdout]      |
[INFO] [stdout] 1341 | pub fn bnd2_intersect_bnd2<T>(b1: &Bounds2<T>, b2: &Bounds2<T>) -> Bounds2<T>
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `corner`
[INFO] [stdout]     --> src/geometry.rs:1380:12
[INFO] [stdout]      |
[INFO] [stdout] 1380 |     pub fn corner(&self, corner: u8) -> Point3<T>
[INFO] [stdout]      |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `diagonal`
[INFO] [stdout]     --> src/geometry.rs:1406:12
[INFO] [stdout]      |
[INFO] [stdout] 1406 |     pub fn diagonal(&self) -> Vector3<T>
[INFO] [stdout]      |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `surface_area`
[INFO] [stdout]     --> src/geometry.rs:1412:12
[INFO] [stdout]      |
[INFO] [stdout] 1412 |     pub fn surface_area(&self) -> T
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `maximum_extent`
[INFO] [stdout]     --> src/geometry.rs:1421:12
[INFO] [stdout]      |
[INFO] [stdout] 1421 |     pub fn maximum_extent(&self) -> u8
[INFO] [stdout]      |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `offset`
[INFO] [stdout]     --> src/geometry.rs:1434:12
[INFO] [stdout]      |
[INFO] [stdout] 1434 |     pub fn offset(&self, p: &Point3<T>) -> Vector3<T>
[INFO] [stdout]      |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]     --> src/geometry.rs:1466:12
[INFO] [stdout]      |
[INFO] [stdout] 1466 |     pub fn new(p1: Point3<f64>, p2: Point3<f64>) -> Self {
[INFO] [stdout]      |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `lerp`
[INFO] [stdout]     --> src/geometry.rs:1479:12
[INFO] [stdout]      |
[INFO] [stdout] 1479 |     pub fn lerp(&self, t: &Point3f) -> Point3f {
[INFO] [stdout]      |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd3_union_bnd3`
[INFO] [stdout]     --> src/geometry.rs:1540:8
[INFO] [stdout]      |
[INFO] [stdout] 1540 | pub fn bnd3_union_bnd3(b1: &Bounds3<f64>, b2: &Bounds3<f64>) -> Bounds3<f64> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3i_inside_exclusive`
[INFO] [stdout]     --> src/geometry.rs:1565:8
[INFO] [stdout]      |
[INFO] [stdout] 1565 | pub fn pnt3i_inside_exclusive(p: &Point3i, b: &Bounds3i) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pnt3f_inside_exclusive`
[INFO] [stdout]     --> src/geometry.rs:1575:8
[INFO] [stdout]      |
[INFO] [stdout] 1575 | pub fn pnt3f_inside_exclusive(p: &Point3f, b: &Bounds3f) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bnd3_expand`
[INFO] [stdout]     --> src/geometry.rs:1585:8
[INFO] [stdout]      |
[INFO] [stdout] 1585 | pub fn bnd3_expand(b: &Bounds3f, delta: f64) -> Bounds3f {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `ONE_MINUS_EPSILON`
[INFO] [stdout]  --> src/misc.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const ONE_MINUS_EPSILON: f64 = 1.0 - MACHINE_EPSILON;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `float_to_bits`
[INFO] [stdout]   --> src/misc.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn float_to_bits(f: f64) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bits_to_float`
[INFO] [stdout]   --> src/misc.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn bits_to_float(ui: u32) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `next_float_up`
[INFO] [stdout]   --> src/misc.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn next_float_up(v: f64) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `next_float_down`
[INFO] [stdout]   --> src/misc.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn next_float_down(v: f64) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transpose`
[INFO] [stdout]   --> src/transform.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn transpose(m: &Matrix4x4) -> Matrix4x4 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `solve_linear_system_2x2`
[INFO] [stdout]    --> src/transform.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn solve_linear_system_2x2(a: [[f64; 2]; 2], b: [f64; 2], x0: &mut f64, x1: &mut f64) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]    --> src/transform.rs:194:12
[INFO] [stdout]     |
[INFO] [stdout] 194 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_identity`
[INFO] [stdout]    --> src/transform.rs:227:12
[INFO] [stdout]     |
[INFO] [stdout] 227 |     pub fn is_identity(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `swaps_handedness`
[INFO] [stdout]    --> src/transform.rs:245:12
[INFO] [stdout]     |
[INFO] [stdout] 245 |     pub fn swaps_handedness(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `rotate_x`
[INFO] [stdout]    --> src/transform.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn rotate_x(theta: f64) -> Transform {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `rotate_y`
[INFO] [stdout]    --> src/transform.rs:301:12
[INFO] [stdout]     |
[INFO] [stdout] 301 |     pub fn rotate_y(theta: f64) -> Transform {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `rotate_z`
[INFO] [stdout]    --> src/transform.rs:313:12
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn rotate_z(theta: f64) -> Transform {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `rotate`
[INFO] [stdout]    --> src/transform.rs:325:12
[INFO] [stdout]     |
[INFO] [stdout] 325 |     pub fn rotate(theta: f64, axis: &Vector3f) -> Transform {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `orthographic`
[INFO] [stdout]    --> src/transform.rs:388:12
[INFO] [stdout]     |
[INFO] [stdout] 388 |     pub fn orthographic(z_near: f64, z_far: f64) -> Transform {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transform_normal`
[INFO] [stdout]    --> src/transform.rs:462:12
[INFO] [stdout]     |
[INFO] [stdout] 462 |     pub fn transform_normal(&self, n: &Normal3f) -> Normal3f {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transform_bounds`
[INFO] [stdout]    --> src/transform.rs:492:12
[INFO] [stdout]     |
[INFO] [stdout] 492 |     pub fn transform_bounds(&self, b: &Bounds3f) -> Bounds3f {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transform_point_with_abs_error`
[INFO] [stdout]    --> src/transform.rs:601:12
[INFO] [stdout]     |
[INFO] [stdout] 601 |     pub fn transform_point_with_abs_error(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `transform_vector_with_error`
[INFO] [stdout]    --> src/transform.rs:658:12
[INFO] [stdout]     |
[INFO] [stdout] 658 |     pub fn transform_vector_with_error(&self, v: &Vector3f, abs_error: &mut Vector3f) -> Vector3f {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 79 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 5.42s
[INFO] running `Command { std: "docker" "inspect" "0ece0cc0102dfc2416e97f833844b3184a626883b1c6e15a36bca539f3b7ee72", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0ece0cc0102dfc2416e97f833844b3184a626883b1c6e15a36bca539f3b7ee72", kill_on_drop: false }`
[INFO] [stdout] 0ece0cc0102dfc2416e97f833844b3184a626883b1c6e15a36bca539f3b7ee72
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 983a28f8ddd036265df8b1dce9a430ca0abd223d80592aa6d03b0504de29f2d0
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "983a28f8ddd036265df8b1dce9a430ca0abd223d80592aa6d03b0504de29f2d0", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `crate::core::MAX_DIST`
[INFO] [stderr]  --> src/camera.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::core::MAX_DIST;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Cxyz`
[INFO] [stderr]  --> src/camera.rs:2:33
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::geometry::{Bounds2f, Cxyz, Point2f, Point2i, Point3f, Ray, Vector3f};
[INFO] [stderr]   |                                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Cxyz`, `Vector3f`
[INFO] [stderr]  --> src/primitives.rs:3:23
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::geometry::{Cxyz, Normal3f, Point3f, Ray, Vector3f};
[INFO] [stderr]   |                       ^^^^                          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/primitives.rs:112:13
[INFO] [stderr]     |
[INFO] [stderr] 112 |             _ => false,
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/primitives.rs:119:13
[INFO] [stderr]     |
[INFO] [stderr] 119 |             _ => Normal3f {
[INFO] [stderr]     |             ^
[INFO] [stderr] 
[INFO] [stderr] warning: 5 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::core::MAX_DIST`
[INFO] [stderr]  --> src/camera.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::core::MAX_DIST;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Cxyz`
[INFO] [stderr]  --> src/primitives.rs:3:23
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::geometry::{Cxyz, Normal3f, Point3f, Ray, Vector3f};
[INFO] [stderr]   |                       ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/primitives.rs:112:13
[INFO] [stderr]     |
[INFO] [stderr] 112 |             _ => false,
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/primitives.rs:119:13
[INFO] [stderr]     |
[INFO] [stderr] 119 |             _ => Normal3f {
[INFO] [stderr]     |             ^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::core::MAX_DIST`
[INFO] [stderr]  --> src/camera.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::core::MAX_DIST;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `resolution`
[INFO] [stderr]    --> src/camera.rs:189:13
[INFO] [stderr]     |
[INFO] [stderr] 189 |         let resolution = Point2i { x: 32, y: 32 };
[INFO] [stderr]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resolution`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Cxyz`
[INFO] [stderr]  --> src/primitives.rs:3:23
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::geometry::{Cxyz, Normal3f, Point3f, Ray, Vector3f};
[INFO] [stderr]   |                       ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `it`
[INFO] [stderr]    --> src/camera.rs:190:13
[INFO] [stderr]     |
[INFO] [stderr] 190 |         let it: Transform = Transform {
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_it`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/primitives.rs:112:13
[INFO] [stderr]     |
[INFO] [stderr] 112 |             _ => false,
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/primitives.rs:119:13
[INFO] [stderr]     |
[INFO] [stderr] 119 |             _ => Normal3f {
[INFO] [stderr]     |             ^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/camera.rs:197:13
[INFO] [stderr]     |
[INFO] [stderr] 197 |         let mut r2 = Ray::new();
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `resolution`
[INFO] [stderr]    --> src/camera.rs:189:13
[INFO] [stderr]     |
[INFO] [stderr] 189 |         let resolution = Point2i { x: 32, y: 32 };
[INFO] [stderr]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resolution`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/camera.rs:198:13
[INFO] [stderr]     |
[INFO] [stderr] 198 |         let mut r3 = Ray::new();
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `it`
[INFO] [stderr]    --> src/camera.rs:190:13
[INFO] [stderr]     |
[INFO] [stderr] 190 |         let it: Transform = Transform {
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_it`
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `Point3i`
[INFO] [stderr]   --> src/geometry.rs:27:1
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub type Point3i = Point3<i32>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `Vector2i`
[INFO] [stderr]   --> src/geometry.rs:29:1
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub type Vector2i = Vector2<i32>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/camera.rs:197:13
[INFO] [stderr]     |
[INFO] [stderr] 197 |         let mut r2 = Ray::new();
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `Vector3i`
[INFO] [stderr]   --> src/geometry.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub type Vector3i = Vector3<i32>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/camera.rs:198:13
[INFO] [stderr]     |
[INFO] [stderr] 198 |         let mut r3 = Ray::new();
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: 8 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `Bounds3i`
[INFO] [stderr]   --> src/geometry.rs:70:1
[INFO] [stderr]    |
[INFO] [stderr] 70 | pub type Bounds3i = Bounds3<i32>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt2_floor`
[INFO] [stderr]    --> src/geometry.rs:222:8
[INFO] [stderr]     |
[INFO] [stderr] 222 | pub fn pnt2_floor(p: Point2<f64>) -> Point2<f64> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt2_ceil`
[INFO] [stderr]    --> src/geometry.rs:230:8
[INFO] [stderr]     |
[INFO] [stderr] 230 | pub fn pnt2_ceil(p: Point2<f64>) -> Point2<f64> {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt2_min_pnt2`
[INFO] [stderr]    --> src/geometry.rs:238:8
[INFO] [stderr]     |
[INFO] [stderr] 238 | pub fn pnt2_min_pnt2<T>(pa: Point2<T>, pb: Point2<T>) -> Point2<T>
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt2_max_pnt2`
[INFO] [stderr]    --> src/geometry.rs:249:8
[INFO] [stderr]     |
[INFO] [stderr] 249 | pub fn pnt2_max_pnt2<T>(pa: Point2<T>, pb: Point2<T>) -> Point2<T>
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `bnd2_union_pnt2`
[INFO] [stderr]    --> src/geometry.rs:262:8
[INFO] [stderr]     |
[INFO] [stderr] 262 | pub fn bnd2_union_pnt2(b: &Bounds2<f64>, p: Point2<f64>) -> Bounds2<f64> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt2_inside_bnd2`
[INFO] [stderr]    --> src/geometry.rs:275:8
[INFO] [stderr]     |
[INFO] [stderr] 275 | pub fn pnt2_inside_bnd2<T>(pt: Point2<T>, b: &Bounds2<T>) -> bool
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt2_inside_exclusive`
[INFO] [stderr]    --> src/geometry.rs:283:8
[INFO] [stderr]     |
[INFO] [stderr] 283 | pub fn pnt2_inside_exclusive<T>(pt: Point2<T>, b: &Bounds2<T>) -> bool
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `bnd2_expand`
[INFO] [stderr]    --> src/geometry.rs:291:8
[INFO] [stderr]     |
[INFO] [stderr] 291 | pub fn bnd2_expand(b: &Bounds2f, delta: f64) -> Bounds2f {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `has_nans`
[INFO] [stderr]    --> src/geometry.rs:301:12
[INFO] [stderr]     |
[INFO] [stderr] 301 |     pub fn has_nans(&self) -> bool {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3_permute`
[INFO] [stderr]    --> src/geometry.rs:475:8
[INFO] [stderr]     |
[INFO] [stderr] 475 | pub fn pnt3_permute<T>(v: &Point3<T>, x: usize, y: usize, z: usize) -> Point3<T>
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3_lerp`
[INFO] [stderr]    --> src/geometry.rs:491:8
[INFO] [stderr]     |
[INFO] [stderr] 491 | pub fn pnt3_lerp(t: f64, p0: &Point3f, p1: &Point3f) -> Point3f {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3_floor`
[INFO] [stderr]    --> src/geometry.rs:496:8
[INFO] [stderr]     |
[INFO] [stderr] 496 | pub fn pnt3_floor(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3_ceil`
[INFO] [stderr]    --> src/geometry.rs:505:8
[INFO] [stderr]     |
[INFO] [stderr] 505 | pub fn pnt3_ceil(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3_abs`
[INFO] [stderr]    --> src/geometry.rs:514:8
[INFO] [stderr]     |
[INFO] [stderr] 514 | pub fn pnt3_abs(p: &Point3<f64>) -> Point3<f64> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3_distance_squared`
[INFO] [stderr]    --> src/geometry.rs:530:8
[INFO] [stderr]     |
[INFO] [stderr] 530 | pub fn pnt3_distance_squared(p1: &Point3<f64>, p2: &Point3<f64>) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3_offset_ray_origin`
[INFO] [stderr]    --> src/geometry.rs:538:8
[INFO] [stderr]     |
[INFO] [stderr] 538 | pub fn pnt3_offset_ray_origin(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `vec2_dot`
[INFO] [stderr]    --> src/geometry.rs:671:8
[INFO] [stderr]     |
[INFO] [stderr] 671 | pub fn vec2_dot(v1: &Vector2<f64>, v2: &Vector2<f64>) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `has_nans`
[INFO] [stderr]    --> src/geometry.rs:678:12
[INFO] [stderr]     |
[INFO] [stderr] 678 |     pub fn has_nans(&self) -> bool {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `vec3_abs_dot_vec3`
[INFO] [stderr]    --> src/geometry.rs:879:8
[INFO] [stderr]     |
[INFO] [stderr] 879 | pub fn vec3_abs_dot_vec3(v1: &Vector3<f64>, v2: &Vector3<f64>) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `vec3_abs_dot_nrm`
[INFO] [stderr]    --> src/geometry.rs:884:8
[INFO] [stderr]     |
[INFO] [stderr] 884 | pub fn vec3_abs_dot_nrm(v1: &Vector3<f64>, n2: &Normal3<f64>) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `vec3_cross_nrm`
[INFO] [stderr]    --> src/geometry.rs:908:8
[INFO] [stderr]     |
[INFO] [stderr] 908 | pub fn vec3_cross_nrm(v1: &Vector3f, v2: &Normal3f) -> Vector3f {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `vec3_max_component`
[INFO] [stderr]    --> src/geometry.rs:923:8
[INFO] [stderr]     |
[INFO] [stderr] 923 | pub fn vec3_max_component(v: &Vector3<f64>) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `vec3_max_dimension`
[INFO] [stderr]    --> src/geometry.rs:928:8
[INFO] [stderr]     |
[INFO] [stderr] 928 | pub fn vec3_max_dimension(v: &Vector3<f64>) -> usize {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `vec3_permute`
[INFO] [stderr]    --> src/geometry.rs:944:8
[INFO] [stderr]     |
[INFO] [stderr] 944 | pub fn vec3_permute(v: &Vector3<f64>, x: usize, y: usize, z: usize) -> Vector3<f64> {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `vec3_coordinate_system`
[INFO] [stderr]    --> src/geometry.rs:958:8
[INFO] [stderr]     |
[INFO] [stderr] 958 | pub fn vec3_coordinate_system(v1: &Vector3f, v2: &mut Vector3f, v3: &mut Vector3f) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `spherical_direction`
[INFO] [stderr]    --> src/geometry.rs:976:8
[INFO] [stderr]     |
[INFO] [stderr] 976 | pub fn spherical_direction(sin_theta: f64, cos_theta: f64, phi: f64) -> Vector3f {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `spherical_direction_vec3`
[INFO] [stderr]    --> src/geometry.rs:987:8
[INFO] [stderr]     |
[INFO] [stderr] 987 | pub fn spherical_direction_vec3(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `spherical_theta`
[INFO] [stderr]     --> src/geometry.rs:1001:8
[INFO] [stderr]      |
[INFO] [stderr] 1001 | pub fn spherical_theta(v: &Vector3f) -> f64 {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `spherical_phi`
[INFO] [stderr]     --> src/geometry.rs:1006:8
[INFO] [stderr]      |
[INFO] [stderr] 1006 | pub fn spherical_phi(v: &Vector3f) -> f64 {
[INFO] [stderr]      |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `nrm_cross_vec3`
[INFO] [stderr]     --> src/geometry.rs:1181:8
[INFO] [stderr]      |
[INFO] [stderr] 1181 | pub fn nrm_cross_vec3(n1: &Normal3f, v2: &Vector3f) -> Vector3f {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `nrm_dot_nrm`
[INFO] [stderr]     --> src/geometry.rs:1199:8
[INFO] [stderr]      |
[INFO] [stderr] 1199 | pub fn nrm_dot_nrm<T>(n1: &Normal3<T>, n2: &Normal3<T>) -> T
[INFO] [stderr]      |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `nrm_dot_vec3`
[INFO] [stderr]     --> src/geometry.rs:1209:8
[INFO] [stderr]      |
[INFO] [stderr] 1209 | pub fn nrm_dot_vec3<T>(n1: &Normal3<T>, v2: &Vector3<T>) -> T
[INFO] [stderr]      |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `nrm_abs_dot_vec3`
[INFO] [stderr]     --> src/geometry.rs:1217:8
[INFO] [stderr]      |
[INFO] [stderr] 1217 | pub fn nrm_abs_dot_vec3(n1: &Normal3<f64>, v2: &Vector3<f64>) -> f64 {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `nrm_abs`
[INFO] [stderr]     --> src/geometry.rs:1222:8
[INFO] [stderr]      |
[INFO] [stderr] 1222 | pub fn nrm_abs(n: &Normal3<f64>) -> Normal3<f64> {
[INFO] [stderr]      |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `nrm_faceforward_vec3`
[INFO] [stderr]     --> src/geometry.rs:1232:8
[INFO] [stderr]      |
[INFO] [stderr] 1232 | pub fn nrm_faceforward_vec3(n: &Normal3f, v: &Vector3f) -> Normal3f {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `nrm_faceforward_nrm`
[INFO] [stderr]     --> src/geometry.rs:1242:8
[INFO] [stderr]      |
[INFO] [stderr] 1242 | pub fn nrm_faceforward_nrm(n: &Normal3f, n2: &Normal3f) -> Normal3f {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `bnd2_intersect_bnd2`
[INFO] [stderr]     --> src/geometry.rs:1341:8
[INFO] [stderr]      |
[INFO] [stderr] 1341 | pub fn bnd2_intersect_bnd2<T>(b1: &Bounds2<T>, b2: &Bounds2<T>) -> Bounds2<T>
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `corner`
[INFO] [stderr]     --> src/geometry.rs:1380:12
[INFO] [stderr]      |
[INFO] [stderr] 1380 |     pub fn corner(&self, corner: u8) -> Point3<T>
[INFO] [stderr]      |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `diagonal`
[INFO] [stderr]     --> src/geometry.rs:1406:12
[INFO] [stderr]      |
[INFO] [stderr] 1406 |     pub fn diagonal(&self) -> Vector3<T>
[INFO] [stderr]      |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `surface_area`
[INFO] [stderr]     --> src/geometry.rs:1412:12
[INFO] [stderr]      |
[INFO] [stderr] 1412 |     pub fn surface_area(&self) -> T
[INFO] [stderr]      |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `maximum_extent`
[INFO] [stderr]     --> src/geometry.rs:1421:12
[INFO] [stderr]      |
[INFO] [stderr] 1421 |     pub fn maximum_extent(&self) -> u8
[INFO] [stderr]      |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `offset`
[INFO] [stderr]     --> src/geometry.rs:1434:12
[INFO] [stderr]      |
[INFO] [stderr] 1434 |     pub fn offset(&self, p: &Point3<T>) -> Vector3<T>
[INFO] [stderr]      |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `new`
[INFO] [stderr]     --> src/geometry.rs:1466:12
[INFO] [stderr]      |
[INFO] [stderr] 1466 |     pub fn new(p1: Point3<f64>, p2: Point3<f64>) -> Self {
[INFO] [stderr]      |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `lerp`
[INFO] [stderr]     --> src/geometry.rs:1479:12
[INFO] [stderr]      |
[INFO] [stderr] 1479 |     pub fn lerp(&self, t: &Point3f) -> Point3f {
[INFO] [stderr]      |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `bnd3_union_bnd3`
[INFO] [stderr]     --> src/geometry.rs:1540:8
[INFO] [stderr]      |
[INFO] [stderr] 1540 | pub fn bnd3_union_bnd3(b1: &Bounds3<f64>, b2: &Bounds3<f64>) -> Bounds3<f64> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3i_inside_exclusive`
[INFO] [stderr]     --> src/geometry.rs:1565:8
[INFO] [stderr]      |
[INFO] [stderr] 1565 | pub fn pnt3i_inside_exclusive(p: &Point3i, b: &Bounds3i) -> bool {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `pnt3f_inside_exclusive`
[INFO] [stderr]     --> src/geometry.rs:1575:8
[INFO] [stderr]      |
[INFO] [stderr] 1575 | pub fn pnt3f_inside_exclusive(p: &Point3f, b: &Bounds3f) -> bool {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `bnd3_expand`
[INFO] [stderr]     --> src/geometry.rs:1585:8
[INFO] [stderr]      |
[INFO] [stderr] 1585 | pub fn bnd3_expand(b: &Bounds3f, delta: f64) -> Bounds3f {
[INFO] [stderr]      |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `ONE_MINUS_EPSILON`
[INFO] [stderr]  --> src/misc.rs:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub const ONE_MINUS_EPSILON: f64 = 1.0 - MACHINE_EPSILON;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `float_to_bits`
[INFO] [stderr]   --> src/misc.rs:24:8
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub fn float_to_bits(f: f64) -> u32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `bits_to_float`
[INFO] [stderr]   --> src/misc.rs:52:8
[INFO] [stderr]    |
[INFO] [stderr] 52 | pub fn bits_to_float(ui: u32) -> f64 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `next_float_up`
[INFO] [stderr]   --> src/misc.rs:66:8
[INFO] [stderr]    |
[INFO] [stderr] 66 | pub fn next_float_up(v: f64) -> f64 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `next_float_down`
[INFO] [stderr]   --> src/misc.rs:83:8
[INFO] [stderr]    |
[INFO] [stderr] 83 | pub fn next_float_down(v: f64) -> f64 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `transpose`
[INFO] [stderr]   --> src/transform.rs:52:12
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub fn transpose(m: &Matrix4x4) -> Matrix4x4 {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `solve_linear_system_2x2`
[INFO] [stderr]    --> src/transform.rs:151:8
[INFO] [stderr]     |
[INFO] [stderr] 151 | pub fn solve_linear_system_2x2(a: [[f64; 2]; 2], b: [f64; 2], x0: &mut f64, x1: &mut f64) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `new`
[INFO] [stderr]    --> src/transform.rs:194:12
[INFO] [stderr]     |
[INFO] [stderr] 194 |     pub fn new(
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `is_identity`
[INFO] [stderr]    --> src/transform.rs:227:12
[INFO] [stderr]     |
[INFO] [stderr] 227 |     pub fn is_identity(&self) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `swaps_handedness`
[INFO] [stderr]    --> src/transform.rs:245:12
[INFO] [stderr]     |
[INFO] [stderr] 245 |     pub fn swaps_handedness(&self) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `rotate_x`
[INFO] [stderr]    --> src/transform.rs:289:12
[INFO] [stderr]     |
[INFO] [stderr] 289 |     pub fn rotate_x(theta: f64) -> Transform {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `rotate_y`
[INFO] [stderr]    --> src/transform.rs:301:12
[INFO] [stderr]     |
[INFO] [stderr] 301 |     pub fn rotate_y(theta: f64) -> Transform {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `rotate_z`
[INFO] [stderr]    --> src/transform.rs:313:12
[INFO] [stderr]     |
[INFO] [stderr] 313 |     pub fn rotate_z(theta: f64) -> Transform {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `rotate`
[INFO] [stderr]    --> src/transform.rs:325:12
[INFO] [stderr]     |
[INFO] [stderr] 325 |     pub fn rotate(theta: f64, axis: &Vector3f) -> Transform {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `orthographic`
[INFO] [stderr]    --> src/transform.rs:388:12
[INFO] [stderr]     |
[INFO] [stderr] 388 |     pub fn orthographic(z_near: f64, z_far: f64) -> Transform {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `transform_normal`
[INFO] [stderr]    --> src/transform.rs:462:12
[INFO] [stderr]     |
[INFO] [stderr] 462 |     pub fn transform_normal(&self, n: &Normal3f) -> Normal3f {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `transform_bounds`
[INFO] [stderr]    --> src/transform.rs:492:12
[INFO] [stderr]     |
[INFO] [stderr] 492 |     pub fn transform_bounds(&self, b: &Bounds3f) -> Bounds3f {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `transform_point_with_abs_error`
[INFO] [stderr]    --> src/transform.rs:601:12
[INFO] [stderr]     |
[INFO] [stderr] 601 |     pub fn transform_point_with_abs_error(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `transform_vector_with_error`
[INFO] [stderr]    --> src/transform.rs:658:12
[INFO] [stderr]     |
[INFO] [stderr] 658 |     pub fn transform_vector_with_error(&self, v: &Vector3f, abs_error: &mut Vector3f) -> Vector3f {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: 79 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.24s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/rs_ray_toy-068e370211bf26a2
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test primitives::tests::test_plane ... ok
[INFO] [stdout] test primitives::tests::test_sph ... ok
[INFO] [stdout] test geometry::tests::test_vec3 ... ok
[INFO] [stdout] test geometry::tests::test_bound3 ... ok
[INFO] [stderr] error: test failed, to rerun pass '--lib'
[INFO] [stdout] test camera::tests::test_camera ... FAILED
[INFO] [stdout] test core::tests::test_core ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- camera::tests::test_camera stdout ----
[INFO] [stdout] Generated ray direction 1:: Vector3 { x: 0.0, y: 0.0, z: 0.0 }
[INFO] [stdout] Generated ray direction 2:: Vector3 { x: 0.0, y: 0.0, z: 0.0 }
[INFO] [stdout] Generated ray direction 3:: Vector3 { x: 0.0, y: 0.0, z: 0.0 }
[INFO] [stdout] Generated ray direction 4:: Vector3 { x: 0.0, y: 0.0, z: 0.0 }
[INFO] [stdout] Generated ray direction 5:: Vector3 { x: 0.0, y: 0.0, z: 0.0 }
[INFO] [stdout] thread 'camera::tests::test_camera' panicked at 'assertion failed: s2.intersect(&mut r4, 8)', src/camera.rs:225:9
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55ab12d81940 - std::backtrace_rs::backtrace::libunwind::trace::h577ea05e9ca4629a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/../../backtrace/src/backtrace/libunwind.rs:96
[INFO] [stdout]    1:     0x55ab12d81940 - std::backtrace_rs::backtrace::trace_unsynchronized::h50b9b72b84c7dd56
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/../../backtrace/src/backtrace/mod.rs:66
[INFO] [stdout]    2:     0x55ab12d81940 - std::sys_common::backtrace::_print_fmt::h6541cf9823837fac
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:79
[INFO] [stdout]    3:     0x55ab12d81940 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hf64fbff071026df5
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:58
[INFO] [stdout]    4:     0x55ab12da4afc - core::fmt::write::h9ddafa4860d8adff
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/fmt/mod.rs:1082
[INFO] [stdout]    5:     0x55ab12cd3ea5 - std::io::Write::write_fmt::h50a71e2460ce07da
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/io/mod.rs:1514
[INFO] [stdout]    6:     0x55ab12d7c6b1 - std::io::impls::<impl std::io::Write for alloc::boxed::Box<W>>::write_fmt::h9bbd3fed8160d0d2
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/io/impls.rs:176
[INFO] [stdout]    7:     0x55ab12d83dc0 - std::sys_common::backtrace::_print::ha25f9ff5080d886d
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:61
[INFO] [stdout]    8:     0x55ab12d83dc0 - std::sys_common::backtrace::print::h213e8aa8dc5405c0
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:48
[INFO] [stdout]    9:     0x55ab12d83dc0 - std::panicking::default_hook::{{closure}}::h6482fae49ef9d963
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:200
[INFO] [stdout]   10:     0x55ab12d83ab6 - std::panicking::default_hook::he30ad7589e0970f9
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:216
[INFO] [stdout]   11:     0x55ab12d84423 - std::panicking::rust_panic_with_hook::haa1ed36ada4ffb03
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:569
[INFO] [stdout]   12:     0x55ab12d5ef2c - std::panicking::begin_panic::{{closure}}::hcbbf94f9ae561871
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:498
[INFO] [stdout]   13:     0x55ab12d5f539 - std::sys_common::backtrace::__rust_end_short_backtrace::h2f11866b527b9b70
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:153
[INFO] [stdout]   14:     0x55ab12d5ee57 - std::panicking::begin_panic::h72c0e8eb7d217218
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:497
[INFO] [stdout]   15:     0x55ab12cd0e43 - rs_ray_toy::camera::tests::test_camera::h22f8f812276884f0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/camera.rs:225
[INFO] [stdout]   16:     0x55ab12cd07ba - rs_ray_toy::camera::tests::test_camera::{{closure}}::h687608987ab0db27
[INFO] [stdout]                                at /opt/rustwide/workdir/src/camera.rs:183
[INFO] [stdout]   17:     0x55ab12ccd61e - core::ops::function::FnOnce::call_once::he3d57387a77bb0f4
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   18:     0x55ab12cfc783 - core::ops::function::FnOnce::call_once::hd04d57b5cf16f85a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   19:     0x55ab12cfc783 - test::__rust_begin_short_backtrace::hd8e9a8c5a2e43388
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:517
[INFO] [stdout]   20:     0x55ab12cfac53 - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h3c3db8a500c1a19a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   21:     0x55ab12cfac53 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h043e9ebcbe360c80
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:308
[INFO] [stdout]   22:     0x55ab12cfac53 - std::panicking::try::do_call::h47c2fb275506c2e8
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:373
[INFO] [stdout]   23:     0x55ab12cfac53 - std::panicking::try::h569c20f0e99453b4
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:337
[INFO] [stdout]   24:     0x55ab12cfac53 - std::panic::catch_unwind::hb33c6d0f01540d23
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:379
[INFO] [stdout]   25:     0x55ab12cfac53 - test::run_test_in_process::hc0ce562d167e51cf
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:544
[INFO] [stdout]   26:     0x55ab12cfac53 - test::run_test::run_test_inner::{{closure}}::hd3120982fcd71544
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:450
[INFO] [stdout]   27:     0x55ab12cd32d6 - std::sys_common::backtrace::__rust_begin_short_backtrace::h84f8bc12cc4cdac6
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:137
[INFO] [stdout]   28:     0x55ab12cd8505 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hb8b5fa0ba425d4db
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/thread/mod.rs:458
[INFO] [stdout]   29:     0x55ab12cd8505 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc4b84b244cf55f75
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:308
[INFO] [stdout]   30:     0x55ab12cd8505 - std::panicking::try::do_call::ha31922ad8fa17753
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:373
[INFO] [stdout]   31:     0x55ab12cd8505 - std::panicking::try::h38a6da203722ae6e
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:337
[INFO] [stdout]   32:     0x55ab12cd8505 - std::panic::catch_unwind::h83afce167c9062b9
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:379
[INFO] [stdout]   33:     0x55ab12cd8505 - std::thread::Builder::spawn_unchecked::{{closure}}::h160689155590a70c
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/thread/mod.rs:457
[INFO] [stdout]   34:     0x55ab12cd8505 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7dbf17a455132a46
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   35:     0x55ab12d8abda - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h670c50864ac2cb92
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   36:     0x55ab12d8abda - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h2511952749086d81
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   37:     0x55ab12d8abda - std::sys::unix::thread::Thread::new::thread_start::h5ad4ddffe24373a8
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys/unix/thread.rs:87
[INFO] [stdout]   38:     0x7f9314b8e609 - start_thread
[INFO] [stdout]   39:     0x7f9314a9a103 - clone
[INFO] [stdout]   40:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- core::tests::test_core stdout ----
[INFO] [stdout] Random f64 :: 0.4157455694572538
[INFO] [stdout] Random f64 :: 0.08472400784387357
[INFO] [stdout] Random f64 :: 0.2532174009236723
[INFO] [stdout] Random f64 :: 0.6048175556952727
[INFO] [stdout] Random f64 :: 0.6437555045676128
[INFO] [stdout] Random f64 :: 0.4110205816782625
[INFO] [stdout] Random f64 :: 0.49318205310430197
[INFO] [stdout] Random f64 :: 0.3388711433091699
[INFO] [stdout] Random f64 :: 0.15192625768083612
[INFO] [stdout] Random f64 :: 0.6099978938551057
[INFO] [stdout] Random f64 :: 0.7552000305084899
[INFO] [stdout] Random f64 :: 0.25607466201352347
[INFO] [stdout] Random f64 :: 0.8826168800883157
[INFO] [stdout] Random f64 :: 0.6601371804752239
[INFO] [stdout] Random f64 :: 0.5976773357554134
[INFO] [stdout] Random f64 :: 0.7256919905066131
[INFO] [stdout] Random f64 :: 0.2500325548648963
[INFO] [stdout] Random f64 :: 0.22848338811028746
[INFO] [stdout] Random f64 :: 0.020265629201792867
[INFO] [stdout] Random f64 :: 0.6552409531399583
[INFO] [stdout] Random f64 :: 0.19570064878532634
[INFO] [stdout] Random f64 :: 0.007062577750258869
[INFO] [stdout] Random f64 :: 0.3511797915462601
[INFO] [stdout] Random f64 :: 0.05483359664340892
[INFO] [stdout] Random f64 :: 0.6603253254302627
[INFO] [stdout] Random f64 :: 0.7544729762156508
[INFO] [stdout] Random f64 :: 0.9844914632564421
[INFO] [stdout] Random f64 :: 0.8615466916999871
[INFO] [stdout] Random f64 :: 0.32876812915389175
[INFO] [stdout] Random f64 :: 0.8824910236597894
[INFO] [stdout] Random f64 :: 0.3358607618165137
[INFO] [stdout] Random f64 :: 0.10962537467796296
[INFO] [stdout] Random f64 :: 0.18002026898861812
[INFO] [stdout] Random f64 :: 0.8878350629916557
[INFO] [stdout] Random f64 :: 0.8808758742271744
[INFO] [stdout] Random f64 :: 0.1096520542693481
[INFO] [stdout] Random f64 :: 0.4780045727754575
[INFO] [stdout] Random f64 :: 0.789106380893302
[INFO] [stdout] Random f64 :: 0.7398699360864315
[INFO] [stdout] Random f64 :: 0.7890106124815462
[INFO] [stdout] Random f64 :: 0.021872773167310067
[INFO] [stdout] Random f64 :: 0.07450205806289023
[INFO] [stdout] Random f64 :: 0.6875781580651977
[INFO] [stdout] Random f64 :: 0.9024297295358868
[INFO] [stdout] Random f64 :: 0.6276337421135286
[INFO] [stdout] Random f64 :: 0.18905037909488254
[INFO] [stdout] Random f64 :: 0.5119803921086568
[INFO] [stdout] Random f64 :: 0.08315248260609565
[INFO] [stdout] Random f64 :: 0.31337539873508946
[INFO] [stdout] Random f64 :: 0.34162500237304305
[INFO] [stdout] Random f64 :: 0.4083991825953944
[INFO] [stdout] Random f64 :: 0.3597957273088219
[INFO] [stdout] Random f64 :: 0.5141539802659079
[INFO] [stdout] Random f64 :: 0.417945843950597
[INFO] [stdout] Random f64 :: 0.11397337270032193
[INFO] [stdout] Random f64 :: 0.036974764136841975
[INFO] [stdout] Random f64 :: 0.2040507570634632
[INFO] [stdout] Random f64 :: 0.6026174770085571
[INFO] [stdout] Random f64 :: 0.31333409843464477
[INFO] [stdout] Random f64 :: 0.25201782934605477
[INFO] [stdout] Random f64 :: 0.8057100200458662
[INFO] [stdout] Random f64 :: 0.02586709210995697
[INFO] [stdout] Random f64 :: 0.9041714731334443
[INFO] [stdout] Random f64 :: 0.370851402416673
[INFO] [stdout] Random f64 :: 0.9059259432298347
[INFO] [stdout] Random f64 :: 0.7237881417380893
[INFO] [stdout] Random f64 :: 0.6683957188904515
[INFO] [stdout] Random f64 :: 0.7994921388647646
[INFO] [stdout] Random f64 :: 0.9323935495057555
[INFO] [stdout] Random f64 :: 0.751344702560132
[INFO] [stdout] Random f64 :: 0.9955668203171792
[INFO] [stdout] Random f64 :: 0.8840814838827818
[INFO] [stdout] Random f64 :: 0.36813749370331994
[INFO] [stdout] Random f64 :: 0.2770214721519666
[INFO] [stdout] Random f64 :: 0.38990946447207864
[INFO] [stdout] Random f64 :: 0.06079653832483989
[INFO] [stdout] Random f64 :: 0.292945486880137
[INFO] [stdout] Random f64 :: 0.5658656631346403
[INFO] [stdout] Random f64 :: 0.7147126817097061
[INFO] [stdout] Random f64 :: 0.6130329943464989
[INFO] [stdout] Random f64 :: 0.7741143368010144
[INFO] [stdout] Random f64 :: 0.08587894846759025
[INFO] [stdout] Random f64 :: 0.2275233640109079
[INFO] [stdout] Random f64 :: 0.7501346803252159
[INFO] [stdout] Random f64 :: 0.42837084445871587
[INFO] [stdout] Random f64 :: 0.2696145721204979
[INFO] [stdout] Random f64 :: 0.12937362166286115
[INFO] [stdout] Random f64 :: 0.7896040486575137
[INFO] [stdout] Random f64 :: 0.9362059725713465
[INFO] [stdout] Random f64 :: 0.06007395309590591
[INFO] [stdout] Random f64 :: 0.5259939814797802
[INFO] [stdout] Random f64 :: 0.4271462318036401
[INFO] [stdout] Random f64 :: 0.7239740598442325
[INFO] [stdout] Random f64 :: 0.8734937332190171
[INFO] [stdout] Random f64 :: 0.9715777706754266
[INFO] [stdout] Random f64 :: 0.7940511646067808
[INFO] [stdout] Random f64 :: 0.5039257093124738
[INFO] [stdout] Random f64 :: 0.5179791353558483
[INFO] [stdout] Random f64 :: 0.8159271462415933
[INFO] [stdout] Random f64 :: 0.47378322721192034
[INFO] [stdout] Random f64 :: 0.18473004942406712
[INFO] [stdout] Random f64 :: 0.4830221042337739
[INFO] [stdout] Random f64 :: 0.3879514650367435
[INFO] [stdout] Random f64 :: 0.2584186985884771
[INFO] [stdout] Random f64 :: 0.3591620004974371
[INFO] [stdout] Random f64 :: 0.2827802651263055
[INFO] [stdout] Random f64 :: 0.7875647097489806
[INFO] [stdout] Random f64 :: 0.4370560754187792
[INFO] [stdout] Random f64 :: 0.3254572986903561
[INFO] [stdout] Random f64 :: 0.03690172721347795
[INFO] [stdout] Random f64 :: 0.16168645362391
[INFO] [stdout] Random f64 :: 0.9174349043698852
[INFO] [stdout] Random f64 :: 0.3560537418821158
[INFO] [stdout] Random f64 :: 0.10526826025609293
[INFO] [stdout] Random f64 :: 0.1494154631349751
[INFO] [stdout] Random f64 :: 0.9804850854350631
[INFO] [stdout] Random f64 :: 0.701744844075693
[INFO] [stdout] Random f64 :: 0.013579451273526999
[INFO] [stdout] Random f64 :: 0.32149800941668494
[INFO] [stdout] Random f64 :: 0.23662989285322256
[INFO] [stdout] Random f64 :: 0.46010142415167976
[INFO] [stdout] Random f64 :: 0.9226178067859475
[INFO] [stdout] Random f64 :: 0.5006150360922372
[INFO] [stdout] Random f64 :: 0.23656532316452927
[INFO] [stdout] Random f64 :: 0.20621808512435036
[INFO] [stdout] Random f64 :: 0.06219660263775573
[INFO] [stdout] Random f64 :: 0.6864957053332621
[INFO] [stdout] Random f64 :: 0.6801778650833329
[INFO] [stdout] thread 'core::tests::test_core' panicked at 'explicit panic', src/core.rs:226:9
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55ab12d81940 - std::backtrace_rs::backtrace::libunwind::trace::h577ea05e9ca4629a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/../../backtrace/src/backtrace/libunwind.rs:96
[INFO] [stdout]    1:     0x55ab12d81940 - std::backtrace_rs::backtrace::trace_unsynchronized::h50b9b72b84c7dd56
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/../../backtrace/src/backtrace/mod.rs:66
[INFO] [stdout]    2:     0x55ab12d81940 - std::sys_common::backtrace::_print_fmt::h6541cf9823837fac
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:79
[INFO] [stdout]    3:     0x55ab12d81940 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hf64fbff071026df5
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:58
[INFO] [stdout]    4:     0x55ab12da4afc - core::fmt::write::h9ddafa4860d8adff
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/fmt/mod.rs:1082
[INFO] [stdout]    5:     0x55ab12cd3ea5 - std::io::Write::write_fmt::h50a71e2460ce07da
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/io/mod.rs:1514
[INFO] [stdout]    6:     0x55ab12d7c6b1 - std::io::impls::<impl std::io::Write for alloc::boxed::Box<W>>::write_fmt::h9bbd3fed8160d0d2
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/io/impls.rs:176
[INFO] [stdout]    7:     0x55ab12d83dc0 - std::sys_common::backtrace::_print::ha25f9ff5080d886d
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:61
[INFO] [stdout]    8:     0x55ab12d83dc0 - std::sys_common::backtrace::print::h213e8aa8dc5405c0
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:48
[INFO] [stdout]    9:     0x55ab12d83dc0 - std::panicking::default_hook::{{closure}}::h6482fae49ef9d963
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:200
[INFO] [stdout]   10:     0x55ab12d83ab6 - std::panicking::default_hook::he30ad7589e0970f9
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:216
[INFO] [stdout]   11:     0x55ab12d84423 - std::panicking::rust_panic_with_hook::haa1ed36ada4ffb03
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:569
[INFO] [stdout]   12:     0x55ab12d5ef2c - std::panicking::begin_panic::{{closure}}::hcbbf94f9ae561871
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:498
[INFO] [stdout]   13:     0x55ab12d5f539 - std::sys_common::backtrace::__rust_end_short_backtrace::h2f11866b527b9b70
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:153
[INFO] [stdout]   14:     0x55ab12d5ee57 - std::panicking::begin_panic::h72c0e8eb7d217218
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:497
[INFO] [stdout]   15:     0x55ab12ccf1ce - rs_ray_toy::core::tests::test_core::hfdf7113aa4dd5b6d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/core.rs:226
[INFO] [stdout]   16:     0x55ab12ccf13a - rs_ray_toy::core::tests::test_core::{{closure}}::h0fd201db3bb033e8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/core.rs:222
[INFO] [stdout]   17:     0x55ab12ccd54e - core::ops::function::FnOnce::call_once::h30684e70a055a39e
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   18:     0x55ab12cfc783 - core::ops::function::FnOnce::call_once::hd04d57b5cf16f85a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   19:     0x55ab12cfc783 - test::__rust_begin_short_backtrace::hd8e9a8c5a2e43388
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:517
[INFO] [stdout]   20:     0x55ab12cfac53 - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h3c3db8a500c1a19a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   21:     0x55ab12cfac53 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h043e9ebcbe360c80
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:308
[INFO] [stdout]   22:     0x55ab12cfac53 - std::panicking::try::do_call::h47c2fb275506c2e8
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:373
[INFO] [stdout]   23:     0x55ab12cfac53 - std::panicking::try::h569c20f0e99453b4
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:337
[INFO] [stdout]   24:     0x55ab12cfac53 - std::panic::catch_unwind::hb33c6d0f01540d23
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:379
[INFO] [stdout]   25:     0x55ab12cfac53 - test::run_test_in_process::hc0ce562d167e51cf
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:544
[INFO] [stdout]   26:     0x55ab12cfac53 - test::run_test::run_test_inner::{{closure}}::hd3120982fcd71544
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:450
[INFO] [stdout]   27:     0x55ab12cd32d6 - std::sys_common::backtrace::__rust_begin_short_backtrace::h84f8bc12cc4cdac6
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:137
[INFO] [stdout]   28:     0x55ab12cd8505 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hb8b5fa0ba425d4db
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/thread/mod.rs:458
[INFO] [stdout]   29:     0x55ab12cd8505 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc4b84b244cf55f75
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:308
[INFO] [stdout]   30:     0x55ab12cd8505 - std::panicking::try::do_call::ha31922ad8fa17753
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:373
[INFO] [stdout]   31:     0x55ab12cd8505 - std::panicking::try::h38a6da203722ae6e
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:337
[INFO] [stdout]   32:     0x55ab12cd8505 - std::panic::catch_unwind::h83afce167c9062b9
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:379
[INFO] [stdout]   33:     0x55ab12cd8505 - std::thread::Builder::spawn_unchecked::{{closure}}::h160689155590a70c
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/thread/mod.rs:457
[INFO] [stdout]   34:     0x55ab12cd8505 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7dbf17a455132a46
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   35:     0x55ab12d8abda - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h670c50864ac2cb92
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   36:     0x55ab12d8abda - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h2511952749086d81
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   37:     0x55ab12d8abda - std::sys::unix::thread::Thread::new::thread_start::h5ad4ddffe24373a8
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys/unix/thread.rs:87
[INFO] [stdout]   38:     0x7f9314b8e609 - start_thread
[INFO] [stdout]   39:     0x7f9314a9a103 - clone
[INFO] [stdout]   40:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     camera::tests::test_camera
[INFO] [stdout]     core::tests::test_core
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 4 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "983a28f8ddd036265df8b1dce9a430ca0abd223d80592aa6d03b0504de29f2d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "983a28f8ddd036265df8b1dce9a430ca0abd223d80592aa6d03b0504de29f2d0", kill_on_drop: false }`
[INFO] [stdout] 983a28f8ddd036265df8b1dce9a430ca0abd223d80592aa6d03b0504de29f2d0
