[INFO] cloning repository https://github.com/pseudobabble/crunch
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pseudobabble/crunch" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpseudobabble%2Fcrunch", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpseudobabble%2Fcrunch'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f0600ed651516e7ba7a14e633ecd2d10b55bc603
[INFO] checking pseudobabble/crunch/f0600ed651516e7ba7a14e633ecd2d10b55bc603 against master#2ca7bcd03b87b52f7055a59b817443b0ac4a530d for pr-150322
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpseudobabble%2Fcrunch" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/pseudobabble/crunch
[INFO] finished tweaking git repo https://github.com/pseudobabble/crunch
[INFO] tweaked toml for git repo https://github.com/pseudobabble/crunch written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/pseudobabble/crunch on toolchain 2ca7bcd03b87b52f7055a59b817443b0ac4a530d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2ca7bcd03b87b52f7055a59b817443b0ac4a530d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/pseudobabble/crunch already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2ca7bcd03b87b52f7055a59b817443b0ac4a530d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 5 packages to latest compatible versions
[INFO] [stderr]       Adding dimensioned v0.8.0
[INFO] [stderr]       Adding generic-array v0.14.9
[INFO] [stderr]       Adding typenum v1.19.0
[INFO] [stderr]       Adding uom v0.36.0 (available: v0.37.0)
[INFO] [stderr]       Adding version_check v0.9.5
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded dimensioned v0.8.0
[INFO] [stderr]   Downloaded num-complex v0.4.4
[INFO] [stderr]   Downloaded uom v0.36.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+2ca7bcd03b87b52f7055a59b817443b0ac4a530d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 00d625e08fdbbd9020d8eec7f950416d16bc5133157d8e64d49d3bae57cdedfc
[INFO] running `Command { std: "docker" "start" "-a" "00d625e08fdbbd9020d8eec7f950416d16bc5133157d8e64d49d3bae57cdedfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "00d625e08fdbbd9020d8eec7f950416d16bc5133157d8e64d49d3bae57cdedfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "00d625e08fdbbd9020d8eec7f950416d16bc5133157d8e64d49d3bae57cdedfc", kill_on_drop: false }`
[INFO] [stdout] 00d625e08fdbbd9020d8eec7f950416d16bc5133157d8e64d49d3bae57cdedfc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+2ca7bcd03b87b52f7055a59b817443b0ac4a530d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b78bf3c6e417c1396fcb81f17ef7162201990cccc0986d88bdf3ca0d25037601
[INFO] running `Command { std: "docker" "start" "-a" "b78bf3c6e417c1396fcb81f17ef7162201990cccc0986d88bdf3ca0d25037601", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.16
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling matrixmultiply v0.3.7
[INFO] [stderr]    Compiling dimensioned v0.8.0
[INFO] [stderr]     Checking memchr v2.6.3
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking num-complex v0.4.4
[INFO] [stderr]     Checking uom v0.36.0
[INFO] [stderr]     Checking ndarray v0.15.6
[INFO] [stderr]     Checking crunch v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/parser.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Add`, `Div`, `Mul`, and `Sub`
[INFO] [stdout]  --> src/parser.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ops::{Add, Div, Mul, Sub};
[INFO] [stdout]   |                ^^^  ^^^  ^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `square_kilometer` and `square_meter`
[INFO] [stdout]   --> src/parser.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 16 | use uom::si::area::{square_kilometer, square_meter};
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uom::si::f64::*`
[INFO] [stdout]   --> src/parser.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use uom::si::f64::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `kilometer` and `meter`
[INFO] [stdout]   --> src/parser.rs:18:23
[INFO] [stdout]    |
[INFO] [stdout] 18 | use uom::si::length::{kilometer, meter};
[INFO] [stdout]    |                       ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/types.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uom::si::area::square_meter`
[INFO] [stdout]  --> src/types.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use uom::si::area::square_meter;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Area`, `Mass`, and `Time`
[INFO] [stdout]  --> src/types.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use uom::si::f64::{Area, Length, Mass, Time};
[INFO] [stdout]   |                    ^^^^          ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uom::si::mass::kilogram`
[INFO] [stdout]   --> src/types.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use uom::si::mass::kilogram;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uom::si::time::second`
[INFO] [stdout]   --> src/types.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use uom::si::time::second;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SI`
[INFO] [stdout]   --> src/types.rs:13:36
[INFO] [stdout]    |
[INFO] [stdout] 13 | use uom::si::{Dimension, Quantity, SI};
[INFO] [stdout]    |                                    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `N1` and `P1`
[INFO] [stdout]   --> src/types.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 | use uom::typenum::{N1, P1};
[INFO] [stdout]    |                    ^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/types.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |     vector.iter().map(|left_x| *left_x * scalar).collect()
[INFO] [stdout]    |                                          ^^^^^^ expected `f64`, found `Quantity<D1, U, f64>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected type `f64`
[INFO] [stdout]             found struct `Quantity<D1, U, f64>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `Vec<Quantity<<D1 as std::ops::Mul<D2>>::Output, U, f64>>` cannot be built from an iterator over elements of type `Quantity<D2, U, f64>`
[INFO] [stdout]   --> src/types.rs:63:50
[INFO] [stdout]    |
[INFO] [stdout] 63 |     vector.iter().map(|left_x| *left_x * scalar).collect()
[INFO] [stdout]    |                                                  ^^^^^^^ value of type `Vec<Quantity<<D1 as std::ops::Mul<D2>>::Output, U, f64>>` cannot be built from `std::iter::Iterator<Item=Quantity<D2, U, f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromIterator<Quantity<D2, U, f64>>` is not implemented for `Vec<Quantity<<D1 as std::ops::Mul<D2>>::Output, U, f64>>`
[INFO] [stdout] note: the method call chain might not have had the expected associated types
[INFO] [stdout]   --> src/types.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 63 |     vector.iter().map(|left_x| *left_x * scalar).collect()
[INFO] [stdout]    |     ------ ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Iterator::Item` changed to `Quantity<D2, U, f64>` here
[INFO] [stdout]    |     |      |
[INFO] [stdout]    |     |      `Iterator::Item` is `&Quantity<D2, U, f64>` here
[INFO] [stdout]    |     this expression has type `Vec<Quantity<D2, U, f64>>`
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]   --> /rustc/2ca7bcd03b87b52f7055a59b817443b0ac4a530d/library/core/src/iter/traits/iterator.rs:2015:4
[INFO] [stdout] help: consider extending the `where` clause, but there might be an alternative better way to express this requirement
[INFO] [stdout]    |
[INFO] [stdout] 61 |     <D1 as Dimension>::Kind: marker::Mul, Vec<Quantity<<D1 as std::ops::Mul<D2>>::Output, U, f64>>: FromIterator<Quantity<D2, U, f64>>
[INFO] [stdout]    |                                           ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot divide `Quantity<D2, U, f64>` by `Quantity<D1, U, f64>`
[INFO] [stdout]   --> src/types.rs:76:40
[INFO] [stdout]    |
[INFO] [stdout] 76 |     vector.iter().map(|left_x| *left_x / scalar).collect()
[INFO] [stdout]    |                                ------- ^ ------ Quantity<D1, U, f64>
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                Quantity<D2, U, f64>
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::L: std::ops::Sub<<D1 as Dimension>::L>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::M: std::ops::Sub<<D1 as Dimension>::M>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::T: std::ops::Sub<<D1 as Dimension>::T>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::I: std::ops::Sub<<D1 as Dimension>::I>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::Th: std::ops::Sub<<D1 as Dimension>::Th>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::N: std::ops::Sub<<D1 as Dimension>::N>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::J: std::ops::Sub<<D1 as Dimension>::J>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::Kind: parser::uom::marker::Div
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::Kind: parser::uom::marker::Div
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot add `Quantity<D, U, f64>` to `Quantity<D, U, f64>`
[INFO] [stdout]   --> src/types.rs:87:42
[INFO] [stdout]    |
[INFO] [stdout] 87 |         .map(|(left_x, right_x)| *left_x + right_x)
[INFO] [stdout]    |                                  ------- ^ ------- Quantity<D, U, f64>
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |                                  Quantity<D, U, f64>
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 82 |     U: uom::si::Units<f64> + ?Sized, <D as Dimension>::Kind: parser::uom::marker::Add
[INFO] [stdout]    |                                      ++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot subtract `Quantity<D, U, f64>` from `Quantity<D, U, f64>`
[INFO] [stdout]    --> src/types.rs:102:42
[INFO] [stdout]     |
[INFO] [stdout] 102 |         .map(|(left_x, right_x)| *left_x - right_x)
[INFO] [stdout]     |                                  ------- ^ ------- Quantity<D, U, f64>
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  Quantity<D, U, f64>
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout]  97 |     U: uom::si::Units<f64> + ?Sized, <D as Dimension>::Kind: parser::uom::marker::Sub
[INFO] [stdout]     |                                      ++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot multiply `Quantity<D1, U, f64>` by `Quantity<D2, U, f64>`
[INFO] [stdout]    --> src/types.rs:119:42
[INFO] [stdout]     |
[INFO] [stdout] 119 |         .map(|(left_x, right_x)| *left_x * right_x)
[INFO] [stdout]     |                                  ------- ^ ------- Quantity<D2, U, f64>
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  Quantity<D1, U, f64>
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::L: std::ops::Add<<D2 as Dimension>::L>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::M: std::ops::Add<<D2 as Dimension>::M>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::T: std::ops::Add<<D2 as Dimension>::T>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::I: std::ops::Add<<D2 as Dimension>::I>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::Th: std::ops::Add<<D2 as Dimension>::Th>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::N: std::ops::Add<<D2 as Dimension>::N>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::J: std::ops::Add<<D2 as Dimension>::J>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::Kind: parser::uom::marker::Mul
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D2 as Dimension>::Kind: parser::uom::marker::Mul
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot divide `Quantity<D1, U, f64>` by `Quantity<D2, U, f64>`
[INFO] [stdout]    --> src/types.rs:136:42
[INFO] [stdout]     |
[INFO] [stdout] 136 |         .map(|(left_x, right_x)| *left_x / right_x)
[INFO] [stdout]     |                                  ------- ^ ------- Quantity<D2, U, f64>
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  Quantity<D1, U, f64>
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::L: std::ops::Sub<<D2 as Dimension>::L>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::M: std::ops::Sub<<D2 as Dimension>::M>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::T: std::ops::Sub<<D2 as Dimension>::T>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::I: std::ops::Sub<<D2 as Dimension>::I>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::Th: std::ops::Sub<<D2 as Dimension>::Th>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::N: std::ops::Sub<<D2 as Dimension>::N>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::J: std::ops::Sub<<D2 as Dimension>::J>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::Kind: parser::uom::marker::Div
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::Kind: parser::uom::marker::Div
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/types.rs:251:59
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 Value::Length(rhs_value) => Value::Length(lhs_value * rhs_value),
[INFO] [stdout]     |                                             ------------- ^^^^^^^^^^^^^^^^^^^^^ expected `UTerm`, found `UInt<UTerm, B1>`
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Quantity<..., ..., f64>` (`UTerm`)
[INFO] [stdout]                found struct `Quantity<..., ..., f64>` (`UInt<UTerm, B1>`)
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/types.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     Length(Length),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-7308671144222453559.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:254:70
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     Value::VectorLength(scalar_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:49:21
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |    ---------------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout]  49 |     D1: Dimension + Mul<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-11690297661340704306.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:254:70
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     Value::VectorLength(scalar_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:44:33
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                 ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-11690297661340704306.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  49 |     D1: Dimension + Mul<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:254:81
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     Value::VectorLength(scalar_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ----------------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:44:37
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                     ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-6499441467994165865.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  50 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:261:70
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     Value::VectorLength(scalar_vector_multiplication(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ---------------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:49:21
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |    ---------------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout]  49 |     D1: Dimension + Mul<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-8648587874060118858.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:261:70
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     Value::VectorLength(scalar_vector_multiplication(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ---------------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:44:33
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                 ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-8648587874060118858.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  49 |     D1: Dimension + Mul<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:261:81
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     Value::VectorLength(scalar_vector_multiplication(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ----------------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:44:37
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                     ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-6455576058776941507.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  50 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:265:75
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     Value::VectorLength(elementwise_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         --------------------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `elementwise_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:111:21
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn elementwise_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |    --------------------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 111 |     D1: Dimension + Mul<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `elementwise_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-5795646455742654615.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:265:75
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     Value::VectorLength(elementwise_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         --------------------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `elementwise_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:106:38
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn elementwise_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                      ^^ required by the implicit `Sized` requirement on this type parameter in `elementwise_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-5795646455742654615.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout] 111 |     D1: Dimension + Mul<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:265:86
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     Value::VectorLength(elementwise_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `elementwise_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:106:42
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn elementwise_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                          ^^ required by the implicit `Sized` requirement on this type parameter in `elementwise_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-9236196329259998301.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout] 112 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:254:41
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     Value::VectorLength(scalar_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-11690297661340704306.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:261:41
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     Value::VectorLength(scalar_vector_multiplication(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-8648587874060118858.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:265:41
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     Value::VectorLength(elementwise_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-5795646455742654615.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/types.rs:280:59
[INFO] [stdout]     |
[INFO] [stdout] 280 |                 Value::Length(rhs_value) => Value::Length(lhs_value / rhs_value),
[INFO] [stdout]     |                                             ------------- ^^^^^^^^^^^^^^^^^^^^^ expected `PInt<UInt<UTerm, B1>>`, found `Z0`
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Quantity<..., ..., f64>` (`PInt<UInt<UTerm, B1>>`)
[INFO] [stdout]                found struct `Quantity<..., ..., f64>` (`Z0`)
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/types.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     Length(Length),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-7308671144222453559.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:283:64
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     Value::VectorLength(scalar_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:71:21
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |    ---------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout]  71 |     D1: Dimension + Div<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-11690297661340704306.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:283:64
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     Value::VectorLength(scalar_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:66:27
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |                           ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-11690297661340704306.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  71 |     D1: Dimension + Div<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:283:75
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     Value::VectorLength(scalar_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ----------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:66:31
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |                               ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-6499441467994165865.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  72 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:290:64
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     Value::VectorLength(scalar_vector_division(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ---------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:71:21
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |    ---------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout]  71 |     D1: Dimension + Div<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-8648587874060118858.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:290:64
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     Value::VectorLength(scalar_vector_division(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ---------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:66:27
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |                           ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-8648587874060118858.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  71 |     D1: Dimension + Div<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:290:75
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     Value::VectorLength(scalar_vector_division(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ----------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:66:31
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |                               ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-6455576058776941507.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  72 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:294:69
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     Value::VectorLength(elementwise_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         --------------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `elementwise_vector_division`
[INFO] [stdout]    --> src/types.rs:128:21
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn elementwise_vector_division<D1, D2, U>(
[INFO] [stdout]     |    --------------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 128 |     D1: Dimension + Div<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `elementwise_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-5795646455742654615.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:294:69
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     Value::VectorLength(elementwise_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         --------------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `elementwise_vector_division`
[INFO] [stdout]    --> src/types.rs:123:32
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn elementwise_vector_division<D1, D2, U>(
[INFO] [stdout]     |                                ^^ required by the implicit `Sized` requirement on this type parameter in `elementwise_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-5795646455742654615.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout] 128 |     D1: Dimension + Div<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:294:80
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     Value::VectorLength(elementwise_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `elementwise_vector_division`
[INFO] [stdout]    --> src/types.rs:123:36
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn elementwise_vector_division<D1, D2, U>(
[INFO] [stdout]     |                                    ^^ required by the implicit `Sized` requirement on this type parameter in `elementwise_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-9236196329259998301.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout] 129 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:283:41
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     Value::VectorLength(scalar_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-11690297661340704306.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:290:41
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     Value::VectorLength(scalar_vector_division(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-8648587874060118858.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:294:41
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     Value::VectorLength(elementwise_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-1f7d46e05b84cb03.long-type-5795646455742654615.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `&types::Unit`
[INFO] [stdout]    --> src/types.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |          --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 306 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `types::Unit`
[INFO] [stdout]    --> src/types.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub enum Unit {
[INFO] [stdout]     | ^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(PartialEq)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(PartialEq)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `&types::Unit`
[INFO] [stdout]    --> src/types.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |          --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 310 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `types::Unit`
[INFO] [stdout]    --> src/types.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub enum Unit {
[INFO] [stdout]     | ^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(PartialEq)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(PartialEq)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `types::Unit` doesn't implement `Debug`
[INFO] [stdout]    --> src/types.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |                     ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 306 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Debug` is not implemented for `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout]     = note: add `#[derive(Debug)]` to `types::Unit` or manually `impl Debug for types::Unit`
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(Debug)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(Debug)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `types::Unit` doesn't implement `Debug`
[INFO] [stdout]    --> src/types.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |                     ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 310 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Debug` is not implemented for `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout]     = note: add `#[derive(Debug)]` to `types::Unit` or manually `impl Debug for types::Unit`
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(Debug)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(Debug)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::Unit: Clone` is not satisfied
[INFO] [stdout]    --> src/types.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |                            ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 306 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Clone` is not implemented for `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(Clone)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(Clone)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::Unit: Clone` is not satisfied
[INFO] [stdout]    --> src/types.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |                            ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 310 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Clone` is not implemented for `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(Clone)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(Clone)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/interpreter.rs:126:27
[INFO] [stdout]     |
[INFO] [stdout] 126 |                     unit: Unit {
[INFO] [stdout]     |                           ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/interpreter.rs:136:27
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     unit: Unit {
[INFO] [stdout]     |                           ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:192:28
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 dimension: Unit {
[INFO] [stdout]     |                            ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:193:27
[INFO] [stdout]     |
[INFO] [stdout] 193 |                     unit: Unit {
[INFO] [stdout]     |                           ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:208:28
[INFO] [stdout]     |
[INFO] [stdout] 208 |                 dimension: Unit {
[INFO] [stdout]     |                            ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:209:27
[INFO] [stdout]     |
[INFO] [stdout] 209 |                     unit: Unit {
[INFO] [stdout]     |                           ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:224:28
[INFO] [stdout]     |
[INFO] [stdout] 224 |                 dimension: Unit {
[INFO] [stdout]     |                            ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:238:28
[INFO] [stdout]     |
[INFO] [stdout] 238 |                 dimension: Unit {
[INFO] [stdout]     |                            ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:269:32
[INFO] [stdout]     |
[INFO] [stdout] 269 |                     dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                                ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:283:32
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     dimension: Unit {
[INFO] [stdout]     |                                ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:302:32
[INFO] [stdout]     |
[INFO] [stdout] 302 |                     dimension: Unit {
[INFO] [stdout]     |                                ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:308:32
[INFO] [stdout]     |
[INFO] [stdout] 308 |                     dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                                ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:324:36
[INFO] [stdout]     |
[INFO] [stdout] 324 |                         dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                                    ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:328:36
[INFO] [stdout]     |
[INFO] [stdout] 328 |                         dimension: Unit {
[INFO] [stdout]     |                                    ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:337:36
[INFO] [stdout]     |
[INFO] [stdout] 337 |                         dimension: Unit {
[INFO] [stdout]     |                                    ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:343:36
[INFO] [stdout]     |
[INFO] [stdout] 343 |                         dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                                    ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:363:36
[INFO] [stdout]     |
[INFO] [stdout] 363 |                         dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                                    ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:367:36
[INFO] [stdout]     |
[INFO] [stdout] 367 |                         dimension: Unit {
[INFO] [stdout]     |                                    ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:388:40
[INFO] [stdout]     |
[INFO] [stdout] 388 | ...                   dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                                  ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:392:40
[INFO] [stdout]     |
[INFO] [stdout] 392 | ...                   dimension: Unit {
[INFO] [stdout]     |                                  ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:401:40
[INFO] [stdout]     |
[INFO] [stdout] 401 | ...                   dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                                  ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:405:40
[INFO] [stdout]     |
[INFO] [stdout] 405 | ...                   dimension: Unit {
[INFO] [stdout]     |                                  ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:429:40
[INFO] [stdout]     |
[INFO] [stdout] 429 | ...                   dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                                  ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:433:40
[INFO] [stdout]     |
[INFO] [stdout] 433 | ...                   dimension: Unit {
[INFO] [stdout]     |                                  ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0574]: expected struct, variant or union type, found enum `Unit`
[INFO] [stdout]    --> src/parser.rs:443:36
[INFO] [stdout]     |
[INFO] [stdout] 443 |                         dimension: Unit {
[INFO] [stdout]     |                                    ^^^^ not a struct, variant or union type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/parser.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Add`, `Div`, `Mul`, and `Sub`
[INFO] [stdout]  --> src/parser.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ops::{Add, Div, Mul, Sub};
[INFO] [stdout]   |                ^^^  ^^^  ^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `square_kilometer` and `square_meter`
[INFO] [stdout]   --> src/parser.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 16 | use uom::si::area::{square_kilometer, square_meter};
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uom::si::f64::*`
[INFO] [stdout]   --> src/parser.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use uom::si::f64::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `kilometer` and `meter`
[INFO] [stdout]   --> src/parser.rs:18:23
[INFO] [stdout]    |
[INFO] [stdout] 18 | use uom::si::length::{kilometer, meter};
[INFO] [stdout]    |                       ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/types.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uom::si::area::square_meter`
[INFO] [stdout]  --> src/types.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use uom::si::area::square_meter;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Area`, `Mass`, and `Time`
[INFO] [stdout]  --> src/types.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use uom::si::f64::{Area, Length, Mass, Time};
[INFO] [stdout]   |                    ^^^^          ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uom::si::mass::kilogram`
[INFO] [stdout]   --> src/types.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use uom::si::mass::kilogram;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uom::si::time::second`
[INFO] [stdout]   --> src/types.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use uom::si::time::second;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SI`
[INFO] [stdout]   --> src/types.rs:13:36
[INFO] [stdout]    |
[INFO] [stdout] 13 | use uom::si::{Dimension, Quantity, SI};
[INFO] [stdout]    |                                    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `N1` and `P1`
[INFO] [stdout]   --> src/types.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 | use uom::typenum::{N1, P1};
[INFO] [stdout]    |                    ^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/types.rs:162:13
[INFO] [stdout]     |
[INFO] [stdout] 162 |             _ => panic!("Unsupported unit"),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/types.rs:162:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |             Unit::Meter => Self::Length(Length::new::<meter>(value)),
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] 161 |             Unit::Kilometer => Self::Length(Length::new::<kilometer>(value)),
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] 162 |             _ => panic!("Unsupported unit"),
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/types.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |             _ => panic!("Unsupported unit"),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/types.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 168 |             Unit::Meter => Self::VectorLength(
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 174 |             Unit::Kilometer => Self::VectorLength(
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 180 |             _ => panic!("Unsupported unit"),
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0369.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/interpreter.rs:124:31
[INFO] [stdout]     |
[INFO] [stdout] 124 |                 value: Value::Float(2.0),
[INFO] [stdout]     |                               ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant named `Length` found for enum `types::Unit`
[INFO] [stdout]    --> src/interpreter.rs:125:29
[INFO] [stdout]     |
[INFO] [stdout] 125 |                 unit: Unit::Length {
[INFO] [stdout]     |                             ^^^^^^ variant not found in `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub enum Unit {
[INFO] [stdout]     | ------------- variant `Length` not found here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `UnitIdentity`
[INFO] [stdout]    --> src/interpreter.rs:127:31
[INFO] [stdout]     |
[INFO] [stdout] 127 |                         unit: UnitIdentity::Meter,
[INFO] [stdout]     |                               ^^^^^^^^^^^^ use of undeclared type `UnitIdentity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/interpreter.rs:134:31
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 value: Value::Float(2.0),
[INFO] [stdout]     |                               ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant named `Length` found for enum `types::Unit`
[INFO] [stdout]    --> src/interpreter.rs:135:29
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 unit: Unit::Length {
[INFO] [stdout]     |                             ^^^^^^ variant not found in `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub enum Unit {
[INFO] [stdout]     | ------------- variant `Length` not found here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `UnitIdentity`
[INFO] [stdout]    --> src/interpreter.rs:137:31
[INFO] [stdout]     |
[INFO] [stdout] 137 |                         unit: UnitIdentity::Kilometer,
[INFO] [stdout]     |                               ^^^^^^^^^^^^ use of undeclared type `UnitIdentity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crunch` (bin "crunch") due to 39 previous errors; 14 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:191:31
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 value: Value::Float(1.1),
[INFO] [stdout]     |                               ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:192:17
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 dimension: Unit {
[INFO] [stdout]     |                 ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `UnitIdentity`
[INFO] [stdout]    --> src/parser.rs:194:31
[INFO] [stdout]     |
[INFO] [stdout] 194 |                         unit: UnitIdentity::Meter,
[INFO] [stdout]     |                               ^^^^^^^^^^^^ use of undeclared type `UnitIdentity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:207:31
[INFO] [stdout]     |
[INFO] [stdout] 207 |                 value: Value::Float(1.0),
[INFO] [stdout]     |                               ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:208:17
[INFO] [stdout]     |
[INFO] [stdout] 208 |                 dimension: Unit {
[INFO] [stdout]     |                 ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `UnitIdentity`
[INFO] [stdout]    --> src/parser.rs:210:31
[INFO] [stdout]     |
[INFO] [stdout] 210 |                         unit: UnitIdentity::Meter,
[INFO] [stdout]     |                               ^^^^^^^^^^^^ use of undeclared type `UnitIdentity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:223:31
[INFO] [stdout]     |
[INFO] [stdout] 223 |                 value: Value::Float(1.1),
[INFO] [stdout]     |                               ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:224:17
[INFO] [stdout]     |
[INFO] [stdout] 224 |                 dimension: Unit {
[INFO] [stdout]     |                 ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `UnitIdentity`
[INFO] [stdout]    --> src/parser.rs:225:27
[INFO] [stdout]     |
[INFO] [stdout] 225 |                     unit: UnitIdentity::Meter,
[INFO] [stdout]     |                           ^^^^^^^^^^^^ use of undeclared type `UnitIdentity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `power`
[INFO] [stdout]    --> src/parser.rs:228:17
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 power: 1
[INFO] [stdout]     |                 ^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:237:31
[INFO] [stdout]     |
[INFO] [stdout] 237 |                 value: Value::Float(9999999.987654),
[INFO] [stdout]     |                               ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:238:17
[INFO] [stdout]     |
[INFO] [stdout] 238 |                 dimension: Unit {
[INFO] [stdout]     |                 ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `UnitIdentity`
[INFO] [stdout]    --> src/parser.rs:239:27
[INFO] [stdout]     |
[INFO] [stdout] 239 |                     unit: UnitIdentity::Meter,
[INFO] [stdout]     |                           ^^^^^^^^^^^^ use of undeclared type `UnitIdentity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `power`
[INFO] [stdout]    --> src/parser.rs:242:17
[INFO] [stdout]     |
[INFO] [stdout] 242 |                 power: 1
[INFO] [stdout]     |                 ^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:268:35
[INFO] [stdout]     |
[INFO] [stdout] 268 |                     value: Value::Float(1.2),
[INFO] [stdout]     |                                   ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:269:21
[INFO] [stdout]     |
[INFO] [stdout] 269 |                     dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                     ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:282:35
[INFO] [stdout]     |
[INFO] [stdout] 282 |                     value: Value::Float(-2.0),
[INFO] [stdout]     |                                   ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:283:21
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     dimension: Unit {
[INFO] [stdout]     |                     ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:301:35
[INFO] [stdout]     |
[INFO] [stdout] 301 |                     value: Value::Float(2.0),
[INFO] [stdout]     |                                   ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:302:21
[INFO] [stdout]     |
[INFO] [stdout] 302 |                     dimension: Unit {
[INFO] [stdout]     |                     ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:307:35
[INFO] [stdout]     |
[INFO] [stdout] 307 |                     value: Value::Float(2.0),
[INFO] [stdout]     |                                   ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:308:21
[INFO] [stdout]     |
[INFO] [stdout] 308 |                     dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                     ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:323:39
[INFO] [stdout]     |
[INFO] [stdout] 323 |                         value: Value::Float(2.0),
[INFO] [stdout]     |                                       ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:324:25
[INFO] [stdout]     |
[INFO] [stdout] 324 |                         dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                         ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:327:39
[INFO] [stdout]     |
[INFO] [stdout] 327 |                         value: Value::Float(2.0),
[INFO] [stdout]     |                                       ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:328:25
[INFO] [stdout]     |
[INFO] [stdout] 328 |                         dimension: Unit {
[INFO] [stdout]     |                         ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:336:39
[INFO] [stdout]     |
[INFO] [stdout] 336 |                         value: Value::Float(4.0),
[INFO] [stdout]     |                                       ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:337:25
[INFO] [stdout]     |
[INFO] [stdout] 337 |                         dimension: Unit {
[INFO] [stdout]     |                         ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:342:39
[INFO] [stdout]     |
[INFO] [stdout] 342 |                         value: Value::Float(4.0),
[INFO] [stdout]     |                                       ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:343:25
[INFO] [stdout]     |
[INFO] [stdout] 343 |                         dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                         ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:362:39
[INFO] [stdout]     |
[INFO] [stdout] 362 |                         value: Value::Float(2.0),
[INFO] [stdout]     |                                       ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:363:25
[INFO] [stdout]     |
[INFO] [stdout] 363 |                         dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                         ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:366:39
[INFO] [stdout]     |
[INFO] [stdout] 366 |                         value: Value::Float(2.0),
[INFO] [stdout]     |                                       ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:367:25
[INFO] [stdout]     |
[INFO] [stdout] 367 |                         dimension: Unit {
[INFO] [stdout]     |                         ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:387:43
[INFO] [stdout]     |
[INFO] [stdout] 387 | ...                   value: Value::Float(2.0),
[INFO] [stdout]     |                                     ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:388:29
[INFO] [stdout]     |
[INFO] [stdout] 388 | ...                   dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                       ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:391:43
[INFO] [stdout]     |
[INFO] [stdout] 391 | ...                   value: Value::Float(3.0),
[INFO] [stdout]     |                                     ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:392:29
[INFO] [stdout]     |
[INFO] [stdout] 392 | ...                   dimension: Unit {
[INFO] [stdout]     |                       ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:400:43
[INFO] [stdout]     |
[INFO] [stdout] 400 | ...                   value: Value::Float(4.0),
[INFO] [stdout]     |                                     ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:401:29
[INFO] [stdout]     |
[INFO] [stdout] 401 | ...                   dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                       ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:404:43
[INFO] [stdout]     |
[INFO] [stdout] 404 | ...                   value: Value::Float(5.0),
[INFO] [stdout]     |                                     ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:405:29
[INFO] [stdout]     |
[INFO] [stdout] 405 | ...                   dimension: Unit {
[INFO] [stdout]     |                       ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:428:43
[INFO] [stdout]     |
[INFO] [stdout] 428 | ...                   value: Value::Float(2.0),
[INFO] [stdout]     |                                     ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | ...                   dimension: Unit { unit: Unit::Meter }
[INFO] [stdout]     |                       ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:432:43
[INFO] [stdout]     |
[INFO] [stdout] 432 | ...                   value: Value::Float(2.0),
[INFO] [stdout]     |                                     ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:433:29
[INFO] [stdout]     |
[INFO] [stdout] 433 | ...                   dimension: Unit {
[INFO] [stdout]     |                       ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Float` found for enum `types::Value` in the current scope
[INFO] [stdout]    --> src/parser.rs:442:39
[INFO] [stdout]     |
[INFO] [stdout] 442 |                         value: Value::Float(1.0),
[INFO] [stdout]     |                                       ^^^^^ variant or associated item not found in `types::Value`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum Value {
[INFO] [stdout]     | -------------- variant or associated item `Float` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `types::Value` consider using one of the following associated functions:
[INFO] [stdout]       types::Value::new
[INFO] [stdout]       types::Value::new_vec
[INFO] [stdout]    --> src/types.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(value: f64, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn new_vec(values: Vec<f64>, unit: Unit) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `types::AstNode::Double` has no field named `dimension`
[INFO] [stdout]    --> src/parser.rs:443:25
[INFO] [stdout]     |
[INFO] [stdout] 443 |                         dimension: Unit {
[INFO] [stdout]     |                         ^^^^^^^^^ `types::AstNode::Double` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/types.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |     vector.iter().map(|left_x| *left_x * scalar).collect()
[INFO] [stdout]    |                                          ^^^^^^ expected `f64`, found `Quantity<D1, U, f64>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected type `f64`
[INFO] [stdout]             found struct `Quantity<D1, U, f64>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `Vec<Quantity<<D1 as std::ops::Mul<D2>>::Output, U, f64>>` cannot be built from an iterator over elements of type `Quantity<D2, U, f64>`
[INFO] [stdout]   --> src/types.rs:63:50
[INFO] [stdout]    |
[INFO] [stdout] 63 |     vector.iter().map(|left_x| *left_x * scalar).collect()
[INFO] [stdout]    |                                                  ^^^^^^^ value of type `Vec<Quantity<<D1 as std::ops::Mul<D2>>::Output, U, f64>>` cannot be built from `std::iter::Iterator<Item=Quantity<D2, U, f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromIterator<Quantity<D2, U, f64>>` is not implemented for `Vec<Quantity<<D1 as std::ops::Mul<D2>>::Output, U, f64>>`
[INFO] [stdout] note: the method call chain might not have had the expected associated types
[INFO] [stdout]   --> src/types.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 63 |     vector.iter().map(|left_x| *left_x * scalar).collect()
[INFO] [stdout]    |     ------ ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Iterator::Item` changed to `Quantity<D2, U, f64>` here
[INFO] [stdout]    |     |      |
[INFO] [stdout]    |     |      `Iterator::Item` is `&Quantity<D2, U, f64>` here
[INFO] [stdout]    |     this expression has type `Vec<Quantity<D2, U, f64>>`
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]   --> /rustc/2ca7bcd03b87b52f7055a59b817443b0ac4a530d/library/core/src/iter/traits/iterator.rs:2015:4
[INFO] [stdout] help: consider extending the `where` clause, but there might be an alternative better way to express this requirement
[INFO] [stdout]    |
[INFO] [stdout] 61 |     <D1 as Dimension>::Kind: marker::Mul, Vec<Quantity<<D1 as std::ops::Mul<D2>>::Output, U, f64>>: FromIterator<Quantity<D2, U, f64>>
[INFO] [stdout]    |                                           ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot divide `Quantity<D2, U, f64>` by `Quantity<D1, U, f64>`
[INFO] [stdout]   --> src/types.rs:76:40
[INFO] [stdout]    |
[INFO] [stdout] 76 |     vector.iter().map(|left_x| *left_x / scalar).collect()
[INFO] [stdout]    |                                ------- ^ ------ Quantity<D1, U, f64>
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                Quantity<D2, U, f64>
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::L: std::ops::Sub<<D1 as Dimension>::L>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::M: std::ops::Sub<<D1 as Dimension>::M>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::T: std::ops::Sub<<D1 as Dimension>::T>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::I: std::ops::Sub<<D1 as Dimension>::I>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::Th: std::ops::Sub<<D1 as Dimension>::Th>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::N: std::ops::Sub<<D1 as Dimension>::N>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::J: std::ops::Sub<<D1 as Dimension>::J>
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::Kind: parser::uom::marker::Div
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::Kind: parser::uom::marker::Div
[INFO] [stdout]    |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot add `Quantity<D, U, f64>` to `Quantity<D, U, f64>`
[INFO] [stdout]   --> src/types.rs:87:42
[INFO] [stdout]    |
[INFO] [stdout] 87 |         .map(|(left_x, right_x)| *left_x + right_x)
[INFO] [stdout]    |                                  ------- ^ ------- Quantity<D, U, f64>
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |                                  Quantity<D, U, f64>
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]    |
[INFO] [stdout] 82 |     U: uom::si::Units<f64> + ?Sized, <D as Dimension>::Kind: parser::uom::marker::Add
[INFO] [stdout]    |                                      ++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot subtract `Quantity<D, U, f64>` from `Quantity<D, U, f64>`
[INFO] [stdout]    --> src/types.rs:102:42
[INFO] [stdout]     |
[INFO] [stdout] 102 |         .map(|(left_x, right_x)| *left_x - right_x)
[INFO] [stdout]     |                                  ------- ^ ------- Quantity<D, U, f64>
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  Quantity<D, U, f64>
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout]  97 |     U: uom::si::Units<f64> + ?Sized, <D as Dimension>::Kind: parser::uom::marker::Sub
[INFO] [stdout]     |                                      ++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot multiply `Quantity<D1, U, f64>` by `Quantity<D2, U, f64>`
[INFO] [stdout]    --> src/types.rs:119:42
[INFO] [stdout]     |
[INFO] [stdout] 119 |         .map(|(left_x, right_x)| *left_x * right_x)
[INFO] [stdout]     |                                  ------- ^ ------- Quantity<D2, U, f64>
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  Quantity<D1, U, f64>
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::L: std::ops::Add<<D2 as Dimension>::L>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::M: std::ops::Add<<D2 as Dimension>::M>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::T: std::ops::Add<<D2 as Dimension>::T>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::I: std::ops::Add<<D2 as Dimension>::I>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::Th: std::ops::Add<<D2 as Dimension>::Th>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::N: std::ops::Add<<D2 as Dimension>::N>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::J: std::ops::Add<<D2 as Dimension>::J>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D1 as Dimension>::Kind: parser::uom::marker::Mul
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 114 |     <D1 as Mul<D2>>::Output: Dimension, <D2 as Dimension>::Kind: parser::uom::marker::Mul
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: cannot divide `Quantity<D1, U, f64>` by `Quantity<D2, U, f64>`
[INFO] [stdout]    --> src/types.rs:136:42
[INFO] [stdout]     |
[INFO] [stdout] 136 |         .map(|(left_x, right_x)| *left_x / right_x)
[INFO] [stdout]     |                                  ------- ^ ------- Quantity<D2, U, f64>
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  Quantity<D1, U, f64>
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::L: std::ops::Sub<<D2 as Dimension>::L>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::M: std::ops::Sub<<D2 as Dimension>::M>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::T: std::ops::Sub<<D2 as Dimension>::T>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::I: std::ops::Sub<<D2 as Dimension>::I>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::Th: std::ops::Sub<<D2 as Dimension>::Th>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::N: std::ops::Sub<<D2 as Dimension>::N>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::J: std::ops::Sub<<D2 as Dimension>::J>
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D1 as Dimension>::Kind: parser::uom::marker::Div
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting the associated type
[INFO] [stdout]     |
[INFO] [stdout] 131 |     <D1 as Div<D2>>::Output: Dimension, <D2 as Dimension>::Kind: parser::uom::marker::Div
[INFO] [stdout]     |                                         +++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/types.rs:251:59
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 Value::Length(rhs_value) => Value::Length(lhs_value * rhs_value),
[INFO] [stdout]     |                                             ------------- ^^^^^^^^^^^^^^^^^^^^^ expected `UTerm`, found `UInt<UTerm, B1>`
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Quantity<..., ..., f64>` (`UTerm`)
[INFO] [stdout]                found struct `Quantity<..., ..., f64>` (`UInt<UTerm, B1>`)
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/types.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     Length(Length),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-3534497211727131533.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:254:70
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     Value::VectorLength(scalar_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:49:21
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |    ---------------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout]  49 |     D1: Dimension + Mul<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-13806039321682434499.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:254:70
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     Value::VectorLength(scalar_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:44:33
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                 ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-13806039321682434499.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  49 |     D1: Dimension + Mul<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:254:81
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     Value::VectorLength(scalar_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ----------------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:44:37
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                     ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-3626851140212162799.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  50 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:261:70
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     Value::VectorLength(scalar_vector_multiplication(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ---------------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:49:21
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |    ---------------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout]  49 |     D1: Dimension + Mul<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-6482482462879204709.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:261:70
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     Value::VectorLength(scalar_vector_multiplication(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ---------------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:44:33
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                 ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-6482482462879204709.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  49 |     D1: Dimension + Mul<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:261:81
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     Value::VectorLength(scalar_vector_multiplication(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ----------------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:44:37
[INFO] [stdout]     |
[INFO] [stdout]  44 | fn scalar_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                     ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-11546311092325394225.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  50 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:265:75
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     Value::VectorLength(elementwise_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         --------------------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `elementwise_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:111:21
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn elementwise_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |    --------------------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 111 |     D1: Dimension + Mul<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `elementwise_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-5657802535498472192.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:265:75
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     Value::VectorLength(elementwise_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         --------------------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `elementwise_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:106:38
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn elementwise_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                      ^^ required by the implicit `Sized` requirement on this type parameter in `elementwise_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-5657802535498472192.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout] 111 |     D1: Dimension + Mul<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:265:86
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     Value::VectorLength(elementwise_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `elementwise_vector_multiplication`
[INFO] [stdout]    --> src/types.rs:106:42
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn elementwise_vector_multiplication<D1, D2, U>(
[INFO] [stdout]     |                                          ^^ required by the implicit `Sized` requirement on this type parameter in `elementwise_vector_multiplication`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-6355356211580951263.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout] 112 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:254:41
[INFO] [stdout]     |
[INFO] [stdout] 254 |                     Value::VectorLength(scalar_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-13806039321682434499.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:261:41
[INFO] [stdout]     |
[INFO] [stdout] 261 |                     Value::VectorLength(scalar_vector_multiplication(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-6482482462879204709.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:265:41
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     Value::VectorLength(elementwise_vector_multiplication(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> * dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Mul<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-5657802535498472192.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/types.rs:280:59
[INFO] [stdout]     |
[INFO] [stdout] 280 |                 Value::Length(rhs_value) => Value::Length(lhs_value / rhs_value),
[INFO] [stdout]     |                                             ------------- ^^^^^^^^^^^^^^^^^^^^^ expected `PInt<UInt<UTerm, B1>>`, found `Z0`
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Quantity<..., ..., f64>` (`PInt<UInt<UTerm, B1>>`)
[INFO] [stdout]                found struct `Quantity<..., ..., f64>` (`Z0`)
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/types.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     Length(Length),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-3534497211727131533.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:283:64
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     Value::VectorLength(scalar_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:71:21
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |    ---------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout]  71 |     D1: Dimension + Div<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-13806039321682434499.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:283:64
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     Value::VectorLength(scalar_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:66:27
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |                           ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-13806039321682434499.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  71 |     D1: Dimension + Div<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:283:75
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     Value::VectorLength(scalar_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ----------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:66:31
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |                               ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-3626851140212162799.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  72 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:290:64
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     Value::VectorLength(scalar_vector_division(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ---------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:71:21
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |    ---------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout]  71 |     D1: Dimension + Div<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-6482482462879204709.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:290:64
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     Value::VectorLength(scalar_vector_division(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ---------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:66:27
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |                           ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-6482482462879204709.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  71 |     D1: Dimension + Div<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:290:75
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     Value::VectorLength(scalar_vector_division(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ----------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `scalar_vector_division`
[INFO] [stdout]    --> src/types.rs:66:31
[INFO] [stdout]     |
[INFO] [stdout]  66 | fn scalar_vector_division<D1, D2, U>(
[INFO] [stdout]     |                               ^^ required by the implicit `Sized` requirement on this type parameter in `scalar_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-11546311092325394225.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout]  72 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `_`
[INFO] [stdout]    --> src/types.rs:294:69
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     Value::VectorLength(elementwise_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         --------------------------- ^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / _`
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<_>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by a bound in `elementwise_vector_division`
[INFO] [stdout]    --> src/types.rs:128:21
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn elementwise_vector_division<D1, D2, U>(
[INFO] [stdout]     |    --------------------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 128 |     D1: Dimension + Div<D2>,
[INFO] [stdout]     |                     ^^^^^^^ required by this bound in `elementwise_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-5657802535498472192.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:294:69
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     Value::VectorLength(elementwise_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         --------------------------- ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `elementwise_vector_division`
[INFO] [stdout]    --> src/types.rs:123:32
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn elementwise_vector_division<D1, D2, U>(
[INFO] [stdout]     |                                ^^ required by the implicit `Sized` requirement on this type parameter in `elementwise_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-5657802535498472192.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout] 128 |     D1: Dimension + Div<D2> + ?Sized,
[INFO] [stdout]     |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` cannot be known at compilation time
[INFO] [stdout]    --> src/types.rs:294:80
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     Value::VectorLength(elementwise_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ---------------------------            ^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout] note: required by an implicit `Sized` bound in `elementwise_vector_division`
[INFO] [stdout]    --> src/types.rs:123:36
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn elementwise_vector_division<D1, D2, U>(
[INFO] [stdout]     |                                    ^^ required by the implicit `Sized` requirement on this type parameter in `elementwise_vector_division`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-6355356211580951263.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider relaxing the implicit `Sized` restriction
[INFO] [stdout]     |
[INFO] [stdout] 129 |     D2: Dimension + ?Sized,
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:283:41
[INFO] [stdout]     |
[INFO] [stdout] 283 |                     Value::VectorLength(scalar_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-13806039321682434499.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:290:41
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     Value::VectorLength(scalar_vector_division(rhs_value, lhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-6482482462879204709.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot divide `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>` by `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]    --> src/types.rs:294:41
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     Value::VectorLength(elementwise_vector_division(lhs_value, rhs_value))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...> / dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::ops::Div<dyn Dimension<I = Z0, J = Z0, Kind = (dyn Kind + 'static), L = PInt<UInt<UTerm, B1>>, M = Z0, N = Z0, T = Z0, Th = Z0>>` is not implemented for `dyn Dimension<I = ..., J = ..., Kind = ..., L = ..., M = ..., N = ..., T = ..., Th = ...>`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/crunch-ce36f2972c6a6af7.long-type-5657802535498472192.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `&types::Unit`
[INFO] [stdout]    --> src/types.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |          --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 306 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `types::Unit`
[INFO] [stdout]    --> src/types.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub enum Unit {
[INFO] [stdout]     | ^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(PartialEq)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(PartialEq)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `&types::Unit`
[INFO] [stdout]    --> src/types.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |          --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 310 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `types::Unit`
[INFO] [stdout]    --> src/types.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub enum Unit {
[INFO] [stdout]     | ^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(PartialEq)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(PartialEq)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `types::Unit` doesn't implement `Debug`
[INFO] [stdout]    --> src/types.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |                     ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 306 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Debug` is not implemented for `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout]     = note: add `#[derive(Debug)]` to `types::Unit` or manually `impl Debug for types::Unit`
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(Debug)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(Debug)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `types::Unit` doesn't implement `Debug`
[INFO] [stdout]    --> src/types.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |                     ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 310 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Debug` is not implemented for `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout]     = note: add `#[derive(Debug)]` to `types::Unit` or manually `impl Debug for types::Unit`
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(Debug)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(Debug)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::Unit: Clone` is not satisfied
[INFO] [stdout]    --> src/types.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |                            ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 306 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Clone` is not implemented for `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(Clone)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(Clone)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::Unit: Clone` is not satisfied
[INFO] [stdout]    --> src/types.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[derive(PartialEq, Debug, Clone)]
[INFO] [stdout]     |                            ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 310 |         unit: Unit,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Clone` is not implemented for `types::Unit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider annotating `types::Unit` with `#[derive(Clone)]`
[INFO] [stdout]     |
[INFO] [stdout] 140 + #[derive(Clone)]
[INFO] [stdout] 141 | pub enum Unit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/types.rs:162:13
[INFO] [stdout]     |
[INFO] [stdout] 162 |             _ => panic!("Unsupported unit"),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/types.rs:162:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |             Unit::Meter => Self::Length(Length::new::<meter>(value)),
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] 161 |             Unit::Kilometer => Self::Length(Length::new::<kilometer>(value)),
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] 162 |             _ => panic!("Unsupported unit"),
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/types.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |             _ => panic!("Unsupported unit"),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/types.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 168 |             Unit::Meter => Self::VectorLength(
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 174 |             Unit::Kilometer => Self::VectorLength(
[INFO] [stdout]     |             --------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 180 |             _ => panic!("Unsupported unit"),
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0369, E0433, E0559, E0574, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crunch` (bin "crunch" test) due to 118 previous errors; 14 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "b78bf3c6e417c1396fcb81f17ef7162201990cccc0986d88bdf3ca0d25037601", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b78bf3c6e417c1396fcb81f17ef7162201990cccc0986d88bdf3ca0d25037601", kill_on_drop: false }`
[INFO] [stdout] b78bf3c6e417c1396fcb81f17ef7162201990cccc0986d88bdf3ca0d25037601
