[INFO] fetching crate soa 0.9.2...
[INFO] testing soa-0.9.2 against 1.75.0 for beta-1.76-1
[INFO] extracting crate soa 0.9.2 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate soa 0.9.2 on toolchain 1.75.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate soa 0.9.2
[INFO] finished tweaking crates.io crate soa 0.9.2
[INFO] tweaked toml for crates.io crate soa 0.9.2 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" "+1.75.0" "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" "+1.75.0" "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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c38d80aa8412d31a970b8bbafc65c5de4a7fd65ab576e560c0994fa80d27b7fa
[INFO] running `Command { std: "docker" "start" "-a" "c38d80aa8412d31a970b8bbafc65c5de4a7fd65ab576e560c0994fa80d27b7fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c38d80aa8412d31a970b8bbafc65c5de4a7fd65ab576e560c0994fa80d27b7fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c38d80aa8412d31a970b8bbafc65c5de4a7fd65ab576e560c0994fa80d27b7fa", kill_on_drop: false }`
[INFO] [stdout] c38d80aa8412d31a970b8bbafc65c5de4a7fd65ab576e560c0994fa80d27b7fa
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2d0846ed6f3a1ddd3c3bd38317b6fa9b1f841515b41b22f390b930a52b5d6770
[INFO] running `Command { std: "docker" "start" "-a" "2d0846ed6f3a1ddd3c3bd38317b6fa9b1f841515b41b22f390b930a52b5d6770", kill_on_drop: false }`
[INFO] [stderr]    Compiling soa v0.9.2 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> src/lib.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | #![feature(unsafe_no_drop_flag)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^ feature has been removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0463]: can't find crate for `collections`
[INFO] [stdout]   --> src/lib.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | extern crate collections;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `alloc::heap`
[INFO] [stdout]  --> src/unadorned.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use alloc::heap::{EMPTY, allocate, reallocate, deallocate};
[INFO] [stdout]   |            ^^^^ could not find `heap` in `alloc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `core::nonzero`
[INFO] [stdout]  --> src/unadorned.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | use core::nonzero::NonZero;
[INFO] [stdout]   |           ^^^^^^^ could not find `nonzero` in `core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `unsafe_no_drop_flag` in this scope
[INFO] [stdout]   --> src/soa2.rs:23:3
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[unsafe_no_drop_flag]
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `unsafe_no_drop_flag` in this scope
[INFO] [stdout]   --> src/soa3.rs:23:3
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[unsafe_no_drop_flag]
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `unsafe_no_drop_flag` in this scope
[INFO] [stdout]   --> src/soa4.rs:23:3
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[unsafe_no_drop_flag]
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `order` in `iter`
[INFO] [stdout]    --> src/soa2.rs:652:15
[INFO] [stdout]     |
[INFO] [stdout] 652 |         iter::order::partial_cmp(self.zip_iter(), other.zip_iter())
[INFO] [stdout]     |               ^^^^^ could not find `order` in `iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `order` in `iter`
[INFO] [stdout]    --> src/soa2.rs:661:15
[INFO] [stdout]     |
[INFO] [stdout] 661 |         iter::order::cmp(self.zip_iter(), other.zip_iter())
[INFO] [stdout]     |               ^^^^^ could not find `order` in `iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `order` in `iter`
[INFO] [stdout]    --> src/soa3.rs:698:15
[INFO] [stdout]     |
[INFO] [stdout] 698 |         iter::order::partial_cmp(self.zip_iter(), other.zip_iter())
[INFO] [stdout]     |               ^^^^^ could not find `order` in `iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `order` in `iter`
[INFO] [stdout]    --> src/soa3.rs:707:15
[INFO] [stdout]     |
[INFO] [stdout] 707 |         iter::order::cmp(self.zip_iter(), other.zip_iter())
[INFO] [stdout]     |               ^^^^^ could not find `order` in `iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `order` in `iter`
[INFO] [stdout]    --> src/soa4.rs:737:15
[INFO] [stdout]     |
[INFO] [stdout] 737 |         iter::order::partial_cmp(self.zip_iter(), other.zip_iter())
[INFO] [stdout]     |               ^^^^^ could not find `order` in `iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `order` in `iter`
[INFO] [stdout]    --> src/soa4.rs:746:15
[INFO] [stdout]     |
[INFO] [stdout] 746 |         iter::order::cmp(self.zip_iter(), other.zip_iter())
[INFO] [stdout]     |               ^^^^^ could not find `order` in `iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `POST_DROP_USIZE` in module `mem`
[INFO] [stdout]    --> src/soa2.rs:678:50
[INFO] [stdout]     |
[INFO] [stdout] 678 |         if self.e.cap != 0 && self.e.cap != mem::POST_DROP_USIZE {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^ not found in `mem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `POST_DROP_USIZE` in module `mem`
[INFO] [stdout]    --> src/soa3.rs:724:50
[INFO] [stdout]     |
[INFO] [stdout] 724 |         if self.e.cap != 0 && self.e.cap != mem::POST_DROP_USIZE {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^ not found in `mem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `POST_DROP_USIZE` in module `mem`
[INFO] [stdout]    --> src/soa4.rs:763:50
[INFO] [stdout]     |
[INFO] [stdout] 763 |         if self.e.cap != 0 && self.e.cap != mem::POST_DROP_USIZE {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^ not found in `mem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `oom` in crate `alloc`
[INFO] [stdout]   --> src/unadorned.rs:43:37
[INFO] [stdout]    |
[INFO] [stdout] 43 |         if ptr.is_null() { ::alloc::oom() }
[INFO] [stdout]    |                                     ^^^ not found in `alloc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `oom` in crate `alloc`
[INFO] [stdout]   --> src/unadorned.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |     if ret.is_null() { ::alloc::oom() }
[INFO] [stdout]    |                                 ^^^ not found in `alloc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `oom` in crate `alloc`
[INFO] [stdout]    --> src/unadorned.rs:312:45
[INFO] [stdout]     |
[INFO] [stdout] 312 |             if new_ptr.is_null() { ::alloc::oom() }
[INFO] [stdout]     |                                             ^^^ not found in `alloc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::min_align_of`: use `align_of` instead
[INFO] [stdout]   --> src/unadorned.rs:38:38
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let desired_alignment = mem::min_align_of::<A>();
[INFO] [stdout]    |                                      ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated function
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let desired_alignment = mem::align_of::<A>();
[INFO] [stdout]    |                                      ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::min_align_of`: use `align_of` instead
[INFO] [stdout]    --> src/unadorned.rs:311:33
[INFO] [stdout]     |
[INFO] [stdout] 311 | ...                   mem::min_align_of::<T>()) as *mut T;
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated function
[INFO] [stdout]     |
[INFO] [stdout] 311 |                            mem::align_of::<T>()) as *mut T;
[INFO] [stdout]     |                                 ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(alloc)]
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(collections)]
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]  --> src/lib.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![feature(core)]
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]  --> src/lib.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | #![feature(filling_drop)]
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `core` has been stable since 1.6.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![feature(core)]
[INFO] [stdout]   |            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `alloc` has been stable since 1.36.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(alloc)]
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `filling_drop`
[INFO] [stdout]  --> src/lib.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | #![feature(filling_drop)]
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `collections`
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(collections)]
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `A` is never used
[INFO] [stdout]   --> src/soa2.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa2<A, B> {
[INFO] [stdout]    |                 ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `A`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `A` to be a const parameter, use `const A: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `B` is never used
[INFO] [stdout]   --> src/soa2.rs:24:20
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa2<A, B> {
[INFO] [stdout]    |                    ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `B`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `B` to be a const parameter, use `const B: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `A` is never used
[INFO] [stdout]   --> src/soa3.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa3<A, B, C> {
[INFO] [stdout]    |                 ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `A`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `A` to be a const parameter, use `const A: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `B` is never used
[INFO] [stdout]   --> src/soa3.rs:24:20
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa3<A, B, C> {
[INFO] [stdout]    |                    ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `B`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `B` to be a const parameter, use `const B: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `C` is never used
[INFO] [stdout]   --> src/soa3.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa3<A, B, C> {
[INFO] [stdout]    |                       ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `C`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `C` to be a const parameter, use `const C: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `A` is never used
[INFO] [stdout]   --> src/soa4.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa4<A, B, C, D> {
[INFO] [stdout]    |                 ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `A`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `A` to be a const parameter, use `const A: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `B` is never used
[INFO] [stdout]   --> src/soa4.rs:24:20
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa4<A, B, C, D> {
[INFO] [stdout]    |                    ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `B`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `B` to be a const parameter, use `const B: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `C` is never used
[INFO] [stdout]   --> src/soa4.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa4<A, B, C, D> {
[INFO] [stdout]    |                       ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `C`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `C` to be a const parameter, use `const C: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0392]: parameter `D` is never used
[INFO] [stdout]   --> src/soa4.rs:24:26
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Soa4<A, B, C, D> {
[INFO] [stdout]    |                          ^ unused parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing `D`, referring to it in a field, or using a marker such as `PhantomData`
[INFO] [stdout]    = help: if you intended `D` to be a const parameter, use `const D: usize` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa2.rs:36:29
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let (d0, d0u) = Unadorned::new();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ cannot infer type of the type parameter `T` declared on the struct `Unadorned`
[INFO] [stdout]    |
[INFO] [stdout] help: consider specifying the generic argument
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let (d0, d0u) = Unadorned::<T>::new();
[INFO] [stdout]    |                                      +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa2.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         self.d0.is_boring() && self.d1.is_boring()
[INFO] [stdout]    |         ^^^^^^^ cannot infer type for type parameter `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa2.rs:63:29
[INFO] [stdout]    |
[INFO] [stdout] 63 |             let (d0, d0u) = Unadorned::with_capacity(capacity);
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `T` declared on the struct `Unadorned`
[INFO] [stdout]    |
[INFO] [stdout] help: consider specifying the generic argument
[INFO] [stdout]    |
[INFO] [stdout] 63 |             let (d0, d0u) = Unadorned::<T>::with_capacity(capacity);
[INFO] [stdout]    |                                      +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa2.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 |         Soa2 { d0: d0, d1: d1, e: e }
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa2`
[INFO] [stdout]    |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]    |
[INFO] [stdout] 87 |         Soa2::<A, B> { d0: d0, d1: d1, e: e }
[INFO] [stdout]    |             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         Soa2 { d0: d0, d1: d1, e: e }
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa2`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 103 |         Soa2::<A, B> { d0: d0, d1: d1, e: e }
[INFO] [stdout]     |             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 144 |         self.len() == 0
[INFO] [stdout]     |         ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 |         if self.is_boring() { return }
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 226 |         if self.is_boring() { return }
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:300:14
[INFO] [stdout]     |
[INFO] [stdout] 300 |             (self.d0.shallow_copy().as_vec(&e_copy),
[INFO] [stdout]     |              ^^^^^^^ cannot infer type for type parameter `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:373:19
[INFO] [stdout]     |
[INFO] [stdout] 373 |         let len = self.len();
[INFO] [stdout]     |                   ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:397:12
[INFO] [stdout]     |
[INFO] [stdout] 397 |         if self.is_boring() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:436:12
[INFO] [stdout]     |
[INFO] [stdout] 436 |         if self.is_boring() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:487:21
[INFO] [stdout]     |
[INFO] [stdout] 487 |         let mut v = Soa2::new();
[INFO] [stdout]     |                     ^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa2`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 487 |         let mut v = Soa2::<A, B>::new();
[INFO] [stdout]     |                         ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:502:19
[INFO] [stdout]     |
[INFO] [stdout] 502 |         let len = self.len();
[INFO] [stdout]     |                   ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `Soa2<A, B>`
[INFO] [stdout]    --> src/soa2.rs:535:13
[INFO] [stdout]     |
[INFO] [stdout] 535 |         let mut ret = Soa2::new();
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 536 |         let (d0, d1) = self.as_slices();
[INFO] [stdout] 537 |         ret.push_all(d0, d1);
[INFO] [stdout]     |             -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: Clone`
[INFO] [stdout] note: required by a bound in `Soa2::<A, B>::push_all`
[INFO] [stdout]    --> src/soa2.rs:495:9
[INFO] [stdout]     |
[INFO] [stdout] 495 | impl<A: Clone, B: Clone> Soa2<A, B> {
[INFO] [stdout]     |         ^^^^^ required by this bound in `Soa2::<A, B>::push_all`
[INFO] [stdout] ...
[INFO] [stdout] 518 |     pub fn push_all(&mut self, x0: &[A], x1: &[B]) {
[INFO] [stdout]     |            -------- required by a bound in this associated function
[INFO] [stdout] help: consider giving `ret` an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 535 |         let mut ret: Soa2<A, B> = Soa2::new();
[INFO] [stdout]     |                    ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:544:12
[INFO] [stdout]     |
[INFO] [stdout] 544 |         if self.len() > other.len() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:575:26
[INFO] [stdout]     |
[INFO] [stdout] 575 |         self.as_slices().hash(state)
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: Hash`
[INFO] [stdout]     = note: required for `[B]` to implement `Hash`
[INFO] [stdout]     = note: 2 redundant requirements hidden
[INFO] [stdout]     = note: required for `(&[B], &[_])` to implement `Hash`
[INFO] [stdout] help: try using a fully qualified path to specify the expected types
[INFO] [stdout]     |
[INFO] [stdout] 575 |         <(&[A], &[B]) as Hash>::hash::<H>(&self.as_slices(), state)
[INFO] [stdout]     |         +++++++++++++++++++++++++++++++++++                ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa2.rs:586:9
[INFO] [stdout]     |
[INFO] [stdout] 586 |         PartialEq::eq(a0, a1) && PartialEq::eq(b0, b1)
[INFO] [stdout]     |         ^^^^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[B0]` to implement `PartialEq<[B1]>`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 586 |         </* self type */ as PartialEq>::eq(a0, a1) && PartialEq::eq(b0, b1)
[INFO] [stdout]     |         +++++++++++++++++++          +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa2.rs:594:9
[INFO] [stdout]     |
[INFO] [stdout] 594 |         PartialEq::ne(a0, a1) || PartialEq::ne(b0, b1)
[INFO] [stdout]     |         ^^^^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[B0]` to implement `PartialEq<[B1]>`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 594 |         </* self type */ as PartialEq>::ne(a0, a1) || PartialEq::ne(b0, b1)
[INFO] [stdout]     |         +++++++++++++++++++          +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&T, &T), &(A1, B1))`
[INFO] [stdout]    --> src/soa2.rs:604:14
[INFO] [stdout]     |
[INFO] [stdout] 604 |             |((a0, b0), &(ref a1, ref b1))| a0 == a1 && b0 == b1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 604 |             |((a0, b0), &(ref a1, ref b1)): ((&T, &T), &(A1, B1))| a0 == a1 && b0 == b1)
[INFO] [stdout]     |                                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&T, &T), &(A1, B1))`
[INFO] [stdout]    --> src/soa2.rs:611:14
[INFO] [stdout]     |
[INFO] [stdout] 611 |             |((a0, b0), &(ref a1, ref b1))| a0 != a1 || b0 != b1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 611 |             |((a0, b0), &(ref a1, ref b1)): ((&T, &T), &(A1, B1))| a0 != a1 || b0 != b1)
[INFO] [stdout]     |                                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&T, &T), &(A1, B1))`
[INFO] [stdout]    --> src/soa2.rs:621:14
[INFO] [stdout]     |
[INFO] [stdout] 621 |             |((a0, b0), &(ref a1, ref b1))| a0 == a1 && b0 == b1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 621 |             |((a0, b0), &(ref a1, ref b1)): ((&T, &T), &(A1, B1))| a0 == a1 && b0 == b1)
[INFO] [stdout]     |                                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&T, &T), &(A1, B1))`
[INFO] [stdout]    --> src/soa2.rs:628:14
[INFO] [stdout]     |
[INFO] [stdout] 628 |             |((a0, b0), &(ref a1, ref b1))| a0 != a1 || b0 != b1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 628 |             |((a0, b0), &(ref a1, ref b1)): ((&T, &T), &(A1, B1))| a0 != a1 || b0 != b1)
[INFO] [stdout]     |                                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&T, &T), &(A1, B1))`
[INFO] [stdout]    --> src/soa2.rs:638:14
[INFO] [stdout]     |
[INFO] [stdout] 638 |             |((a0, b0), &(ref a1, ref b1))| a0 == a1 && b0 == b1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 638 |             |((a0, b0), &(ref a1, ref b1)): ((&T, &T), &(A1, B1))| a0 == a1 && b0 == b1)
[INFO] [stdout]     |                                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&T, &T), &(A1, B1))`
[INFO] [stdout]    --> src/soa2.rs:645:14
[INFO] [stdout]     |
[INFO] [stdout] 645 |             |((a0, b0), &(ref a1, ref b1))| a0 != a1 || b0 != b1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 645 |             |((a0, b0), &(ref a1, ref b1)): ((&T, &T), &(A1, B1))| a0 != a1 || b0 != b1)
[INFO] [stdout]     |                                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa2.rs:666:34
[INFO] [stdout]     |
[INFO] [stdout] 666 |     fn default() -> Soa2<A, B> { Soa2::new() }
[INFO] [stdout]     |                                  ^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa2`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 666 |     fn default() -> Soa2<A, B> { Soa2::<A, B>::new() }
[INFO] [stdout]     |                                      ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa2.rs:671:9
[INFO] [stdout]     |
[INFO] [stdout] 671 |         Debug::fmt(&self.as_slices(), f)
[INFO] [stdout]     |         ^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[B]` to implement `Debug`
[INFO] [stdout]     = note: 2 redundant requirements hidden
[INFO] [stdout]     = note: required for `(&[B], &[_])` to implement `Debug`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 671 |         </* self type */ as Debug>::fmt(&self.as_slices(), f)
[INFO] [stdout]     |         +++++++++++++++++++      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa3.rs:37:29
[INFO] [stdout]    |
[INFO] [stdout] 37 |             let (d0, d0u) = Unadorned::new();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ cannot infer type of the type parameter `T` declared on the struct `Unadorned`
[INFO] [stdout]    |
[INFO] [stdout] help: consider specifying the generic argument
[INFO] [stdout]    |
[INFO] [stdout] 37 |             let (d0, d0u) = Unadorned::<T>::new();
[INFO] [stdout]    |                                      +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa3.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         self.d0.is_boring() && self.d1.is_boring() && self.d2.is_boring()
[INFO] [stdout]    |         ^^^^^^^ cannot infer type for type parameter `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa3.rs:65:29
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let (d0, d0u) = Unadorned::with_capacity(capacity);
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `T` declared on the struct `Unadorned`
[INFO] [stdout]    |
[INFO] [stdout] help: consider specifying the generic argument
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let (d0, d0u) = Unadorned::<T>::with_capacity(capacity);
[INFO] [stdout]    |                                      +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa3.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         Soa3 { d0: d0, d1: d1, d2: d2, e: e }
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa3`
[INFO] [stdout]    |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]    |
[INFO] [stdout] 92 |         Soa3::<A, B, C> { d0: d0, d1: d1, d2: d2, e: e }
[INFO] [stdout]    |             +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |         Soa3 { d0: d0, d1: d1, d2: d2, e: e }
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa3`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 109 |         Soa3::<A, B, C> { d0: d0, d1: d1, d2: d2, e: e }
[INFO] [stdout]     |             +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 |         self.len() == 0
[INFO] [stdout]     |         ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:225:12
[INFO] [stdout]     |
[INFO] [stdout] 225 |         if self.is_boring() { return }
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 240 |         if self.is_boring() { return }
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:323:14
[INFO] [stdout]     |
[INFO] [stdout] 323 |             (self.d0.shallow_copy().as_vec(&e_copy),
[INFO] [stdout]     |              ^^^^^^^ cannot infer type for type parameter `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:404:19
[INFO] [stdout]     |
[INFO] [stdout] 404 |         let len = self.len();
[INFO] [stdout]     |                   ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:429:12
[INFO] [stdout]     |
[INFO] [stdout] 429 |         if self.is_boring() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:470:12
[INFO] [stdout]     |
[INFO] [stdout] 470 |         if self.is_boring() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:523:21
[INFO] [stdout]     |
[INFO] [stdout] 523 |         let mut v = Soa3::new();
[INFO] [stdout]     |                     ^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa3`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 523 |         let mut v = Soa3::<A, B, C>::new();
[INFO] [stdout]     |                         +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:538:19
[INFO] [stdout]     |
[INFO] [stdout] 538 |         let len = self.len();
[INFO] [stdout]     |                   ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `Soa3<A, B, C>`
[INFO] [stdout]    --> src/soa3.rs:576:13
[INFO] [stdout]     |
[INFO] [stdout] 576 |         let mut ret = Soa3::new();
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 577 |         let (d0, d1, d2) = self.as_slices();
[INFO] [stdout] 578 |         ret.push_all(d0, d1, d2);
[INFO] [stdout]     |             -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: Clone`
[INFO] [stdout] note: required by a bound in `Soa3::<A, B, C>::push_all`
[INFO] [stdout]    --> src/soa3.rs:531:9
[INFO] [stdout]     |
[INFO] [stdout] 531 | impl<A: Clone, B: Clone, C: Clone> Soa3<A, B, C> {
[INFO] [stdout]     |         ^^^^^ required by this bound in `Soa3::<A, B, C>::push_all`
[INFO] [stdout] ...
[INFO] [stdout] 557 |     pub fn push_all(&mut self, x0: &[A], x1: &[B], x2: &[C]) {
[INFO] [stdout]     |            -------- required by a bound in this associated function
[INFO] [stdout] help: consider giving `ret` an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 576 |         let mut ret: Soa3<A, B, C> = Soa3::new();
[INFO] [stdout]     |                    +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:585:12
[INFO] [stdout]     |
[INFO] [stdout] 585 |         if self.len() > other.len() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:621:26
[INFO] [stdout]     |
[INFO] [stdout] 621 |         self.as_slices().hash(state)
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: Hash`
[INFO] [stdout]     = note: required for `[C]` to implement `Hash`
[INFO] [stdout]     = note: 2 redundant requirements hidden
[INFO] [stdout]     = note: required for `(&[C], &[_], &[_])` to implement `Hash`
[INFO] [stdout] help: try using a fully qualified path to specify the expected types
[INFO] [stdout]     |
[INFO] [stdout] 621 |         <(&[A], &[B], &[C]) as Hash>::hash::<H>(&self.as_slices(), state)
[INFO] [stdout]     |         +++++++++++++++++++++++++++++++++++++++++                ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa3.rs:632:9
[INFO] [stdout]     |
[INFO] [stdout] 632 |         PartialEq::eq(a0, a1) && PartialEq::eq(b0, b1) && PartialEq::eq(c0, c1)
[INFO] [stdout]     |         ^^^^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[C0]` to implement `PartialEq<[C1]>`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 632 |         </* self type */ as PartialEq>::eq(a0, a1) && PartialEq::eq(b0, b1) && PartialEq::eq(c0, c1)
[INFO] [stdout]     |         +++++++++++++++++++          +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa3.rs:640:9
[INFO] [stdout]     |
[INFO] [stdout] 640 |         PartialEq::ne(a0, a1) || PartialEq::ne(b0, b1) || PartialEq::ne(c0, c1)
[INFO] [stdout]     |         ^^^^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[C0]` to implement `PartialEq<[C1]>`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 640 |         </* self type */ as PartialEq>::ne(a0, a1) || PartialEq::ne(b0, b1) || PartialEq::ne(c0, c1)
[INFO] [stdout]     |         +++++++++++++++++++          +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C), &(A1, B1, C1))`
[INFO] [stdout]    --> src/soa3.rs:650:14
[INFO] [stdout]     |
[INFO] [stdout] 650 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1))| a0 == a1 && b0 == b1 && c0 == c1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 650 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1)): ((&A, &B, &C), &(A1, B1, C1))| a0 == a1 && b0 == b1 && c0 == c1)
[INFO] [stdout]     |                                                       +++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C), &(A1, B1, C1))`
[INFO] [stdout]    --> src/soa3.rs:657:14
[INFO] [stdout]     |
[INFO] [stdout] 657 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1))| a0 != a1 || b0 != b1 || c0 != c1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 657 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1)): ((&A, &B, &C), &(A1, B1, C1))| a0 != a1 || b0 != b1 || c0 != c1)
[INFO] [stdout]     |                                                       +++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C), &(A1, B1, C1))`
[INFO] [stdout]    --> src/soa3.rs:667:14
[INFO] [stdout]     |
[INFO] [stdout] 667 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1))| a0 == a1 && b0 == b1 && c0 == c1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 667 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1)): ((&A, &B, &C), &(A1, B1, C1))| a0 == a1 && b0 == b1 && c0 == c1)
[INFO] [stdout]     |                                                       +++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C), &(A1, B1, C1))`
[INFO] [stdout]    --> src/soa3.rs:674:14
[INFO] [stdout]     |
[INFO] [stdout] 674 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1))| a0 != a1 || b0 != b1 || c0 != c1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 674 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1)): ((&A, &B, &C), &(A1, B1, C1))| a0 != a1 || b0 != b1 || c0 != c1)
[INFO] [stdout]     |                                                       +++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C), &(A1, B1, C1))`
[INFO] [stdout]    --> src/soa3.rs:684:14
[INFO] [stdout]     |
[INFO] [stdout] 684 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1))| a0 == a1 && b0 == b1 && c0 == c1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 684 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1)): ((&A, &B, &C), &(A1, B1, C1))| a0 == a1 && b0 == b1 && c0 == c1)
[INFO] [stdout]     |                                                       +++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C), &(A1, B1, C1))`
[INFO] [stdout]    --> src/soa3.rs:691:14
[INFO] [stdout]     |
[INFO] [stdout] 691 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1))| a0 != a1 || b0 != b1 || c0 != c1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 691 |             |((a0, b0, c0), &(ref a1, ref b1, ref c1)): ((&A, &B, &C), &(A1, B1, C1))| a0 != a1 || b0 != b1 || c0 != c1)
[INFO] [stdout]     |                                                       +++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa3.rs:712:37
[INFO] [stdout]     |
[INFO] [stdout] 712 |     fn default() -> Soa3<A, B, C> { Soa3::new() }
[INFO] [stdout]     |                                     ^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa3`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 712 |     fn default() -> Soa3<A, B, C> { Soa3::<A, B, C>::new() }
[INFO] [stdout]     |                                         +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa3.rs:717:9
[INFO] [stdout]     |
[INFO] [stdout] 717 |         Debug::fmt(&self.as_slices(), f)
[INFO] [stdout]     |         ^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[C]` to implement `Debug`
[INFO] [stdout]     = note: 2 redundant requirements hidden
[INFO] [stdout]     = note: required for `(&[C], &[_], &[_])` to implement `Debug`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 717 |         </* self type */ as Debug>::fmt(&self.as_slices(), f)
[INFO] [stdout]     |         +++++++++++++++++++      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa4.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 38 |             let (d0, d0u) = Unadorned::new();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ cannot infer type of the type parameter `T` declared on the struct `Unadorned`
[INFO] [stdout]    |
[INFO] [stdout] help: consider specifying the generic argument
[INFO] [stdout]    |
[INFO] [stdout] 38 |             let (d0, d0u) = Unadorned::<T>::new();
[INFO] [stdout]    |                                      +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa4.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.d0.is_boring()
[INFO] [stdout]    |         ^^^^^^^ cannot infer type for type parameter `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/soa4.rs:70:29
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let (d0, d0u) = Unadorned::with_capacity(capacity);
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `T` declared on the struct `Unadorned`
[INFO] [stdout]    |
[INFO] [stdout] help: consider specifying the generic argument
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let (d0, d0u) = Unadorned::<T>::with_capacity(capacity);
[INFO] [stdout]    |                                      +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         Soa4 { d0: d0, d1: d1, d2: d2, d3: d3, e: e }
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa4`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 100 |         Soa4::<A, B, C, D> { d0: d0, d1: d1, d2: d2, d3: d3, e: e }
[INFO] [stdout]     |             ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Soa4 { d0: d0, d1: d1, d2: d2, d3: d3, e: e }
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa4`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Soa4::<A, B, C, D> { d0: d0, d1: d1, d2: d2, d3: d3, e: e }
[INFO] [stdout]     |             ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         self.len() == 0
[INFO] [stdout]     |         ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 240 |         if self.is_boring() { return }
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 256 |         if self.is_boring() { return }
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:343:14
[INFO] [stdout]     |
[INFO] [stdout] 343 |             (self.d0.shallow_copy().as_vec(&e_copy),
[INFO] [stdout]     |              ^^^^^^^ cannot infer type for type parameter `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:430:19
[INFO] [stdout]     |
[INFO] [stdout] 430 |         let len = self.len();
[INFO] [stdout]     |                   ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:456:12
[INFO] [stdout]     |
[INFO] [stdout] 456 |         if self.is_boring() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:499:12
[INFO] [stdout]     |
[INFO] [stdout] 499 |         if self.is_boring() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:554:21
[INFO] [stdout]     |
[INFO] [stdout] 554 |         let mut v = Soa4::new();
[INFO] [stdout]     |                     ^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa4`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 554 |         let mut v = Soa4::<A, B, C, D>::new();
[INFO] [stdout]     |                         ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:569:19
[INFO] [stdout]     |
[INFO] [stdout] 569 |         let len = self.len();
[INFO] [stdout]     |                   ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `Soa4<A, B, C, D>`
[INFO] [stdout]    --> src/soa4.rs:610:13
[INFO] [stdout]     |
[INFO] [stdout] 610 |         let mut ret = Soa4::new();
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 611 |         let (d0, d1, d2, d3) = self.as_slices();
[INFO] [stdout] 612 |         ret.push_all(d0, d1, d2, d3);
[INFO] [stdout]     |             -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: Clone`
[INFO] [stdout] note: required by a bound in `Soa4::<A, B, C, D>::push_all`
[INFO] [stdout]    --> src/soa4.rs:562:9
[INFO] [stdout]     |
[INFO] [stdout] 562 | impl<A: Clone, B: Clone, C: Clone, D: Clone> Soa4<A, B, C, D> {
[INFO] [stdout]     |         ^^^^^ required by this bound in `Soa4::<A, B, C, D>::push_all`
[INFO] [stdout] ...
[INFO] [stdout] 589 |     pub fn push_all(&mut self, x0: &[A], x1: &[B], x2: &[C], x3: &[D]) {
[INFO] [stdout]     |            -------- required by a bound in this associated function
[INFO] [stdout] help: consider giving `ret` an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 610 |         let mut ret: Soa4<A, B, C, D> = Soa4::new();
[INFO] [stdout]     |                    ++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:619:12
[INFO] [stdout]     |
[INFO] [stdout] 619 |         if self.len() > other.len() {
[INFO] [stdout]     |            ^^^^ cannot infer type for type parameter `A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:660:26
[INFO] [stdout]     |
[INFO] [stdout] 660 |         self.as_slices().hash(state)
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: Hash`
[INFO] [stdout]     = note: required for `[D]` to implement `Hash`
[INFO] [stdout]     = note: 2 redundant requirements hidden
[INFO] [stdout]     = note: required for `(&[D], &[_], &[_], &[_])` to implement `Hash`
[INFO] [stdout] help: try using a fully qualified path to specify the expected types
[INFO] [stdout]     |
[INFO] [stdout] 660 |         <(&[A], &[B], &[C], &[D]) as Hash>::hash::<H>(&self.as_slices(), state)
[INFO] [stdout]     |         +++++++++++++++++++++++++++++++++++++++++++++++                ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa4.rs:671:9
[INFO] [stdout]     |
[INFO] [stdout] 671 |         PartialEq::eq(a0, a1) && PartialEq::eq(b0, b1) && PartialEq::eq(c0, c1) && PartialEq::eq(d0, d1)
[INFO] [stdout]     |         ^^^^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[D0]` to implement `PartialEq<[D1]>`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 671 |         </* self type */ as PartialEq>::eq(a0, a1) && PartialEq::eq(b0, b1) && PartialEq::eq(c0, c1) && PartialEq::eq(d0, d1)
[INFO] [stdout]     |         +++++++++++++++++++          +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa4.rs:679:9
[INFO] [stdout]     |
[INFO] [stdout] 679 |         PartialEq::ne(a0, a1) || PartialEq::ne(b0, b1) || PartialEq::ne(c0, c1) || PartialEq::ne(d0, d1)
[INFO] [stdout]     |         ^^^^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[D0]` to implement `PartialEq<[D1]>`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 679 |         </* self type */ as PartialEq>::ne(a0, a1) || PartialEq::ne(b0, b1) || PartialEq::ne(c0, c1) || PartialEq::ne(d0, d1)
[INFO] [stdout]     |         +++++++++++++++++++          +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C, &D), &(A1, B1, C1, D1))`
[INFO] [stdout]    --> src/soa4.rs:689:14
[INFO] [stdout]     |
[INFO] [stdout] 689 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1))| a0 == a1 && b0 == b1 && c0 == c1 && d0 == d1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 689 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1)): ((&A, &B, &C, &D), &(A1, B1, C1, D1))| a0 == a1 && b0 == b1 && c0 == c1 && d0 == d1)
[INFO] [stdout]     |                                                                   +++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C, &D), &(A1, B1, C1, D1))`
[INFO] [stdout]    --> src/soa4.rs:696:14
[INFO] [stdout]     |
[INFO] [stdout] 696 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1))| a0 != a1 || b0 != b1 || c0 != c1 || d0 != d1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 696 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1)): ((&A, &B, &C, &D), &(A1, B1, C1, D1))| a0 != a1 || b0 != b1 || c0 != c1 || d0 != d1)
[INFO] [stdout]     |                                                                   +++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C, &D), &(A1, B1, C1, D1))`
[INFO] [stdout]    --> src/soa4.rs:706:14
[INFO] [stdout]     |
[INFO] [stdout] 706 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1))| a0 == a1 && b0 == b1 && c0 == c1 && d0 == d1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 706 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1)): ((&A, &B, &C, &D), &(A1, B1, C1, D1))| a0 == a1 && b0 == b1 && c0 == c1 && d0 == d1)
[INFO] [stdout]     |                                                                   +++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C, &D), &(A1, B1, C1, D1))`
[INFO] [stdout]    --> src/soa4.rs:713:14
[INFO] [stdout]     |
[INFO] [stdout] 713 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1))| a0 != a1 || b0 != b1 || c0 != c1 || d0 != d1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 713 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1)): ((&A, &B, &C, &D), &(A1, B1, C1, D1))| a0 != a1 || b0 != b1 || c0 != c1 || d0 != d1)
[INFO] [stdout]     |                                                                   +++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C, &D), &(A1, B1, C1, D1))`
[INFO] [stdout]    --> src/soa4.rs:723:14
[INFO] [stdout]     |
[INFO] [stdout] 723 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1))| a0 == a1 && b0 == b1 && c0 == c1 && d0 == d1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 723 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1)): ((&A, &B, &C, &D), &(A1, B1, C1, D1))| a0 == a1 && b0 == b1 && c0 == c1 && d0 == d1)
[INFO] [stdout]     |                                                                   +++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed for `((&A, &B, &C, &D), &(A1, B1, C1, D1))`
[INFO] [stdout]    --> src/soa4.rs:730:14
[INFO] [stdout]     |
[INFO] [stdout] 730 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1))| a0 != a1 || b0 != b1 || c0 != c1 || d0 != d1)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: PartialEq<A1>`
[INFO] [stdout]     = note: required for `&A0` to implement `PartialEq<&A1>`
[INFO] [stdout] help: consider giving this closure parameter an explicit type, where the type for type parameter `A` is specified
[INFO] [stdout]     |
[INFO] [stdout] 730 |             |((a0, b0, c0, d0), &(ref a1, ref b1, ref c1, ref d1)): ((&A, &B, &C, &D), &(A1, B1, C1, D1))| a0 != a1 || b0 != b1 || c0 != c1 || d0 != d1)
[INFO] [stdout]     |                                                                   +++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/soa4.rs:751:40
[INFO] [stdout]     |
[INFO] [stdout] 751 |     fn default() -> Soa4<A, B, C, D> { Soa4::new() }
[INFO] [stdout]     |                                        ^^^^^^^^^ cannot infer type of the type parameter `A` declared on the struct `Soa4`
[INFO] [stdout]     |
[INFO] [stdout] help: consider specifying the generic arguments
[INFO] [stdout]     |
[INFO] [stdout] 751 |     fn default() -> Soa4<A, B, C, D> { Soa4::<A, B, C, D>::new() }
[INFO] [stdout]     |                                            ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0790]: cannot call associated function on trait without specifying the corresponding `impl` type
[INFO] [stdout]    --> src/soa4.rs:756:9
[INFO] [stdout]     |
[INFO] [stdout] 756 |         Debug::fmt(&self.as_slices(), f)
[INFO] [stdout]     |         ^^^^^^^^^^ cannot call associated function of trait
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `[D]` to implement `Debug`
[INFO] [stdout]     = note: 2 redundant requirements hidden
[INFO] [stdout]     = note: required for `(&[D], &[_], &[_], &[_])` to implement `Debug`
[INFO] [stdout] help: use a fully-qualified path to a specific available implementation
[INFO] [stdout]     |
[INFO] [stdout] 756 |         </* self type */ as Debug>::fmt(&self.as_slices(), f)
[INFO] [stdout]     |         +++++++++++++++++++      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 115 previous errors; 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0283, E0392, E0425, E0432, E0433, E0463, E0554, E0557...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `soa` (lib) due to 116 previous errors; 4 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "2d0846ed6f3a1ddd3c3bd38317b6fa9b1f841515b41b22f390b930a52b5d6770", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d0846ed6f3a1ddd3c3bd38317b6fa9b1f841515b41b22f390b930a52b5d6770", kill_on_drop: false }`
[INFO] [stdout] 2d0846ed6f3a1ddd3c3bd38317b6fa9b1f841515b41b22f390b930a52b5d6770
