[INFO] cloning repository https://github.com/jim-ec/generic-geometric-algebra [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jim-ec/generic-geometric-algebra" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjim-ec%2Fgeneric-geometric-algebra", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjim-ec%2Fgeneric-geometric-algebra'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f88e058bfd13fe311383d06ba22f1b88a006840f [INFO] checking jim-ec/generic-geometric-algebra against master#8365fcb2b840c95eeb0bc377af8bd498fad22245 for pr-145604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjim-ec%2Fgeneric-geometric-algebra" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-2-tc1/source/.cargo/config.toml [INFO] removed /workspace/builds/worker-2-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/jim-ec/generic-geometric-algebra [INFO] finished tweaking git repo https://github.com/jim-ec/generic-geometric-algebra [INFO] tweaked toml for git repo https://github.com/jim-ec/generic-geometric-algebra written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jim-ec/generic-geometric-algebra on toolchain 8365fcb2b840c95eeb0bc377af8bd498fad22245 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8365fcb2b840c95eeb0bc377af8bd498fad22245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jim-ec/generic-geometric-algebra already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8365fcb2b840c95eeb0bc377af8bd498fad22245" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8365fcb2b840c95eeb0bc377af8bd498fad22245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8d4ae58e2bbd12604e6a69d0c868ebd141014f03035c10eade12adda3b2a7ff9 [INFO] running `Command { std: "docker" "start" "-a" "8d4ae58e2bbd12604e6a69d0c868ebd141014f03035c10eade12adda3b2a7ff9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8d4ae58e2bbd12604e6a69d0c868ebd141014f03035c10eade12adda3b2a7ff9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8d4ae58e2bbd12604e6a69d0c868ebd141014f03035c10eade12adda3b2a7ff9", kill_on_drop: false }` [INFO] [stdout] 8d4ae58e2bbd12604e6a69d0c868ebd141014f03035c10eade12adda3b2a7ff9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8365fcb2b840c95eeb0bc377af8bd498fad22245" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0a9c8741ea00e5f2fac3d07de624b15215e1979f5afde429525bc3b86c32c419 [INFO] running `Command { std: "docker" "start" "-a" "0a9c8741ea00e5f2fac3d07de624b15215e1979f5afde429525bc3b86c32c419", kill_on_drop: false }` [INFO] [stderr] Checking either v1.7.0 [INFO] [stderr] Checking itertools v0.10.3 [INFO] [stderr] Checking generic_ga v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0770]: the type of const parameters must not depend on other generic parameters [INFO] [stdout] --> src/blade.rs:5:42 [INFO] [stdout] | [INFO] [stdout] 5 | fn foo() -> [u8; LEN] { [INFO] [stdout] | ^^^ the type must not depend on the parameter `LEN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0770]: the type of const parameters must not depend on other generic parameters [INFO] [stdout] --> src/blade.rs:5:42 [INFO] [stdout] | [INFO] [stdout] 5 | fn foo() -> [u8; LEN] { [INFO] [stdout] | ^^^ the type must not depend on the parameter `LEN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0220]: associated type `Output` not found for `Maybe` in the current scope [INFO] [stdout] --> src/maybe.rs:20:34 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Maybe { [INFO] [stdout] | ----------------- associated type `Output` not found for this enum [INFO] [stdout] ... [INFO] [stdout] 20 | fn from_output(output: Self::Output) -> Self { [INFO] [stdout] | ^^^^^^ associated item not found in `Maybe` [INFO] [stdout] | [INFO] [stdout] = note: the associated type was found for [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0220]: associated type `Residual` not found for `Maybe` in the current scope [INFO] [stdout] --> src/maybe.rs:24:42 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Maybe { [INFO] [stdout] | ----------------- associated type `Residual` not found for this enum [INFO] [stdout] ... [INFO] [stdout] 24 | fn branch(self) -> ControlFlow { [INFO] [stdout] | ^^^^^^^^ associated item not found in `Maybe` [INFO] [stdout] | [INFO] [stdout] = note: the associated type was found for [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0220]: associated type `Output` not found for `Maybe` in the current scope [INFO] [stdout] --> src/maybe.rs:24:58 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Maybe { [INFO] [stdout] | ----------------- associated type `Output` not found for this enum [INFO] [stdout] ... [INFO] [stdout] 24 | fn branch(self) -> ControlFlow { [INFO] [stdout] | ^^^^^^ associated item not found in `Maybe` [INFO] [stdout] | [INFO] [stdout] = note: the associated type was found for [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0220]: associated type `Output` not found for `Maybe` in the current scope [INFO] [stdout] --> src/maybe.rs:20:34 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Maybe { [INFO] [stdout] | ----------------- associated type `Output` not found for this enum [INFO] [stdout] ... [INFO] [stdout] 20 | fn from_output(output: Self::Output) -> Self { [INFO] [stdout] | ^^^^^^ associated item not found in `Maybe` [INFO] [stdout] | [INFO] [stdout] = note: the associated type was found for [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0220]: associated type `Residual` not found for `Maybe` in the current scope [INFO] [stdout] --> src/maybe.rs:24:42 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Maybe { [INFO] [stdout] | ----------------- associated type `Residual` not found for this enum [INFO] [stdout] ... [INFO] [stdout] 24 | fn branch(self) -> ControlFlow { [INFO] [stdout] | ^^^^^^^^ associated item not found in `Maybe` [INFO] [stdout] | [INFO] [stdout] = note: the associated type was found for [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0220]: associated type `Output` not found for `Maybe` in the current scope [INFO] [stdout] --> src/maybe.rs:24:58 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Maybe { [INFO] [stdout] | ----------------- associated type `Output` not found for this enum [INFO] [stdout] ... [INFO] [stdout] 24 | fn branch(self) -> ControlFlow { [INFO] [stdout] | ^^^^^^ associated item not found in `Maybe` [INFO] [stdout] | [INFO] [stdout] = note: the associated type was found for [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0220]: associated type `Output` not found for `sign::Sign` in the current scope [INFO] [stdout] --> src/sign.rs:30:37 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Sign { [INFO] [stdout] | ------------- associated type `Output` not found for this enum [INFO] [stdout] ... [INFO] [stdout] 30 | fn mul(self, rhs: f64) -> Self::Output { [INFO] [stdout] | ^^^^^^ associated item not found in `sign::Sign` [INFO] [stdout] | [INFO] [stdout] = note: the associated type was found for [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::geometric::{constant#0}` [INFO] [stdout] --> src/blade.rs:31:74 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn geometric>(self, rhs: Blade) -> Blade<{ B.geometric(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::geometric::{constant#0}`... [INFO] [stdout] --> src/blade.rs:31:74 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn geometric>(self, rhs: Blade) -> Blade<{ B.geometric(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::geometric::{constant#0}`... [INFO] [stdout] --> src/blade.rs:31:74 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn geometric>(self, rhs: Blade) -> Blade<{ B.geometric(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::geometric::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::geometric` is well-formed [INFO] [stdout] --> src/blade.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn geometric>(self, rhs: Blade) -> Blade<{ B.geometric(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0220]: associated type `Output` not found for `sign::Sign` in the current scope [INFO] [stdout] --> src/sign.rs:30:37 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Sign { [INFO] [stdout] | ------------- associated type `Output` not found for this enum [INFO] [stdout] ... [INFO] [stdout] 30 | fn mul(self, rhs: f64) -> Self::Output { [INFO] [stdout] | ^^^^^^ associated item not found in `sign::Sign` [INFO] [stdout] | [INFO] [stdout] = note: the associated type was found for [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::geometric::{constant#0}` [INFO] [stdout] --> src/blade.rs:31:74 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn geometric>(self, rhs: Blade) -> Blade<{ B.geometric(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::geometric::{constant#0}`... [INFO] [stdout] --> src/blade.rs:31:74 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn geometric>(self, rhs: Blade) -> Blade<{ B.geometric(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::geometric::{constant#0}`... [INFO] [stdout] --> src/blade.rs:31:74 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn geometric>(self, rhs: Blade) -> Blade<{ B.geometric(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::geometric::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::geometric` is well-formed [INFO] [stdout] --> src/blade.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn geometric>(self, rhs: Blade) -> Blade<{ B.geometric(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::exterior::{constant#0}` [INFO] [stdout] --> src/blade.rs:35:73 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn exterior>(self, rhs: Blade) -> Blade<{ B.exterior(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::exterior::{constant#0}`... [INFO] [stdout] --> src/blade.rs:35:73 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn exterior>(self, rhs: Blade) -> Blade<{ B.exterior(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::exterior::{constant#0}`... [INFO] [stdout] --> src/blade.rs:35:73 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn exterior>(self, rhs: Blade) -> Blade<{ B.exterior(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::exterior::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::exterior` is well-formed [INFO] [stdout] --> src/blade.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn exterior>(self, rhs: Blade) -> Blade<{ B.exterior(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::exterior::{constant#0}` [INFO] [stdout] --> src/blade.rs:35:73 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn exterior>(self, rhs: Blade) -> Blade<{ B.exterior(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::exterior::{constant#0}`... [INFO] [stdout] --> src/blade.rs:35:73 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn exterior>(self, rhs: Blade) -> Blade<{ B.exterior(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::exterior::{constant#0}`... [INFO] [stdout] --> src/blade.rs:35:73 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn exterior>(self, rhs: Blade) -> Blade<{ B.exterior(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::exterior::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::exterior` is well-formed [INFO] [stdout] --> src/blade.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn exterior>(self, rhs: Blade) -> Blade<{ B.exterior(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::left_contraction::{constant#0}` [INFO] [stdout] --> src/blade.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | ) -> Blade<{ B.left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::left_contraction::{constant#0}`... [INFO] [stdout] --> src/blade.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | ) -> Blade<{ B.left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::left_contraction::{constant#0}`... [INFO] [stdout] --> src/blade.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | ) -> Blade<{ B.left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::left_contraction::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::left_contraction` is well-formed [INFO] [stdout] --> src/blade.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | / pub fn left_contraction>( [INFO] [stdout] 40 | | self, [INFO] [stdout] 41 | | rhs: Blade, [INFO] [stdout] 42 | | ) -> Blade<{ B.left_contraction(T, M) }, M> { [INFO] [stdout] | |_______________________________________________^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::left_contraction::{constant#0}` [INFO] [stdout] --> src/blade.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | ) -> Blade<{ B.left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::left_contraction::{constant#0}`... [INFO] [stdout] --> src/blade.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | ) -> Blade<{ B.left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::left_contraction::{constant#0}`... [INFO] [stdout] --> src/blade.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | ) -> Blade<{ B.left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::left_contraction::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::left_contraction` is well-formed [INFO] [stdout] --> src/blade.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | / pub fn left_contraction>( [INFO] [stdout] 40 | | self, [INFO] [stdout] 41 | | rhs: Blade, [INFO] [stdout] 42 | | ) -> Blade<{ B.left_contraction(T, M) }, M> { [INFO] [stdout] | |_______________________________________________^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::right_contraction::{constant#0}` [INFO] [stdout] --> src/blade.rs:49:16 [INFO] [stdout] | [INFO] [stdout] 49 | ) -> Blade<{ B.right_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::right_contraction::{constant#0}`... [INFO] [stdout] --> src/blade.rs:49:16 [INFO] [stdout] | [INFO] [stdout] 49 | ) -> Blade<{ B.right_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::right_contraction::{constant#0}`... [INFO] [stdout] --> src/blade.rs:49:16 [INFO] [stdout] | [INFO] [stdout] 49 | ) -> Blade<{ B.right_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::right_contraction::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::right_contraction` is well-formed [INFO] [stdout] --> src/blade.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | / pub fn right_contraction>( [INFO] [stdout] 47 | | self, [INFO] [stdout] 48 | | rhs: Blade, [INFO] [stdout] 49 | | ) -> Blade<{ B.right_contraction(T, M) }, M> { [INFO] [stdout] | |________________________________________________^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::right_contraction::{constant#0}` [INFO] [stdout] --> src/blade.rs:49:16 [INFO] [stdout] | [INFO] [stdout] 49 | ) -> Blade<{ B.right_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::right_contraction::{constant#0}`... [INFO] [stdout] --> src/blade.rs:49:16 [INFO] [stdout] | [INFO] [stdout] 49 | ) -> Blade<{ B.right_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::right_contraction::{constant#0}`... [INFO] [stdout] --> src/blade.rs:49:16 [INFO] [stdout] | [INFO] [stdout] 49 | ) -> Blade<{ B.right_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::right_contraction::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::right_contraction` is well-formed [INFO] [stdout] --> src/blade.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | / pub fn right_contraction>( [INFO] [stdout] 47 | | self, [INFO] [stdout] 48 | | rhs: Blade, [INFO] [stdout] 49 | | ) -> Blade<{ B.right_contraction(T, M) }, M> { [INFO] [stdout] | |________________________________________________^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::inner::{constant#0}` [INFO] [stdout] --> src/blade.rs:53:70 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn inner>(self, rhs: Blade) -> Blade<{ B.inner(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::inner::{constant#0}`... [INFO] [stdout] --> src/blade.rs:53:70 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn inner>(self, rhs: Blade) -> Blade<{ B.inner(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::inner::{constant#0}`... [INFO] [stdout] --> src/blade.rs:53:70 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn inner>(self, rhs: Blade) -> Blade<{ B.inner(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::inner::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::inner` is well-formed [INFO] [stdout] --> src/blade.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn inner>(self, rhs: Blade) -> Blade<{ B.inner(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::scalar::{constant#0}` [INFO] [stdout] --> src/blade.rs:57:71 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn scalar>(self, rhs: Blade) -> Blade<{ B.scalar(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::scalar::{constant#0}`... [INFO] [stdout] --> src/blade.rs:57:71 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn scalar>(self, rhs: Blade) -> Blade<{ B.scalar(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::scalar::{constant#0}`... [INFO] [stdout] --> src/blade.rs:57:71 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn scalar>(self, rhs: Blade) -> Blade<{ B.scalar(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::scalar::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::scalar` is well-formed [INFO] [stdout] --> src/blade.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn scalar>(self, rhs: Blade) -> Blade<{ B.scalar(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::project::{constant#0}` [INFO] [stdout] --> src/blade.rs:76:16 [INFO] [stdout] | [INFO] [stdout] 76 | ) -> Blade<{ B.left_contraction(T, M).reverse().left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::project::{constant#0}`... [INFO] [stdout] --> src/blade.rs:76:16 [INFO] [stdout] | [INFO] [stdout] 76 | ) -> Blade<{ B.left_contraction(T, M).reverse().left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::project::{constant#0}`... [INFO] [stdout] --> src/blade.rs:76:16 [INFO] [stdout] | [INFO] [stdout] 76 | ) -> Blade<{ B.left_contraction(T, M).reverse().left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::project::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::project` is well-formed [INFO] [stdout] --> src/blade.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | / pub fn project>( [INFO] [stdout] 74 | | self, [INFO] [stdout] 75 | | rhs: Blade, [INFO] [stdout] 76 | | ) -> Blade<{ B.left_contraction(T, M).reverse().left_contraction(T, M) }, M> { [INFO] [stdout] | |________________________________________________________________________________^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::inner::{constant#0}` [INFO] [stdout] --> src/blade.rs:53:70 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn inner>(self, rhs: Blade) -> Blade<{ B.inner(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::inner::{constant#0}`... [INFO] [stdout] --> src/blade.rs:53:70 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn inner>(self, rhs: Blade) -> Blade<{ B.inner(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::inner::{constant#0}`... [INFO] [stdout] --> src/blade.rs:53:70 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn inner>(self, rhs: Blade) -> Blade<{ B.inner(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::inner::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::inner` is well-formed [INFO] [stdout] --> src/blade.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn inner>(self, rhs: Blade) -> Blade<{ B.inner(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::scalar::{constant#0}` [INFO] [stdout] --> src/blade.rs:57:71 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn scalar>(self, rhs: Blade) -> Blade<{ B.scalar(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::scalar::{constant#0}`... [INFO] [stdout] --> src/blade.rs:57:71 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn scalar>(self, rhs: Blade) -> Blade<{ B.scalar(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::scalar::{constant#0}`... [INFO] [stdout] --> src/blade.rs:57:71 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn scalar>(self, rhs: Blade) -> Blade<{ B.scalar(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::scalar::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::scalar` is well-formed [INFO] [stdout] --> src/blade.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn scalar>(self, rhs: Blade) -> Blade<{ B.scalar(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when building an abstract representation for `blade::::project::{constant#0}` [INFO] [stdout] --> src/blade.rs:76:16 [INFO] [stdout] | [INFO] [stdout] 76 | ) -> Blade<{ B.left_contraction(T, M).reverse().left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires building THIR for `blade::::project::{constant#0}`... [INFO] [stdout] --> src/blade.rs:76:16 [INFO] [stdout] | [INFO] [stdout] 76 | ) -> Blade<{ B.left_contraction(T, M).reverse().left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...which requires type-checking `blade::::project::{constant#0}`... [INFO] [stdout] --> src/blade.rs:76:16 [INFO] [stdout] | [INFO] [stdout] 76 | ) -> Blade<{ B.left_contraction(T, M).reverse().left_contraction(T, M) }, M> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: ...which again requires building an abstract representation for `blade::::project::{constant#0}`, completing the cycle [INFO] [stdout] note: cycle used when checking that `blade::::project` is well-formed [INFO] [stdout] --> src/blade.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | / pub fn project>( [INFO] [stdout] 74 | | self, [INFO] [stdout] 75 | | rhs: Blade, [INFO] [stdout] 76 | | ) -> Blade<{ B.left_contraction(T, M).reverse().left_contraction(T, M) }, M> { [INFO] [stdout] | |________________________________________________________________________________^ [INFO] [stdout] = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0220, E0391, E0770. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0220`. [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0220, E0391, E0770. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0220`. [INFO] [stdout] [INFO] [stderr] error: could not compile `generic_ga` (lib test) due to 12 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `generic_ga` (lib) due to 12 previous errors [INFO] running `Command { std: "docker" "inspect" "0a9c8741ea00e5f2fac3d07de624b15215e1979f5afde429525bc3b86c32c419", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0a9c8741ea00e5f2fac3d07de624b15215e1979f5afde429525bc3b86c32c419", kill_on_drop: false }` [INFO] [stdout] 0a9c8741ea00e5f2fac3d07de624b15215e1979f5afde429525bc3b86c32c419