[INFO] updating cached repository https://github.com/blitzcode/rust-exp
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 2d380104ebbc1c0c1167f07f93dd9e9b3ed32472
[INFO] checking blitzcode/rust-exp against master#bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fblitzcode%2Frust-exp" "/workspace/builds/worker-6/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/blitzcode/rust-exp on toolchain bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/blitzcode/rust-exp
[INFO] finished tweaking git repo https://github.com/blitzcode/rust-exp
[INFO] tweaked toml for git repo https://github.com/blitzcode/rust-exp written to /workspace/builds/worker-6/source/Cargo.toml
[INFO] crate git repo https://github.com/blitzcode/rust-exp already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr] error: the lock file /workspace/builds/worker-6/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] f9889182330dc58a10a5e71aadf1c741e2483e0da8363f41e1f6974514c15812
[INFO] running `"docker" "start" "-a" "f9889182330dc58a10a5e71aadf1c741e2483e0da8363f41e1f6974514c15812"`
[INFO] [stderr]    Compiling stb_image v0.2.2
[INFO] [stderr]    Compiling paste-impl v0.1.10
[INFO] [stderr]     Checking paste v0.1.10
[INFO] [stderr]     Checking simba v0.1.2
[INFO] [stderr]     Checking nalgebra v0.21.0
[INFO] [stderr]     Checking rust_exp v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] error[E0432]: unresolved imports `rand::distributions::IndependentSample`, `rand::distributions::Range`
[INFO] [stderr]  --> rs-src/nbody.rs:5:27
[INFO] [stderr]   |
[INFO] [stderr] 5 | use rand::distributions::{IndependentSample, Range};
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^  ^^^^^ no `Range` in `distributions`
[INFO] [stderr]   |                           |
[INFO] [stderr]   |                           no `IndependentSample` in `distributions`
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `na::Diagonal`, `na::Inverse`, `na::Transpose`
[INFO] [stderr]  --> rs-src/rasterizer.rs:3:16
[INFO] [stderr]   |
[INFO] [stderr] 3 | use na::{Norm, Diagonal, Inverse, Transpose};
[INFO] [stderr]   |                ^^^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stderr]   |                |         |        |
[INFO] [stderr]   |                |         |        no `Transpose` in the root
[INFO] [stderr]   |                |         |        help: a similar name exists in the module: `Transform`
[INFO] [stderr]   |                |         no `Inverse` in the root
[INFO] [stderr]   |                no `Diagonal` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved import `time::PreciseTime`
[INFO] [stderr]   --> rs-src/rasterizer.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 13 | use time::{PreciseTime};
[INFO] [stderr]    |            ^^^^^^^^^^^ no `PreciseTime` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `normalize` in crate `na`
[INFO] [stderr]   --> rs-src/rasterizer.rs:51:9
[INFO] [stderr]    |
[INFO] [stderr] 51 |     na::normalize(&na::cross(&(*v1 - *v0), &(*v2 - *v0)))
[INFO] [stderr]    |         ^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `cross` in crate `na`
[INFO] [stderr]   --> rs-src/rasterizer.rs:51:24
[INFO] [stderr]    |
[INFO] [stderr] 51 |     na::normalize(&na::cross(&(*v1 - *v0), &(*v2 - *v0)))
[INFO] [stderr]    |                        ^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]   --> rs-src/rasterizer.rs:62:20
[INFO] [stderr]    |
[INFO] [stderr] 62 |     *i - (*n * na::dot(n, i) * 2.0)
[INFO] [stderr]    |                    ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `to_homogeneous` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:145:21
[INFO] [stderr]     |
[INFO] [stderr] 145 |         scale * na::to_homogeneous(&transf)
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `normalize` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:731:9
[INFO] [stderr]     |
[INFO] [stderr] 731 |     na::normalize(&match face {
[INFO] [stderr]     |         ^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:837:35
[INFO] [stderr]     |
[INFO] [stderr] 837 |     let ldotn     = na::clamp(na::dot(&l, &n), 0.0, 1.0);
[INFO] [stderr]     |                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:852:51
[INFO] [stderr]     |
[INFO] [stderr] 852 |         let ldotn =                 na::clamp(na::dot(&l, &n), 0.0, 1.0);
[INFO] [stderr]     |                                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:853:51
[INFO] [stderr]     |
[INFO] [stderr] 853 |         let ldotr = fast_unit_pow16(na::clamp(na::dot(&l, &r), 0.0, 1.0));
[INFO] [stderr]     |                                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:858:51
[INFO] [stderr]     |
[INFO] [stderr] 858 |         let ldotn =                 na::clamp(na::dot(&-l, &n), 0.0, 1.0);
[INFO] [stderr]     |                                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:859:51
[INFO] [stderr]     |
[INFO] [stderr] 859 |         let ldotr = fast_unit_pow16(na::clamp(na::dot(&-l, &r), 0.0, 1.0));
[INFO] [stderr]     |                                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:903:41
[INFO] [stderr]     |
[INFO] [stderr] 903 |     let fresnel = fresnel_conductor(na::dot(&-eye, &n), 1.0, 1.1);
[INFO] [stderr]     |                                         ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:917:41
[INFO] [stderr]     |
[INFO] [stderr] 917 |     let fresnel = fresnel_conductor(na::dot(&-eye, &n), 1.0, 1.1);
[INFO] [stderr]     |                                         ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:989:32
[INFO] [stderr]     |
[INFO] [stderr] 989 |     let ldotn  = na::clamp(na::dot(&l, &n), 0.0, 1.0);
[INFO] [stderr]     |                                ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1006:32
[INFO] [stderr]      |
[INFO] [stderr] 1006 |     let ldotn  = na::clamp(na::dot(&l, &n), 0.0, 1.0);
[INFO] [stderr]      |                                ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1024:35
[INFO] [stderr]      |
[INFO] [stderr] 1024 |     let w   = 1.0 - na::clamp(na::dot(&h, &eye), 0.0, 1.0);
[INFO] [stderr]      |                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `from_homogeneous` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1202:35
[INFO] [stderr]      |
[INFO] [stderr] 1202 |     let mesh_to_world_it_33 = na::from_homogeneous::<Matrix4<f32>, Matrix3<f32>>
[INFO] [stderr]      |                                   ^^^^^^^^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `to_homogeneous` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1208:56
[INFO] [stderr]      |
[INFO] [stderr] 1208 |         let world_h: Point4<f32> = mesh_to_world * na::to_homogeneous(&src.p);
[INFO] [stderr]      |                                                        ^^^^^^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `normalize` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1237:21
[INFO] [stderr]      |
[INFO] [stderr] 1237 |     let zaxis = na::normalize(&(*eye - *at));
[INFO] [stderr]      |                     ^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `normalize` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1238:21
[INFO] [stderr]      |
[INFO] [stderr] 1238 |     let xaxis = na::normalize(&na::cross(up, &zaxis));
[INFO] [stderr]      |                     ^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `cross` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1238:36
[INFO] [stderr]      |
[INFO] [stderr] 1238 |     let xaxis = na::normalize(&na::cross(up, &zaxis));
[INFO] [stderr]      |                                    ^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `cross` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1239:21
[INFO] [stderr]      |
[INFO] [stderr] 1239 |     let yaxis = na::cross(&zaxis, &xaxis);
[INFO] [stderr]      |                     ^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1241:49
[INFO] [stderr]      |
[INFO] [stderr] 1241 |     Matrix4::new(xaxis.x, xaxis.y, xaxis.z, na::dot(&-eye.to_vector(), &xaxis),
[INFO] [stderr]      |                                                 ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1242:49
[INFO] [stderr]      |
[INFO] [stderr] 1242 |                  yaxis.x, yaxis.y, yaxis.z, na::dot(&-eye.to_vector(), &yaxis),
[INFO] [stderr]      |                                                 ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1243:49
[INFO] [stderr]      |
[INFO] [stderr] 1243 |                  zaxis.x, zaxis.y, zaxis.z, na::dot(&-eye.to_vector(), &zaxis),
[INFO] [stderr]      |                                                 ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> rs-src/rasterizer.rs:1791:34
[INFO] [stderr]      |
[INFO] [stderr] 1791 |     let benchmarks:[(&str, i64, &Fn() -> ()); 12] = [
[INFO] [stderr]      |                                  ^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> ()`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]    --> rs-src/rasterizer.rs:165:28
[INFO] [stderr]     |
[INFO] [stderr] 165 | ...                   Error::description(&why)),
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]    --> rs-src/rasterizer.rs:174:28
[INFO] [stderr]     |
[INFO] [stderr] 174 | ...                   Error::description(&why)),
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]    --> rs-src/rasterizer.rs:192:40
[INFO] [stderr]     |
[INFO] [stderr] 192 | ...                   Error::description(&why),
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]    --> rs-src/rasterizer.rs:274:40
[INFO] [stderr]     |
[INFO] [stderr] 274 | ...                   Error::description(&why),
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `rand::distributions::IndependentSample`, `rand::distributions::Range`
[INFO] [stderr]  --> rs-src/nbody.rs:5:27
[INFO] [stderr]   |
[INFO] [stderr] 5 | use rand::distributions::{IndependentSample, Range};
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^  ^^^^^ no `Range` in `distributions`
[INFO] [stderr]   |                           |
[INFO] [stderr]   |                           no `IndependentSample` in `distributions`
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `na::Diagonal`, `na::Inverse`, `na::Transpose`
[INFO] [stderr]  --> rs-src/rasterizer.rs:3:16
[INFO] [stderr]   |
[INFO] [stderr] 3 | use na::{Norm, Diagonal, Inverse, Transpose};
[INFO] [stderr]   |                ^^^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stderr]   |                |         |        |
[INFO] [stderr]   |                |         |        no `Transpose` in the root
[INFO] [stderr]   |                |         |        help: a similar name exists in the module: `Transform`
[INFO] [stderr]   |                |         no `Inverse` in the root
[INFO] [stderr]   |                no `Diagonal` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved import `time::PreciseTime`
[INFO] [stderr]   --> rs-src/rasterizer.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 13 | use time::{PreciseTime};
[INFO] [stderr]    |            ^^^^^^^^^^^ no `PreciseTime` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `normalize` in crate `na`
[INFO] [stderr]   --> rs-src/rasterizer.rs:51:9
[INFO] [stderr]    |
[INFO] [stderr] 51 |     na::normalize(&na::cross(&(*v1 - *v0), &(*v2 - *v0)))
[INFO] [stderr]    |         ^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `cross` in crate `na`
[INFO] [stderr]   --> rs-src/rasterizer.rs:51:24
[INFO] [stderr]    |
[INFO] [stderr] 51 |     na::normalize(&na::cross(&(*v1 - *v0), &(*v2 - *v0)))
[INFO] [stderr]    |                        ^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]   --> rs-src/rasterizer.rs:62:20
[INFO] [stderr]    |
[INFO] [stderr] 62 |     *i - (*n * na::dot(n, i) * 2.0)
[INFO] [stderr]    |                    ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `to_homogeneous` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:145:21
[INFO] [stderr]     |
[INFO] [stderr] 145 |         scale * na::to_homogeneous(&transf)
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `normalize` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:731:9
[INFO] [stderr]     |
[INFO] [stderr] 731 |     na::normalize(&match face {
[INFO] [stderr]     |         ^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:837:35
[INFO] [stderr]     |
[INFO] [stderr] 837 |     let ldotn     = na::clamp(na::dot(&l, &n), 0.0, 1.0);
[INFO] [stderr]     |                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:852:51
[INFO] [stderr]     |
[INFO] [stderr] 852 |         let ldotn =                 na::clamp(na::dot(&l, &n), 0.0, 1.0);
[INFO] [stderr]     |                                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:853:51
[INFO] [stderr]     |
[INFO] [stderr] 853 |         let ldotr = fast_unit_pow16(na::clamp(na::dot(&l, &r), 0.0, 1.0));
[INFO] [stderr]     |                                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:858:51
[INFO] [stderr]     |
[INFO] [stderr] 858 |         let ldotn =                 na::clamp(na::dot(&-l, &n), 0.0, 1.0);
[INFO] [stderr]     |                                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:859:51
[INFO] [stderr]     |
[INFO] [stderr] 859 |         let ldotr = fast_unit_pow16(na::clamp(na::dot(&-l, &r), 0.0, 1.0));
[INFO] [stderr]     |                                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:903:41
[INFO] [stderr]     |
[INFO] [stderr] 903 |     let fresnel = fresnel_conductor(na::dot(&-eye, &n), 1.0, 1.1);
[INFO] [stderr]     |                                         ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:917:41
[INFO] [stderr]     |
[INFO] [stderr] 917 |     let fresnel = fresnel_conductor(na::dot(&-eye, &n), 1.0, 1.1);
[INFO] [stderr]     |                                         ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]    --> rs-src/rasterizer.rs:989:32
[INFO] [stderr]     |
[INFO] [stderr] 989 |     let ldotn  = na::clamp(na::dot(&l, &n), 0.0, 1.0);
[INFO] [stderr]     |                                ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1006:32
[INFO] [stderr]      |
[INFO] [stderr] 1006 |     let ldotn  = na::clamp(na::dot(&l, &n), 0.0, 1.0);
[INFO] [stderr]      |                                ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1024:35
[INFO] [stderr]      |
[INFO] [stderr] 1024 |     let w   = 1.0 - na::clamp(na::dot(&h, &eye), 0.0, 1.0);
[INFO] [stderr]      |                                   ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `from_homogeneous` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1202:35
[INFO] [stderr]      |
[INFO] [stderr] 1202 |     let mesh_to_world_it_33 = na::from_homogeneous::<Matrix4<f32>, Matrix3<f32>>
[INFO] [stderr]      |                                   ^^^^^^^^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `to_homogeneous` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1208:56
[INFO] [stderr]      |
[INFO] [stderr] 1208 |         let world_h: Point4<f32> = mesh_to_world * na::to_homogeneous(&src.p);
[INFO] [stderr]      |                                                        ^^^^^^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `normalize` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1237:21
[INFO] [stderr]      |
[INFO] [stderr] 1237 |     let zaxis = na::normalize(&(*eye - *at));
[INFO] [stderr]      |                     ^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `normalize` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1238:21
[INFO] [stderr]      |
[INFO] [stderr] 1238 |     let xaxis = na::normalize(&na::cross(up, &zaxis));
[INFO] [stderr]      |                     ^^^^^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `cross` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1238:36
[INFO] [stderr]      |
[INFO] [stderr] 1238 |     let xaxis = na::normalize(&na::cross(up, &zaxis));
[INFO] [stderr]      |                                    ^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `cross` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1239:21
[INFO] [stderr]      |
[INFO] [stderr] 1239 |     let yaxis = na::cross(&zaxis, &xaxis);
[INFO] [stderr]      |                     ^^^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1241:49
[INFO] [stderr]      |
[INFO] [stderr] 1241 |     Matrix4::new(xaxis.x, xaxis.y, xaxis.z, na::dot(&-eye.to_vector(), &xaxis),
[INFO] [stderr]      |                                                 ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1242:49
[INFO] [stderr]      |
[INFO] [stderr] 1242 |                  yaxis.x, yaxis.y, yaxis.z, na::dot(&-eye.to_vector(), &yaxis),
[INFO] [stderr]      |                                                 ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `dot` in crate `na`
[INFO] [stderr]     --> rs-src/rasterizer.rs:1243:49
[INFO] [stderr]      |
[INFO] [stderr] 1243 |                  zaxis.x, zaxis.y, zaxis.z, na::dot(&-eye.to_vector(), &zaxis),
[INFO] [stderr]      |                                                 ^^^ not found in `na`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> rs-src/rasterizer.rs:1791:34
[INFO] [stderr]      |
[INFO] [stderr] 1791 |     let benchmarks:[(&str, i64, &Fn() -> ()); 12] = [
[INFO] [stderr]      |                                  ^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> ()`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]    --> rs-src/rasterizer.rs:165:28
[INFO] [stderr]     |
[INFO] [stderr] 165 | ...                   Error::description(&why)),
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]    --> rs-src/rasterizer.rs:174:28
[INFO] [stderr]     |
[INFO] [stderr] 174 | ...                   Error::description(&why)),
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]    --> rs-src/rasterizer.rs:192:40
[INFO] [stderr]     |
[INFO] [stderr] 192 | ...                   Error::description(&why),
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]    --> rs-src/rasterizer.rs:274:40
[INFO] [stderr]     |
[INFO] [stderr] 274 | ...                   Error::description(&why),
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type annotations needed
[INFO] [stderr]   --> rs-src/gol.rs:78:32
[INFO] [stderr]    |
[INFO] [stderr] 78 |                 * new_grid_ptr.offset(idx as isize) =
[INFO] [stderr]    |                                ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(tyvar_behind_raw_pointer)]` on by default
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition!
[INFO] [stderr]    = note: for more information, see issue #46906 <https://github.com/rust-lang/rust/issues/46906>
[INFO] [stderr] 
[INFO] [stderr] warning: type annotations needed
[INFO] [stderr]   --> rs-src/gol.rs:78:32
[INFO] [stderr]    |
[INFO] [stderr] 78 |                 * new_grid_ptr.offset(idx as isize) =
[INFO] [stderr]    |                                ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(tyvar_behind_raw_pointer)]` on by default
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition!
[INFO] [stderr]    = note: for more information, see issue #46906 <https://github.com/rust-lang/rust/issues/46906>
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `{float}` to `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr]    --> rs-src/rasterizer.rs:831:20
[INFO] [stderr]     |
[INFO] [stderr] 831 |     (n.normalize() + 1.0) * 0.5
[INFO] [stderr]     |                    ^ no implementation for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>> + {float}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `std::ops::Add<{float}>` is not implemented for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:836:43
[INFO] [stderr]     |
[INFO] [stderr] 836 |     let l         = fast_normalize(&(*eye.as_vector() - *p));
[INFO] [stderr]     |                                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:838:26
[INFO] [stderr]     |
[INFO] [stderr] 838 |     let occlusion = *col * *col;
[INFO] [stderr]     |                          ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:847:25
[INFO] [stderr]     |
[INFO] [stderr] 847 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `{float}` to `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr]    --> rs-src/rasterizer.rs:831:20
[INFO] [stderr]     |
[INFO] [stderr] 831 |     (n.normalize() + 1.0) * 0.5
[INFO] [stderr]     |                    ^ no implementation for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>> + {float}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `std::ops::Add<{float}>` is not implemented for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:836:43
[INFO] [stderr]     |
[INFO] [stderr] 836 |     let l         = fast_normalize(&(*eye.as_vector() - *p));
[INFO] [stderr]     |                                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:838:26
[INFO] [stderr]     |
[INFO] [stderr] 838 |     let occlusion = *col * *col;
[INFO] [stderr]     |                          ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:847:25
[INFO] [stderr]     |
[INFO] [stderr] 847 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:867:26
[INFO] [stderr]     |
[INFO] [stderr] 867 |     let occlusion = *col * *col;
[INFO] [stderr]     |                          ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:869:11
[INFO] [stderr]     |
[INFO] [stderr] 869 |     light * occlusion
[INFO] [stderr]     |           ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:867:26
[INFO] [stderr]     |
[INFO] [stderr] 867 |     let occlusion = *col * *col;
[INFO] [stderr]     |                          ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:880:42
[INFO] [stderr]     |
[INFO] [stderr] 880 |     lookup_dir_cm(&cm.cos_1, &n) * (*col * *col)
[INFO] [stderr]     |                                          ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:869:11
[INFO] [stderr]     |
[INFO] [stderr] 869 |     light * occlusion
[INFO] [stderr]     |           ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:880:34
[INFO] [stderr]     |
[INFO] [stderr] 880 |     lookup_dir_cm(&cm.cos_1, &n) * (*col * *col)
[INFO] [stderr]     |                                  ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:886:27
[INFO] [stderr]     |
[INFO] [stderr] 886 |     let eye   = *p - *eye.as_vector();
[INFO] [stderr]     |                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:880:42
[INFO] [stderr]     |
[INFO] [stderr] 880 |     lookup_dir_cm(&cm.cos_1, &n) * (*col * *col)
[INFO] [stderr]     |                                          ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:880:34
[INFO] [stderr]     |
[INFO] [stderr] 880 |     lookup_dir_cm(&cm.cos_1, &n) * (*col * *col)
[INFO] [stderr]     |                                  ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:886:27
[INFO] [stderr]     |
[INFO] [stderr] 886 |     let eye   = *p - *eye.as_vector();
[INFO] [stderr]     |                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:894:13
[INFO] [stderr]     |
[INFO] [stderr] 894 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:894:13
[INFO] [stderr]     |
[INFO] [stderr] 894 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:894:5
[INFO] [stderr]     |
[INFO] [stderr] 894 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:900:29
[INFO] [stderr]     |
[INFO] [stderr] 900 |     let eye     = *p - *eye.as_vector();
[INFO] [stderr]     |                             ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:894:5
[INFO] [stderr]     |
[INFO] [stderr] 894 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:909:13
[INFO] [stderr]     |
[INFO] [stderr] 909 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:909:5
[INFO] [stderr]     |
[INFO] [stderr] 909 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:915:25
[INFO] [stderr]     |
[INFO] [stderr] 915 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:900:29
[INFO] [stderr]     |
[INFO] [stderr] 900 |     let eye     = *p - *eye.as_vector();
[INFO] [stderr]     |                             ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:909:13
[INFO] [stderr]     |
[INFO] [stderr] 909 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `f32` to `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr]    --> rs-src/rasterizer.rs:919:35
[INFO] [stderr]     |
[INFO] [stderr] 919 |     (lookup_dir_cm(&cm.cos_1, &n) + fresnel * 0.75) * *col
[INFO] [stderr]     |                                   ^ no implementation for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>> + f32`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `std::ops::Add<f32>` is not implemented for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:925:25
[INFO] [stderr]     |
[INFO] [stderr] 925 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:931:13
[INFO] [stderr]     |
[INFO] [stderr] 931 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:931:5
[INFO] [stderr]     |
[INFO] [stderr] 931 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:937:25
[INFO] [stderr]     |
[INFO] [stderr] 937 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:909:5
[INFO] [stderr]     |
[INFO] [stderr] 909 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:915:25
[INFO] [stderr]     |
[INFO] [stderr] 915 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:941:66
[INFO] [stderr]     |
[INFO] [stderr] 941 |     + lookup_dir_cm(&cm.cos_64, &r) * normalize_phong_lobe(64.0) * Vector3::new(0.2, 0.8, 0.2)
[INFO] [stderr]     |                                                                  ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:943:13
[INFO] [stderr]     |
[INFO] [stderr] 943 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:943:5
[INFO] [stderr]     |
[INFO] [stderr] 943 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:949:25
[INFO] [stderr]     |
[INFO] [stderr] 949 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `f32` to `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr]    --> rs-src/rasterizer.rs:919:35
[INFO] [stderr]     |
[INFO] [stderr] 919 |     (lookup_dir_cm(&cm.cos_1, &n) + fresnel * 0.75) * *col
[INFO] [stderr]     |                                   ^ no implementation for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>> + f32`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `std::ops::Add<f32>` is not implemented for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:925:25
[INFO] [stderr]     |
[INFO] [stderr] 925 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:931:13
[INFO] [stderr]     |
[INFO] [stderr] 931 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:931:5
[INFO] [stderr]     |
[INFO] [stderr] 931 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:952:38
[INFO] [stderr]     |
[INFO] [stderr] 952 |     ( lookup_dir_cm(&cm.cos_1  , &n) * Vector3::new(0.8, 0.2, 0.2)
[INFO] [stderr]     |                                      ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:937:25
[INFO] [stderr]     |
[INFO] [stderr] 937 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:955:13
[INFO] [stderr]     |
[INFO] [stderr] 955 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:955:5
[INFO] [stderr]     |
[INFO] [stderr] 955 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:941:66
[INFO] [stderr]     |
[INFO] [stderr] 941 |     + lookup_dir_cm(&cm.cos_64, &r) * normalize_phong_lobe(64.0) * Vector3::new(0.2, 0.8, 0.2)
[INFO] [stderr]     |                                                                  ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:961:27
[INFO] [stderr]     |
[INFO] [stderr] 961 |     let eye   = *p - *eye.as_vector();
[INFO] [stderr]     |                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:943:13
[INFO] [stderr]     |
[INFO] [stderr] 943 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:968:5
[INFO] [stderr]     |
[INFO] [stderr] 968 |     * (*col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:943:5
[INFO] [stderr]     |
[INFO] [stderr] 943 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:974:27
[INFO] [stderr]     |
[INFO] [stderr] 974 |     let eye   = *p - *eye.as_vector();
[INFO] [stderr]     |                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:949:25
[INFO] [stderr]     |
[INFO] [stderr] 949 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]     |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:982:5
[INFO] [stderr]     |
[INFO] [stderr] 982 |     * (*col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:988:40
[INFO] [stderr]     |
[INFO] [stderr] 988 |     let l      = fast_normalize(&(*eye.as_vector() - *p));
[INFO] [stderr]     |                                        ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:990:28
[INFO] [stderr]     |
[INFO] [stderr] 990 |     let eye    = *p - *eye.as_vector();
[INFO] [stderr]     |                            ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:952:38
[INFO] [stderr]     |
[INFO] [stderr] 952 |     ( lookup_dir_cm(&cm.cos_1  , &n) * Vector3::new(0.8, 0.2, 0.2)
[INFO] [stderr]     |                                      ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:999:5
[INFO] [stderr]     |
[INFO] [stderr] 999 |     * albedo * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:955:13
[INFO] [stderr]     |
[INFO] [stderr] 955 |     * (*col * *col)
[INFO] [stderr]     |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:999:22
[INFO] [stderr]     |
[INFO] [stderr] 999 |     * albedo * (*col * *col)
[INFO] [stderr]     |                      ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:955:5
[INFO] [stderr]     |
[INFO] [stderr] 955 |     * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:999:14
[INFO] [stderr]     |
[INFO] [stderr] 999 |     * albedo * (*col * *col)
[INFO] [stderr]     |              ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:961:27
[INFO] [stderr]     |
[INFO] [stderr] 961 |     let eye   = *p - *eye.as_vector();
[INFO] [stderr]     |                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1005:40
[INFO] [stderr]      |
[INFO] [stderr] 1005 |     let l      = fast_normalize(&(*eye.as_vector() - *p));
[INFO] [stderr]      |                                        ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1007:28
[INFO] [stderr]      |
[INFO] [stderr] 1007 |     let eye    = *p - *eye.as_vector();
[INFO] [stderr]      |                            ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:968:5
[INFO] [stderr]     |
[INFO] [stderr] 968 |     * (*col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1011:43
[INFO] [stderr]      |
[INFO] [stderr] 1011 |     ( lookup_dir_cm  (&cm.cos_1  ,  &n)   * Vector3::new(0.2, 0.2, 0.8) * ldotn
[INFO] [stderr]      |                                           ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:974:27
[INFO] [stderr]     |
[INFO] [stderr] 974 |     let eye   = *p - *eye.as_vector();
[INFO] [stderr]     |                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1015:13
[INFO] [stderr]      |
[INFO] [stderr] 1015 |     * (*col * *col)
[INFO] [stderr]      |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1015:5
[INFO] [stderr]      |
[INFO] [stderr] 1015 |     * (*col * *col)
[INFO] [stderr]      |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:982:5
[INFO] [stderr]     |
[INFO] [stderr] 982 |     * (*col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1021:25
[INFO] [stderr]      |
[INFO] [stderr] 1021 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]      |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:988:40
[INFO] [stderr]     |
[INFO] [stderr] 988 |     let l      = fast_normalize(&(*eye.as_vector() - *p));
[INFO] [stderr]     |                                        ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1027:38
[INFO] [stderr]      |
[INFO] [stderr] 1027 |     (  lookup_dir_cm(&cm.cos_1 , &n) * V3F::new(0.8, 0.65, 1.0) * w
[INFO] [stderr]      |                                      ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]    --> rs-src/rasterizer.rs:990:28
[INFO] [stderr]     |
[INFO] [stderr] 990 |     let eye    = *p - *eye.as_vector();
[INFO] [stderr]     |                            ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1030:13
[INFO] [stderr]      |
[INFO] [stderr] 1030 |     * (*col * *col)
[INFO] [stderr]      |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1030:5
[INFO] [stderr]      |
[INFO] [stderr] 1030 |     * (*col * *col)
[INFO] [stderr]      |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:999:5
[INFO] [stderr]     |
[INFO] [stderr] 999 |     * albedo * (*col * *col)
[INFO] [stderr]     |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `inverse` found for struct `na::Matrix<f32, na::U4, na::U4, na::ArrayStorage<f32, na::U4, na::U4>>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1203:51
[INFO] [stderr]      |
[INFO] [stderr] 1203 | ...                   (&mesh_to_world.inverse().unwrap().transpose());
[INFO] [stderr]      |                                       ^^^^^^^ method not found in `na::Matrix<f32, na::U4, na::U4, na::ArrayStorage<f32, na::U4, na::U4>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:999:22
[INFO] [stderr]     |
[INFO] [stderr] 999 |     * albedo * (*col * *col)
[INFO] [stderr]     |                      ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]    --> rs-src/rasterizer.rs:999:14
[INFO] [stderr]     |
[INFO] [stderr] 999 |     * albedo * (*col * *col)
[INFO] [stderr]     |              ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the following implementations were found:
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]               <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]     = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]     = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1005:40
[INFO] [stderr]      |
[INFO] [stderr] 1005 |     let l      = fast_normalize(&(*eye.as_vector() - *p));
[INFO] [stderr]      |                                        ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1007:28
[INFO] [stderr]      |
[INFO] [stderr] 1007 |     let eye    = *p - *eye.as_vector();
[INFO] [stderr]      |                            ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1011:43
[INFO] [stderr]      |
[INFO] [stderr] 1011 |     ( lookup_dir_cm  (&cm.cos_1  ,  &n)   * Vector3::new(0.2, 0.2, 0.8) * ldotn
[INFO] [stderr]      |                                           ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1015:13
[INFO] [stderr]      |
[INFO] [stderr] 1015 |     * (*col * *col)
[INFO] [stderr]      |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1015:5
[INFO] [stderr]      |
[INFO] [stderr] 1015 |     * (*col * *col)
[INFO] [stderr]      |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1021:25
[INFO] [stderr]      |
[INFO] [stderr] 1021 |     let eye = *p - *eye.as_vector();
[INFO] [stderr]      |                         ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1027:38
[INFO] [stderr]      |
[INFO] [stderr] 1027 |     (  lookup_dir_cm(&cm.cos_1 , &n) * V3F::new(0.8, 0.65, 1.0) * w
[INFO] [stderr]      |                                      ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1030:13
[INFO] [stderr]      |
[INFO] [stderr] 1030 |     * (*col * *col)
[INFO] [stderr]      |             ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `na::constraint::ShapeConstraint: na::constraint::DimEq<na::U1, na::U3>` is not satisfied
[INFO] [stderr]     --> rs-src/rasterizer.rs:1030:5
[INFO] [stderr]      |
[INFO] [stderr] 1030 |     * (*col * *col)
[INFO] [stderr]      |     ^ the trait `na::constraint::DimEq<na::U1, na::U3>` is not implemented for `na::constraint::ShapeConstraint`
[INFO] [stderr]      |
[INFO] [stderr]      = help: the following implementations were found:
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, D>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<D, na::Dynamic>>
[INFO] [stderr]                <na::constraint::ShapeConstraint as na::constraint::DimEq<na::Dynamic, D>>
[INFO] [stderr]      = note: required because of the requirements on the impl of `na::constraint::AreMultipliable<na::U3, na::U1, na::U3, na::U1>` for `na::constraint::ShapeConstraint`
[INFO] [stderr]      = note: required because of the requirements on the impl of `std::ops::Mul` for `na::Matrix<f32, na::U3, na::U1, na::ArrayStorage<f32, na::U3, na::U1>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `inverse` found for struct `na::Matrix<f32, na::U4, na::U4, na::ArrayStorage<f32, na::U4, na::U4>>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1203:51
[INFO] [stderr]      |
[INFO] [stderr] 1203 | ...                   (&mesh_to_world.inverse().unwrap().transpose());
[INFO] [stderr]      |                                       ^^^^^^^ method not found in `na::Matrix<f32, na::U4, na::U4, na::ArrayStorage<f32, na::U4, na::U4>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]     --> rs-src/rasterizer.rs:1208:36
[INFO] [stderr]      |
[INFO] [stderr] 1208 |         let world_h: Point4<f32> = mesh_to_world * na::to_homogeneous(&src.p);
[INFO] [stderr]      |                      -----------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `na::Point`, found struct `na::Matrix`
[INFO] [stderr]      |                      |
[INFO] [stderr]      |                      expected due to this
[INFO] [stderr]      |
[INFO] [stderr]      = note: expected struct `na::Point<f32, na::U4>`
[INFO] [stderr]                 found struct `na::Matrix<f32, na::U4, na::U4, na::ArrayStorage<f32, na::U4, na::U4>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `to_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1241:59
[INFO] [stderr]      |
[INFO] [stderr] 1241 |     Matrix4::new(xaxis.x, xaxis.y, xaxis.z, na::dot(&-eye.to_vector(), &xaxis),
[INFO] [stderr]      |                                                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `to_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1242:59
[INFO] [stderr]      |
[INFO] [stderr] 1242 |                  yaxis.x, yaxis.y, yaxis.z, na::dot(&-eye.to_vector(), &yaxis),
[INFO] [stderr]      |                                                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `to_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1243:59
[INFO] [stderr]      |
[INFO] [stderr] 1243 |                  zaxis.x, zaxis.y, zaxis.z, na::dot(&-eye.to_vector(), &zaxis),
[INFO] [stderr]      |                                                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]     --> rs-src/rasterizer.rs:1208:36
[INFO] [stderr]      |
[INFO] [stderr] 1208 |         let world_h: Point4<f32> = mesh_to_world * na::to_homogeneous(&src.p);
[INFO] [stderr]      |                      -----------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `na::Point`, found struct `na::Matrix`
[INFO] [stderr]      |                      |
[INFO] [stderr]      |                      expected due to this
[INFO] [stderr]      |
[INFO] [stderr]      = note: expected struct `na::Point<f32, na::U4>`
[INFO] [stderr]                 found struct `na::Matrix<f32, na::U4, na::U4, na::ArrayStorage<f32, na::U4, na::U4>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `to_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1241:59
[INFO] [stderr]      |
[INFO] [stderr] 1241 |     Matrix4::new(xaxis.x, xaxis.y, xaxis.z, na::dot(&-eye.to_vector(), &xaxis),
[INFO] [stderr]      |                                                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `to_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1242:59
[INFO] [stderr]      |
[INFO] [stderr] 1242 |                  yaxis.x, yaxis.y, yaxis.z, na::dot(&-eye.to_vector(), &yaxis),
[INFO] [stderr]      |                                                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `to_vector` found for reference `&na::Point<f32, na::U3>` in the current scope
[INFO] [stderr]     --> rs-src/rasterizer.rs:1243:59
[INFO] [stderr]      |
[INFO] [stderr] 1243 |                  zaxis.x, zaxis.y, zaxis.z, na::dot(&-eye.to_vector(), &zaxis),
[INFO] [stderr]      |                                                           ^^^^^^^^^ method not found in `&na::Point<f32, na::U3>`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Norm`
[INFO] [stderr]  --> rs-src/rasterizer.rs:3:10
[INFO] [stderr]   |
[INFO] [stderr] 3 | use na::{Norm, Diagonal, Inverse, Transpose};
[INFO] [stderr]   |          ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 77 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0277, E0308, E0425, E0432, E0599.
[INFO] [stderr] For more information about an error, try `rustc --explain E0277`.
[INFO] [stderr] warning: unused import: `Norm`
[INFO] [stderr]  --> rs-src/rasterizer.rs:3:10
[INFO] [stderr]   |
[INFO] [stderr] 3 | use na::{Norm, Diagonal, Inverse, Transpose};
[INFO] [stderr]   |          ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 77 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0277, E0308, E0425, E0432, E0599.
[INFO] [stderr] For more information about an error, try `rustc --explain E0277`.
[INFO] [stderr] error: could not compile `rust_exp`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rust_exp`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "f9889182330dc58a10a5e71aadf1c741e2483e0da8363f41e1f6974514c15812"`
[INFO] running `"docker" "rm" "-f" "f9889182330dc58a10a5e71aadf1c741e2483e0da8363f41e1f6974514c15812"`
[INFO] [stdout] f9889182330dc58a10a5e71aadf1c741e2483e0da8363f41e1f6974514c15812
