[INFO] fetching crate dxpr 0.2.3...
[INFO] checking dxpr-0.2.3 against master#fd2c811d25ad5773fbd2463e058bf4edf4d44eb2 for pr-130443
[INFO] extracting crate dxpr 0.2.3 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate dxpr 0.2.3 on toolchain fd2c811d25ad5773fbd2463e058bf4edf4d44eb2
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+fd2c811d25ad5773fbd2463e058bf4edf4d44eb2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-6-tc1/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-6-tc1/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate dxpr 0.2.3
[INFO] finished tweaking crates.io crate dxpr 0.2.3
[INFO] tweaked toml for crates.io crate dxpr 0.2.3 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+fd2c811d25ad5773fbd2463e058bf4edf4d44eb2" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+fd2c811d25ad5773fbd2463e058bf4edf4d44eb2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+fd2c811d25ad5773fbd2463e058bf4edf4d44eb2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0df9c77af9619875910e267c28a90ff07e622d87b43b67d3d6b4ddd3fafa2d5f
[INFO] running `Command { std: "docker" "start" "-a" "0df9c77af9619875910e267c28a90ff07e622d87b43b67d3d6b4ddd3fafa2d5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0df9c77af9619875910e267c28a90ff07e622d87b43b67d3d6b4ddd3fafa2d5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0df9c77af9619875910e267c28a90ff07e622d87b43b67d3d6b4ddd3fafa2d5f", kill_on_drop: false }`
[INFO] [stdout] 0df9c77af9619875910e267c28a90ff07e622d87b43b67d3d6b4ddd3fafa2d5f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+fd2c811d25ad5773fbd2463e058bf4edf4d44eb2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9987c21ca45be842d75471383b347652ef76d3d1a859a93e03b66ed1ef1edec6
[INFO] running `Command { std: "docker" "start" "-a" "9987c21ca45be842d75471383b347652ef76d3d1a859a93e03b66ed1ef1edec6", kill_on_drop: false }`
[INFO] [stderr]     Checking dxpr v0.2.3 (/opt/rustwide/workdir)
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/eval.rs:107:49
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 pub struct $existing_fn<$($arg: ~const Eval<Evaluated = $t>),+> { $($arg: $crate::expr::Expr<$arg>),+ }
[INFO] [stdout]     |                                                 ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/eval.rs:108:30
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 impl<$($arg: ~const Eval<Evaluated = $t>),+> $existing_fn<$($arg),+> {
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: inherent impls cannot have `~const` trait bounds
[INFO] [stdout]    --> src/eval.rs:108:17
[INFO] [stdout]     |
[INFO] [stdout] 108 | /                 impl<$($arg: ~const Eval<Evaluated = $t>),+> $existing_fn<$($arg),+> {
[INFO] [stdout] 109 | |                     #[inline(always)]
[INFO] [stdout] 110 | |                     pub const fn new($($arg: $crate::expr::Expr<$arg>),+) -> Self {
[INFO] [stdout] 111 | |                         Self { $($arg),+ }
[INFO] [stdout] 112 | |                     }
[INFO] [stdout] 113 | |                 }
[INFO] [stdout]     | |_________________^
[INFO] [stdout] ...
[INFO] [stdout] 136 |   op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     |   ---------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]  --> src/expr.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Expr<T: ~const Eval>(pub(crate) T);
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this item cannot have `~const` trait bounds
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]  --> src/expr.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Expr<T: ~const Eval>(pub(crate) T);
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]  --> src/expr.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   = note: this error originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:19:29
[INFO] [stdout]     |
[INFO] [stdout] 19  |         pub struct $Name<T: ~const Eval>(T);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:19:29
[INFO] [stdout]     |
[INFO] [stdout] 19  |         pub struct $Name<T: ~const Eval>(T);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:17:18
[INFO] [stdout]     |
[INFO] [stdout] 17  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:19:29
[INFO] [stdout]     |
[INFO] [stdout] 19  |         pub struct $Name<T: ~const Eval>(T);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:19:29
[INFO] [stdout]     |
[INFO] [stdout] 19  |         pub struct $Name<T: ~const Eval>(T);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:17:18
[INFO] [stdout]     |
[INFO] [stdout] 17  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/eval.rs:107:49
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 pub struct $existing_fn<$($arg: ~const Eval<Evaluated = $t>),+> { $($arg: $crate::expr::Expr<$arg>),+ }
[INFO] [stdout]     |                                                 ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/eval.rs:108:30
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 impl<$($arg: ~const Eval<Evaluated = $t>),+> $existing_fn<$($arg),+> {
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: inherent impls cannot have `~const` trait bounds
[INFO] [stdout]    --> src/eval.rs:108:17
[INFO] [stdout]     |
[INFO] [stdout] 108 | /                 impl<$($arg: ~const Eval<Evaluated = $t>),+> $existing_fn<$($arg),+> {
[INFO] [stdout] 109 | |                     #[inline(always)]
[INFO] [stdout] 110 | |                     pub const fn new($($arg: $crate::expr::Expr<$arg>),+) -> Self {
[INFO] [stdout] 111 | |                         Self { $($arg),+ }
[INFO] [stdout] 112 | |                     }
[INFO] [stdout] 113 | |                 }
[INFO] [stdout]     | |_________________^
[INFO] [stdout] ...
[INFO] [stdout] 136 |   op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     |   ---------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]  --> src/expr.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Expr<T: ~const Eval>(pub(crate) T);
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this item cannot have `~const` trait bounds
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]  --> src/expr.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Expr<T: ~const Eval>(pub(crate) T);
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]  --> src/expr.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   = note: this error originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:19:29
[INFO] [stdout]     |
[INFO] [stdout] 19  |         pub struct $Name<T: ~const Eval>(T);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:19:29
[INFO] [stdout]     |
[INFO] [stdout] 19  |         pub struct $Name<T: ~const Eval>(T);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:17:18
[INFO] [stdout]     |
[INFO] [stdout] 17  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:19:29
[INFO] [stdout]     |
[INFO] [stdout] 19  |         pub struct $Name<T: ~const Eval>(T);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:19:29
[INFO] [stdout]     |
[INFO] [stdout] 19  |         pub struct $Name<T: ~const Eval>(T);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:17:18
[INFO] [stdout]     |
[INFO] [stdout] 17  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this item cannot have `~const` trait bounds
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:29
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` is not allowed here
[INFO] [stdout]    --> src/ops/mod.rs:92:45
[INFO] [stdout]     |
[INFO] [stdout] 92  |         pub struct $Name<L: ~const Eval, R: ~const Eval>(L, R);
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this impl is not `const`, so it cannot have `~const` trait bounds
[INFO] [stdout]    --> src/ops/mod.rs:90:18
[INFO] [stdout]     |
[INFO] [stdout] 90  |         #[derive(Debug)]
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the feature `associated_type_bounds` has been stable since 1.79.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     associated_type_bounds,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | #![deny(warnings, missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(stable_features)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the feature `associated_type_bounds` has been stable since 1.79.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     associated_type_bounds,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | #![deny(warnings, missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(stable_features)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Neg` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:20:72
[INFO] [stdout]     |
[INFO] [stdout] 20  |         impl<T: ~const Eval<Evaluated: ~const core::ops::$Name>> const core::ops::$Name for Expr<T> {
[INFO] [stdout]     |                                                                        ^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Not` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:20:72
[INFO] [stdout]     |
[INFO] [stdout] 20  |         impl<T: ~const Eval<Evaluated: ~const core::ops::$Name>> const core::ops::$Name for Expr<T> {
[INFO] [stdout]     |                                                                        ^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Neg` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:20:72
[INFO] [stdout]     |
[INFO] [stdout] 20  |         impl<T: ~const Eval<Evaluated: ~const core::ops::$Name>> const core::ops::$Name for Expr<T> {
[INFO] [stdout]     |                                                                        ^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Add` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Not` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:20:72
[INFO] [stdout]     |
[INFO] [stdout] 20  |         impl<T: ~const Eval<Evaluated: ~const core::ops::$Name>> const core::ops::$Name for Expr<T> {
[INFO] [stdout]     |                                                                        ^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAnd` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Add` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXor` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAnd` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Div` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Mul` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXor` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Rem` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Div` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Shl` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Mul` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Shr` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Rem` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Sub` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Shl` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Shr` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Sub` which is not marked with `#[const_trait]`
[INFO] [stdout]    --> src/ops/mod.rs:96:21
[INFO] [stdout]     |
[INFO] [stdout] 96  |             > const core::ops::$Name<Expr<R>> for Expr<L>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `eval` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/eval.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn eval(self) -> Self::Evaluated;
[INFO] [stdout]    |            - expected 0 const parameters
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `eval` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/eval.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn eval(self) -> Self::Evaluated;
[INFO] [stdout]    |            - expected 0 const parameters
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `eval` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/eval.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn eval(&self) -> Self::Evaluated;
[INFO] [stdout]    |            - expected 0 const parameters
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `eval` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/eval.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn eval(&self) -> Self::Evaluated;
[INFO] [stdout]    |            - expected 0 const parameters
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/grad.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]    |             - expected 0 const parameters
[INFO] [stdout] ...
[INFO] [stdout] 87 |             fn grad<U>($self, $x: &U) -> $output {
[INFO] [stdout]    |                     ^ found 1 const parameter
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/expr.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | crate::implement_grad!(T: Grad => Expr<T> >-> Expr<T::Differentiated>: |self, x| where own { Expr(self.0.grad(x)) } else { Expr((&self.0).grad(x)) ...
[INFO] [stdout]    | ----------------------------------------------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `crate::implement_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/grad.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]    |             - expected 0 const parameters
[INFO] [stdout] ...
[INFO] [stdout] 93 |             fn grad<U>(&$self, $x: &U) -> $output {
[INFO] [stdout]    |                     ^ found 1 const parameter
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/expr.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | crate::implement_grad!(T: Grad => Expr<T> >-> Expr<T::Differentiated>: |self, x| where own { Expr(self.0.grad(x)) } else { Expr((&self.0).grad(x)) ...
[INFO] [stdout]    | ----------------------------------------------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `crate::implement_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/grad.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]    |             - expected 0 const parameters
[INFO] [stdout] ...
[INFO] [stdout] 87 |             fn grad<U>($self, $x: &U) -> $output {
[INFO] [stdout]    |                     ^ found 1 const parameter
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/expr.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | crate::implement_grad!(T: Grad => Expr<T> >-> Expr<T::Differentiated>: |self, x| where own { Expr(self.0.grad(x)) } else { Expr((&self.0).grad(x)) ...
[INFO] [stdout]    | ----------------------------------------------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `crate::implement_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/grad.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]    |             - expected 0 const parameters
[INFO] [stdout] ...
[INFO] [stdout] 93 |             fn grad<U>(&$self, $x: &U) -> $output {
[INFO] [stdout]    |                     ^ found 1 const parameter
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/expr.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | crate::implement_grad!(T: Grad => Expr<T> >-> Expr<T::Differentiated>: |self, x| where own { Expr(self.0.grad(x)) } else { Expr((&self.0).grad(x)) ...
[INFO] [stdout]    | ----------------------------------------------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `crate::implement_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/grad.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]    |             - expected 0 const parameters
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/leaf.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn grad<U>(self, x: &U) -> Self::Differentiated {
[INFO] [stdout]    |             ^ found 1 const parameter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/grad.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]    |             - expected 0 const parameters
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/leaf.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn grad<U>(self, x: &U) -> Self::Differentiated {
[INFO] [stdout]    |             ^ found 1 const parameter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/grad.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]    |             - expected 0 const parameters
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/leaf.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn grad<U>(&self, x: &U) -> Self::Differentiated {
[INFO] [stdout]    |             ^ found 1 const parameter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]   --> src/grad.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[const_trait]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]    |             - expected 0 const parameters
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/leaf.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn grad<U>(&self, x: &U) -> Self::Differentiated {
[INFO] [stdout]    |             ^ found 1 const parameter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:20:47
[INFO] [stdout]     |
[INFO] [stdout] 20  |         impl<T: ~const Eval<Evaluated: ~const core::ops::$Name>> const core::ops::$Name for Expr<T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:20:47
[INFO] [stdout]     |
[INFO] [stdout] 20  |         impl<T: ~const Eval<Evaluated: ~const core::ops::$Name>> const core::ops::$Name for Expr<T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:28:39
[INFO] [stdout]     |
[INFO] [stdout] 28  |             T: Eval<Evaluated: ~const core::ops::$Name> =>
[INFO] [stdout]     |                                       ^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:20:47
[INFO] [stdout]     |
[INFO] [stdout] 20  |         impl<T: ~const Eval<Evaluated: ~const core::ops::$Name>> const core::ops::$Name for Expr<T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:28:39
[INFO] [stdout]     |
[INFO] [stdout] 28  |             T: Eval<Evaluated: ~const core::ops::$Name> =>
[INFO] [stdout]     |                                       ^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:28:39
[INFO] [stdout]     |
[INFO] [stdout] 28  |             T: Eval<Evaluated: ~const core::ops::$Name> =>
[INFO] [stdout]     |                                       ^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:20:47
[INFO] [stdout]     |
[INFO] [stdout] 20  |         impl<T: ~const Eval<Evaluated: ~const core::ops::$Name>> const core::ops::$Name for Expr<T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:43:50
[INFO] [stdout]     |
[INFO] [stdout] 43  |                 T: ~const Eval<Evaluated: ~const core::ops::$Name>
[INFO] [stdout]     |                                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:44:81
[INFO] [stdout]     |
[INFO] [stdout] 44  |                     + ~const Grad<Differentiated: ~const Eval<Evaluated: ~const core::ops::$Diff>>,
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:28:39
[INFO] [stdout]     |
[INFO] [stdout] 28  |             T: Eval<Evaluated: ~const core::ops::$Name> =>
[INFO] [stdout]     |                                       ^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:50:50
[INFO] [stdout]     |
[INFO] [stdout] 50  |                 T: ~const Eval<Evaluated: ~const core::ops::$Name>
[INFO] [stdout]     |                                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:43:50
[INFO] [stdout]     |
[INFO] [stdout] 43  |                 T: ~const Eval<Evaluated: ~const core::ops::$Name>
[INFO] [stdout]     |                                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:51:81
[INFO] [stdout]     |
[INFO] [stdout] 51  |                     + ~const Grad<Differentiated: ~const Eval<Evaluated: ~const core::ops::$Diff>>,
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:44:81
[INFO] [stdout]     |
[INFO] [stdout] 44  |                     + ~const Grad<Differentiated: ~const Eval<Evaluated: ~const core::ops::$Diff>>,
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:24:1
[INFO] [stdout]     |
[INFO] [stdout] 24  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27  |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:55:21
[INFO] [stdout]     |
[INFO] [stdout] 55  |             fn grad<U>(self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:60:50
[INFO] [stdout]     |
[INFO] [stdout] 60  |                 T: ~const Eval<Evaluated: ~const core::ops::$Name>
[INFO] [stdout]     |                                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:50:50
[INFO] [stdout]     |
[INFO] [stdout] 50  |                 T: ~const Eval<Evaluated: ~const core::ops::$Name>
[INFO] [stdout]     |                                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:61:81
[INFO] [stdout]     |
[INFO] [stdout] 61  |                     + ~const Grad<Differentiated: ~const Eval<Evaluated: ~const core::ops::$Diff>>,
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:51:81
[INFO] [stdout]     |
[INFO] [stdout] 51  |                     + ~const Grad<Differentiated: ~const Eval<Evaluated: ~const core::ops::$Diff>>,
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:65:21
[INFO] [stdout]     |
[INFO] [stdout] 65  |             fn grad<U>(&self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:24:1
[INFO] [stdout]     |
[INFO] [stdout] 24  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27  |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:55:21
[INFO] [stdout]     |
[INFO] [stdout] 55  |             fn grad<U>(self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:70:50
[INFO] [stdout]     |
[INFO] [stdout] 70  |                 T: ~const Eval<Evaluated: ~const core::ops::$Name>
[INFO] [stdout]     |                                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:71:81
[INFO] [stdout]     |
[INFO] [stdout] 71  |                     + ~const Grad<Differentiated: ~const Eval<Evaluated: ~const core::ops::$Diff>>,
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:60:50
[INFO] [stdout]     |
[INFO] [stdout] 60  |                 T: ~const Eval<Evaluated: ~const core::ops::$Name>
[INFO] [stdout]     |                                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:61:81
[INFO] [stdout]     |
[INFO] [stdout] 61  |                     + ~const Grad<Differentiated: ~const Eval<Evaluated: ~const core::ops::$Diff>>,
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:65:21
[INFO] [stdout]     |
[INFO] [stdout] 65  |             fn grad<U>(&self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:70:50
[INFO] [stdout]     |
[INFO] [stdout] 70  |                 T: ~const Eval<Evaluated: ~const core::ops::$Name>
[INFO] [stdout]     |                                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:71:81
[INFO] [stdout]     |
[INFO] [stdout] 71  |                     + ~const Grad<Differentiated: ~const Eval<Evaluated: ~const core::ops::$Diff>>,
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:94:50
[INFO] [stdout]     |
[INFO] [stdout] 94  |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>,
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:119:50
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:122:47
[INFO] [stdout]     |
[INFO] [stdout] 122 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 123 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 124 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 201 |   binary_grad!(Add, Add);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:105:39
[INFO] [stdout]     |
[INFO] [stdout] 105 |             L: Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>, R: Eval =>
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:133:50
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:136:47
[INFO] [stdout]     |
[INFO] [stdout] 136 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 137 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 138 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 201 |   binary_grad!(Add, Add);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:119:50
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:122:47
[INFO] [stdout]     |
[INFO] [stdout] 122 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 123 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 124 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 201 |   binary_grad!(Add, Add);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:24:1
[INFO] [stdout]     |
[INFO] [stdout] 24  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27  |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |             fn grad<U>(self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:150:50
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:153:47
[INFO] [stdout]     |
[INFO] [stdout] 153 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 154 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 155 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 201 |   binary_grad!(Add, Add);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:133:50
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:136:47
[INFO] [stdout]     |
[INFO] [stdout] 136 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 137 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 138 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 201 |   binary_grad!(Add, Add);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |             fn grad<U>(&self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:167:50
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:170:47
[INFO] [stdout]     |
[INFO] [stdout] 170 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 171 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 172 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 201 |   binary_grad!(Add, Add);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:24:1
[INFO] [stdout]     |
[INFO] [stdout] 24  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27  |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |             fn grad<U>(self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:119:50
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:150:50
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:122:47
[INFO] [stdout]     |
[INFO] [stdout] 122 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 123 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 124 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   binary_grad!(Sub, Sub);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:153:47
[INFO] [stdout]     |
[INFO] [stdout] 153 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 154 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 155 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 201 |   binary_grad!(Add, Add);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |             fn grad<U>(&self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:133:50
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:167:50
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:136:47
[INFO] [stdout]     |
[INFO] [stdout] 136 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 137 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 138 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   binary_grad!(Sub, Sub);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:170:47
[INFO] [stdout]     |
[INFO] [stdout] 170 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 171 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 172 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 201 |   binary_grad!(Add, Add);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:119:50
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:24:1
[INFO] [stdout]     |
[INFO] [stdout] 24  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27  |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |             fn grad<U>(self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:122:47
[INFO] [stdout]     |
[INFO] [stdout] 122 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 123 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 124 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   binary_grad!(Sub, Sub);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:150:50
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:153:47
[INFO] [stdout]     |
[INFO] [stdout] 153 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 154 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 155 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   binary_grad!(Sub, Sub);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:133:50
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |             fn grad<U>(&self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:136:47
[INFO] [stdout]     |
[INFO] [stdout] 136 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 137 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 138 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   binary_grad!(Sub, Sub);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:167:50
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:170:47
[INFO] [stdout]     |
[INFO] [stdout] 170 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 171 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 172 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   binary_grad!(Sub, Sub);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:24:1
[INFO] [stdout]     |
[INFO] [stdout] 24  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27  |     fn grad<U>(self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |             fn grad<U>(self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:150:50
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:153:47
[INFO] [stdout]     |
[INFO] [stdout] 153 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 154 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 155 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   binary_grad!(Sub, Sub);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0049]: method `grad` has 1 const parameter but its trait declaration has 0 const parameters
[INFO] [stdout]    --> src/grad.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | #[const_trait]
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |     fn grad<U>(&self, x: &U) -> Self::Differentiated;
[INFO] [stdout]     |             - expected 0 const parameters
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ops/mod.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |             fn grad<U>(&self, x: &U) -> Self::Differentiated {
[INFO] [stdout]     |                     ^ found 1 const parameter
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:167:50
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 L: ~const Eval<Evaluated: ~const core::ops::$Name<R::Evaluated>>
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits
[INFO] [stdout]    --> src/ops/mod.rs:170:47
[INFO] [stdout]     |
[INFO] [stdout] 170 |                               Evaluated: ~const core::ops::$Diff<
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 171 | |                                 <R::Differentiated as eval::Typed>::Evaluated,
[INFO] [stdout] 172 | |                             >,
[INFO] [stdout]     | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   binary_grad!(Sub, Sub);
[INFO] [stdout]     |   ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]    --> src/eval.rs:142:38
[INFO] [stdout]     |
[INFO] [stdout] 142 |     const A: Expr<Add<&i32, &i32>> = var(&1) + var(&2); // -> 3
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]    --> src/eval.rs:143:38
[INFO] [stdout]     |
[INFO] [stdout] 143 |     const B: Expr<Add<&i32, &i32>> = var(&4) + var(&8); // -> 12
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]    --> src/eval.rs:142:38
[INFO] [stdout]     |
[INFO] [stdout] 142 |     const A: Expr<Add<&i32, &i32>> = var(&1) + var(&2); // -> 3
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]    --> src/eval.rs:143:38
[INFO] [stdout]     |
[INFO] [stdout] 143 |     const B: Expr<Add<&i32, &i32>> = var(&4) + var(&8); // -> 12
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<shit<ops::Add<&i32, &i32>, ops::Add<&i32, &i32>> as eval::Own>::eval` in constants
[INFO] [stdout]    --> src/eval.rs:144:37
[INFO] [stdout]     |
[INFO] [stdout] 144 |     const C: i32 = dxpr::shit(A, B).eval(); // -> 15
[INFO] [stdout]     |                                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<shit<ops::Add<&i32, &i32>, ops::Add<&i32, &i32>> as eval::Own>::eval` in constants
[INFO] [stdout]    --> src/eval.rs:144:37
[INFO] [stdout]     |
[INFO] [stdout] 144 |     const C: i32 = dxpr::shit(A, B).eval(); // -> 15
[INFO] [stdout]     |                                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<&i32> as eval::Own>::eval` in constants
[INFO] [stdout]   --> src/test.rs:34:33
[INFO] [stdout]    |
[INFO] [stdout] 34 |     const VALUE: i32 = *var(&4).eval();
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<Expr<&i32>> as eval::Own>::eval` in constants
[INFO] [stdout]   --> src/test.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |     const VALUE: i32 = *Expr(var(&4)).eval();
[INFO] [stdout]    |                                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]   --> src/test.rs:56:24
[INFO] [stdout]    |
[INFO] [stdout] 56 |     const VALUE: i32 = (-var(&4)).eval();
[INFO] [stdout]    |                        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<ops::Neg<&i32>> as eval::Own>::eval` in constants
[INFO] [stdout]   --> src/test.rs:56:35
[INFO] [stdout]    |
[INFO] [stdout] 56 |     const VALUE: i32 = (-var(&4)).eval();
[INFO] [stdout]    |                                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]   --> src/test.rs:67:26
[INFO] [stdout]    |
[INFO] [stdout] 67 |     const VALUE: i32 = (--var(&4)).eval();
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]   --> src/test.rs:67:24
[INFO] [stdout]    |
[INFO] [stdout] 67 |     const VALUE: i32 = (--var(&4)).eval();
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<ops::Neg<ops::Neg<&i32>>> as eval::Own>::eval` in constants
[INFO] [stdout]   --> src/test.rs:67:36
[INFO] [stdout]    |
[INFO] [stdout] 67 |     const VALUE: i32 = (--var(&4)).eval();
[INFO] [stdout]    |                                    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<a> as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/eval.rs:118:64
[INFO] [stdout]     |
[INFO] [stdout] 118 |                         super::super::$existing_fn($(self.$arg.eval()),+)
[INFO] [stdout]     |                                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<b> as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/eval.rs:118:64
[INFO] [stdout]     |
[INFO] [stdout] 118 |                         super::super::$existing_fn($(self.$arg.eval()),+)
[INFO] [stdout]     |                                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<a> as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/eval.rs:120:67
[INFO] [stdout]     |
[INFO] [stdout] 120 |                         super::super::$existing_fn($((&self.$arg).eval()),+)
[INFO] [stdout]     |                                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<b> as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/eval.rs:120:67
[INFO] [stdout]     |
[INFO] [stdout] 120 |                         super::super::$existing_fn($((&self.$arg).eval()),+)
[INFO] [stdout]     |                                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Own>::eval` in constant functions
[INFO] [stdout]  --> src/expr.rs:9:87
[INFO] [stdout]   |
[INFO] [stdout] 9 | crate::implement_eval!(T: Eval => Expr<T> >-> T::Evaluated: |self| where own { self.0.eval() } else { (&self.0).eval() });
[INFO] [stdout]   |                                                                                       ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:54:1
[INFO] [stdout]   |
[INFO] [stdout] 54+ #![feature(effects)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Ref>::eval` in constant functions
[INFO] [stdout]  --> src/expr.rs:9:113
[INFO] [stdout]   |
[INFO] [stdout] 9 | crate::implement_eval!(T: Eval => Expr<T> >-> T::Evaluated: |self| where own { self.0.eval() } else { (&self.0).eval() });
[INFO] [stdout]   |                                                                                                                 ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:54:1
[INFO] [stdout]   |
[INFO] [stdout] 54+ #![feature(effects)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]   --> src/expr.rs:10:106
[INFO] [stdout]    |
[INFO] [stdout] 10 | crate::implement_grad!(T: Grad => Expr<T> >-> Expr<T::Differentiated>: |self, x| where own { Expr(self.0.grad(x)) } else { Expr((&self.0)...
[INFO] [stdout]    |                                                                                                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]   --> src/expr.rs:10:139
[INFO] [stdout]    |
[INFO] [stdout] 10 | ...f, x| where own { Expr(self.0.grad(x)) } else { Expr((&self.0).grad(x)) });
[INFO] [stdout]    |                                                                   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:31:48
[INFO] [stdout]     |
[INFO] [stdout] 31  |                 core::ops::$Name::$name(self.0.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<T as eval::Typed>::Evaluated as std::ops::Neg>::neg` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:31:35
[INFO] [stdout]     |
[INFO] [stdout] 31  |                 core::ops::$Name::$name(self.0.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:33:51
[INFO] [stdout]     |
[INFO] [stdout] 33  |                 core::ops::$Name::$name((&self.0).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<T as eval::Typed>::Evaluated as std::ops::Neg>::neg` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:33:35
[INFO] [stdout]     |
[INFO] [stdout] 33  |                 core::ops::$Name::$name((&self.0).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:31:48
[INFO] [stdout]     |
[INFO] [stdout] 31  |                 core::ops::$Name::$name(self.0.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<T as eval::Typed>::Evaluated as std::ops::Not>::not` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:31:35
[INFO] [stdout]     |
[INFO] [stdout] 31  |                 core::ops::$Name::$name(self.0.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:33:51
[INFO] [stdout]     |
[INFO] [stdout] 33  |                 core::ops::$Name::$name((&self.0).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<T as eval::Typed>::Evaluated as std::ops::Not>::not` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:33:35
[INFO] [stdout]     |
[INFO] [stdout] 33  |                 core::ops::$Name::$name((&self.0).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:56:30
[INFO] [stdout]     |
[INFO] [stdout] 56  |                 $Diff(self.0.grad(x))
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:66:33
[INFO] [stdout]     |
[INFO] [stdout] 66  |                 $Diff((&self.0).grad(x))
[INFO] [stdout]     |                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Add<<R as eval::Typed>::Evaluated>>::add` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Add<<R as eval::Typed>::Evaluated>>::add` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitAnd<<R as eval::Typed>::Evaluated>>::bitand` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitAnd<<R as eval::Typed>::Evaluated>>::bitand` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitOr<<R as eval::Typed>::Evaluated>>::bitor` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitOr<<R as eval::Typed>::Evaluated>>::bitor` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitXor<<R as eval::Typed>::Evaluated>>::bitxor` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitXor<<R as eval::Typed>::Evaluated>>::bitxor` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Div<<R as eval::Typed>::Evaluated>>::div` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Div<<R as eval::Typed>::Evaluated>>::div` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Mul<<R as eval::Typed>::Evaluated>>::mul` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Mul<<R as eval::Typed>::Evaluated>>::mul` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Rem<<R as eval::Typed>::Evaluated>>::rem` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Rem<<R as eval::Typed>::Evaluated>>::rem` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Shl<<R as eval::Typed>::Evaluated>>::shl` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Shl<<R as eval::Typed>::Evaluated>>::shl` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Shr<<R as eval::Typed>::Evaluated>>::shr` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Shr<<R as eval::Typed>::Evaluated>>::shr` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Sub<<R as eval::Typed>::Evaluated>>::sub` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Sub<<R as eval::Typed>::Evaluated>>::sub` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:146:30
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 $Diff(self.0.grad(x), self.1.grad(x))
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:146:46
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 $Diff(self.0.grad(x), self.1.grad(x))
[INFO] [stdout]     |                                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:163:33
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 $Diff((&self.0).grad(x), (&self.1).grad(x))
[INFO] [stdout]     |                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:163:52
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 $Diff((&self.0).grad(x), (&self.1).grad(x))
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:146:30
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 $Diff(self.0.grad(x), self.1.grad(x))
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:146:46
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 $Diff(self.0.grad(x), self.1.grad(x))
[INFO] [stdout]     |                                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:163:33
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 $Diff((&self.0).grad(x), (&self.1).grad(x))
[INFO] [stdout]     |                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:163:52
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 $Diff((&self.0).grad(x), (&self.1).grad(x))
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<a> as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/eval.rs:118:64
[INFO] [stdout]     |
[INFO] [stdout] 118 |                         super::super::$existing_fn($(self.$arg.eval()),+)
[INFO] [stdout]     |                                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<b> as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/eval.rs:118:64
[INFO] [stdout]     |
[INFO] [stdout] 118 |                         super::super::$existing_fn($(self.$arg.eval()),+)
[INFO] [stdout]     |                                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<a> as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/eval.rs:120:67
[INFO] [stdout]     |
[INFO] [stdout] 120 |                         super::super::$existing_fn($((&self.$arg).eval()),+)
[INFO] [stdout]     |                                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<Expr<b> as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/eval.rs:120:67
[INFO] [stdout]     |
[INFO] [stdout] 120 |                         super::super::$existing_fn($((&self.$arg).eval()),+)
[INFO] [stdout]     |                                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | op_from_fn!(shit(a: i32, b: i32) -> i32);
[INFO] [stdout]     | ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `op_from_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Own>::eval` in constant functions
[INFO] [stdout]  --> src/expr.rs:9:87
[INFO] [stdout]   |
[INFO] [stdout] 9 | crate::implement_eval!(T: Eval => Expr<T> >-> T::Evaluated: |self| where own { self.0.eval() } else { (&self.0).eval() });
[INFO] [stdout]   |                                                                                       ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:54:1
[INFO] [stdout]   |
[INFO] [stdout] 54+ #![feature(effects)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Ref>::eval` in constant functions
[INFO] [stdout]  --> src/expr.rs:9:113
[INFO] [stdout]   |
[INFO] [stdout] 9 | crate::implement_eval!(T: Eval => Expr<T> >-> T::Evaluated: |self| where own { self.0.eval() } else { (&self.0).eval() });
[INFO] [stdout]   |                                                                                                                 ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:54:1
[INFO] [stdout]   |
[INFO] [stdout] 54+ #![feature(effects)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]   --> src/expr.rs:10:106
[INFO] [stdout]    |
[INFO] [stdout] 10 | crate::implement_grad!(T: Grad => Expr<T> >-> Expr<T::Differentiated>: |self, x| where own { Expr(self.0.grad(x)) } else { Expr((&self.0)...
[INFO] [stdout]    |                                                                                                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]   --> src/expr.rs:10:139
[INFO] [stdout]    |
[INFO] [stdout] 10 | ...f, x| where own { Expr(self.0.grad(x)) } else { Expr((&self.0).grad(x)) });
[INFO] [stdout]    |                                                                   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 + #![feature(effects)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 210 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0015, E0049.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0015`.
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:31:48
[INFO] [stdout]     |
[INFO] [stdout] 31  |                 core::ops::$Name::$name(self.0.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<T as eval::Typed>::Evaluated as std::ops::Neg>::neg` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:31:35
[INFO] [stdout]     |
[INFO] [stdout] 31  |                 core::ops::$Name::$name(self.0.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:33:51
[INFO] [stdout]     |
[INFO] [stdout] 33  |                 core::ops::$Name::$name((&self.0).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<T as eval::Typed>::Evaluated as std::ops::Neg>::neg` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:33:35
[INFO] [stdout]     |
[INFO] [stdout] 33  |                 core::ops::$Name::$name((&self.0).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 | unary_op!(Neg, neg, "Arithmetic negation (e.g. `-4`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:31:48
[INFO] [stdout]     |
[INFO] [stdout] 31  |                 core::ops::$Name::$name(self.0.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<T as eval::Typed>::Evaluated as std::ops::Not>::not` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:31:35
[INFO] [stdout]     |
[INFO] [stdout] 31  |                 core::ops::$Name::$name(self.0.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:33:51
[INFO] [stdout]     |
[INFO] [stdout] 33  |                 core::ops::$Name::$name((&self.0).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<T as eval::Typed>::Evaluated as std::ops::Not>::not` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:33:35
[INFO] [stdout]     |
[INFO] [stdout] 33  |                 core::ops::$Name::$name((&self.0).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | unary_op!(Not, not, "Logical negation (e.g. `!true`).");
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:56:30
[INFO] [stdout]     |
[INFO] [stdout] 56  |                 $Diff(self.0.grad(x))
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<T as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:66:33
[INFO] [stdout]     |
[INFO] [stdout] 66  |                 $Diff((&self.0).grad(x))
[INFO] [stdout]     |                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 | unary_grad!(Neg, Neg);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `unary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Add<<R as eval::Typed>::Evaluated>>::add` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Add<<R as eval::Typed>::Evaluated>>::add` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | binary_op!(Add, add, "Arithmetic addition (e.g. `a + b`");
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `dxpr` (lib) due to 211 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitAnd<<R as eval::Typed>::Evaluated>>::bitand` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitAnd<<R as eval::Typed>::Evaluated>>::bitand` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 | binary_op!(BitAnd, bitand, "Bitwise conjunction (e.g. `a & b`)");
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitOr<<R as eval::Typed>::Evaluated>>::bitor` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitOr<<R as eval::Typed>::Evaluated>>::bitor` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 | binary_op!(BitOr, bitor, "Bitwise inclusive-or (e.g. `a | b`)");
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitXor<<R as eval::Typed>::Evaluated>>::bitxor` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::BitXor<<R as eval::Typed>::Evaluated>>::bitxor` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 | binary_op!(BitXor, bitxor, "Bitwise exclusive-or (e.g. `a ^ b`)");
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Div<<R as eval::Typed>::Evaluated>>::div` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Div<<R as eval::Typed>::Evaluated>>::div` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 | binary_op!(Div, div, "Arithmetic division (e.g. `a / b`)"); // TODO: quotient rule
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Mul<<R as eval::Typed>::Evaluated>>::mul` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Mul<<R as eval::Typed>::Evaluated>>::mul` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 | binary_op!(Mul, mul, "Arithmetic multiplication (e.g. `a * b`)"); // TODO: product rule
[INFO] [stdout]     | ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Rem<<R as eval::Typed>::Evaluated>>::rem` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Rem<<R as eval::Typed>::Evaluated>>::rem` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 | binary_op!(Rem, rem, "Arithmetic remainder (e.g. `a % b`)"); //TODO: just the left argument
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Shl<<R as eval::Typed>::Evaluated>>::shl` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Shl<<R as eval::Typed>::Evaluated>>::shl` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | binary_op!(Shl, shl, "Arithmetic left-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Shr<<R as eval::Typed>::Evaluated>>::shr` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Shr<<R as eval::Typed>::Evaluated>>::shr` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 | binary_op!(Shr, shr, "Arithmetic right-shift (e.g. `a << b`)"); //TODO: more complicated
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:48
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Own>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Sub<<R as eval::Typed>::Evaluated>>::sub` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 core::ops::$Name::$name(self.0.eval(), self.1.eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as eval::Ref>::eval` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:69
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                                                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<<L as eval::Typed>::Evaluated as std::ops::Sub<<R as eval::Typed>::Evaluated>>::sub` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 core::ops::$Name::$name((&self.0).eval(), (&self.1).eval())
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 | binary_op!(Sub, sub, "Arithmetic subtraction (e.g. `a - b`)"); //TODO: more complicated
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:146:30
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 $Diff(self.0.grad(x), self.1.grad(x))
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:146:46
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 $Diff(self.0.grad(x), self.1.grad(x))
[INFO] [stdout]     |                                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:163:33
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 $Diff((&self.0).grad(x), (&self.1).grad(x))
[INFO] [stdout]     |                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:163:52
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 $Diff((&self.0).grad(x), (&self.1).grad(x))
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 | binary_grad!(Add, Add);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:146:30
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 $Diff(self.0.grad(x), self.1.grad(x))
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as grad::Own>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:146:46
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 $Diff(self.0.grad(x), self.1.grad(x))
[INFO] [stdout]     |                                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<L as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:163:33
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 $Diff((&self.0).grad(x), (&self.1).grad(x))
[INFO] [stdout]     |                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const fn `<R as grad::Ref>::grad::<U>` in constant functions
[INFO] [stdout]    --> src/ops/mod.rs:163:52
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 $Diff((&self.0).grad(x), (&self.1).grad(x))
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 | binary_grad!(Sub, Sub);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout]     = note: this error originates in the macro `binary_grad` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(effects)]` to the crate attributes to enable
[INFO] [stdout]    --> src/lib.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout] 54  + #![feature(effects)]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 217 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0015, E0049.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0015`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `dxpr` (lib test) due to 218 previous errors
[INFO] running `Command { std: "docker" "inspect" "9987c21ca45be842d75471383b347652ef76d3d1a859a93e03b66ed1ef1edec6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9987c21ca45be842d75471383b347652ef76d3d1a859a93e03b66ed1ef1edec6", kill_on_drop: false }`
[INFO] [stdout] 9987c21ca45be842d75471383b347652ef76d3d1a859a93e03b66ed1ef1edec6
