[INFO] fetching crate round_pipers 0.2.0...
[INFO] checking round_pipers-0.2.0 against e3607d549209cc9fdfe7e907123b4185210e2c2b for pr-158915
[INFO] extracting crate round_pipers 0.2.0 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate round_pipers 0.2.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate round_pipers 0.2.0
[INFO] tweaked toml for crates.io crate round_pipers 0.2.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate round_pipers 0.2.0 on toolchain e3607d549209cc9fdfe7e907123b4185210e2c2b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e3607d549209cc9fdfe7e907123b4185210e2c2b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate round_pipers 0.2.0 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" "+e3607d549209cc9fdfe7e907123b4185210e2c2b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:49:1
[INFO] [stderr]    |
[INFO] [stderr] 49 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `round_pipers` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476
[INFO] running `Command { std: "docker" "start" "1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476" "/opt/rustwide/cargo-home/bin/cargo" "+e3607d549209cc9fdfe7e907123b4185210e2c2b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476" "/opt/rustwide/cargo-home/bin/cargo" "+e3607d549209cc9fdfe7e907123b4185210e2c2b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:49:1
[INFO] [stderr]    |
[INFO] [stderr] 49 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `round_pipers` (manifest) generated 1 warning
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling matrixmultiply v0.3.9
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]     Checking bytemuck v1.23.1
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]    Compiling rustfft v6.3.0
[INFO] [stderr]     Checking strength_reduce v0.2.4
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking transpose v0.2.3
[INFO] [stderr]     Checking primal-check v0.3.4
[INFO] [stderr]     Checking ndarray v0.16.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking uuid v1.16.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking round_pipers v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0038]: the trait `ChunkSource` is not dyn compatible
[INFO] [stdout]   --> src/iterator_common.rs:18:23
[INFO] [stdout]    |
[INFO] [stdout] 18 |     chunk_source: &'a dyn ChunkSource<A, D, M>,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^ `ChunkSource` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/traits.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub trait ChunkSource<A, D: SizedDimension + Dimension, M: Clone> {
[INFO] [stdout]    |           ----------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `ChunkSource` is not dyn compatible
[INFO] [stdout]   --> src/iterator_common.rs:27:27
[INFO] [stdout]    |
[INFO] [stdout] 27 |         chunk_source: &'a dyn ChunkSource<A, D, M>,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^ `ChunkSource` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/traits.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub trait ChunkSource<A, D: SizedDimension + Dimension, M: Clone> {
[INFO] [stdout]    |           ----------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 27 -         chunk_source: &'a dyn ChunkSource<A, D, M>,
[INFO] [stdout] 27 +         chunk_source: &'a Self,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `ChunkSource` is not dyn compatible
[INFO] [stdout]   --> src/iterator_common.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |             chunk_source,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `ChunkSource` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/traits.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub trait ChunkSource<A, D: SizedDimension + Dimension, M: Clone> {
[INFO] [stdout]    |           ----------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `ChunkSource` is not dyn compatible
[INFO] [stdout]    --> src/ro_pipe.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 178 |             self,
[INFO] [stdout]     |             ^^^^ `ChunkSource` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/traits.rs:36:11
[INFO] [stdout]     |
[INFO] [stdout]  36 | pub trait ChunkSource<A, D: SizedDimension + Dimension, M: Clone> {
[INFO] [stdout]     |           ----------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/ro_pipe.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 174 |         Ok(ChunkGuard::new(
[INFO] [stdout]     |            --------------- arguments to this function are incorrect
[INFO] [stdout] ...
[INFO] [stdout] 178 |             self,
[INFO] [stdout]     |             ^^^^ expected `&dyn ChunkSource<A, _, _>`, found `&ReadOnlyPipe<'_, A, D, M>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&dyn ChunkSource<A, _, _>`
[INFO] [stdout]                found reference `&'a ReadOnlyPipe<'data, A, D, M>`
[INFO] [stdout]     = help: `ReadOnlyPipe<'data, A, D, M>` implements `ChunkSource` so you could box the found value and coerce it to the trait object `Box<dyn ChunkSource>`, you will have to change the expected type as well
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/iterator_common.rs:23:12
[INFO] [stdout]     |
[INFO] [stdout]  23 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |         chunk_source: &'a dyn ChunkSource<A, D, M>,
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `ChunkSource` is not dyn compatible
[INFO] [stdout]    --> src/rw_pipe.rs:328:13
[INFO] [stdout]     |
[INFO] [stdout] 328 |             self,
[INFO] [stdout]     |             ^^^^ `ChunkSource` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/traits.rs:36:11
[INFO] [stdout]     |
[INFO] [stdout]  36 | pub trait ChunkSource<A, D: SizedDimension + Dimension, M: Clone> {
[INFO] [stdout]     |           ----------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/rw_pipe.rs:328:13
[INFO] [stdout]     |
[INFO] [stdout] 324 |         Ok(ChunkGuard::new(
[INFO] [stdout]     |            --------------- arguments to this function are incorrect
[INFO] [stdout] ...
[INFO] [stdout] 328 |             self,
[INFO] [stdout]     |             ^^^^ expected `&dyn ChunkSource<A, _, _>`, found `&Pipe<A, D, M>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&dyn ChunkSource<A, _, _>`
[INFO] [stdout]                found reference `&'a Pipe<A, D, M>`
[INFO] [stdout]     = help: `Pipe<A, D, M>` implements `ChunkSource` so you could box the found value and coerce it to the trait object `Box<dyn ChunkSource>`, you will have to change the expected type as well
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/iterator_common.rs:23:12
[INFO] [stdout]     |
[INFO] [stdout]  23 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |         chunk_source: &'a dyn ChunkSource<A, D, M>,
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0038, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0038`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `round_pipers` (lib) due to 7 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476", kill_on_drop: false }`
[INFO] [stdout] 1339a31d74d5e21c9c6ea461d78e8a1fdd146765c29ee0b97d01a5e77b558476
