[INFO] fetching crate nbits_vec 0.1.1... [INFO] checking nbits_vec-0.1.1 against master#936f2600b6c903b04387f74ed5cbce88bb06d243 for pr-91141 [INFO] extracting crate nbits_vec 0.1.1 into /workspace/builds/worker-5/source [INFO] validating manifest of crates.io crate nbits_vec 0.1.1 on toolchain 936f2600b6c903b04387f74ed5cbce88bb06d243 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+936f2600b6c903b04387f74ed5cbce88bb06d243" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate nbits_vec 0.1.1 [INFO] finished tweaking crates.io crate nbits_vec 0.1.1 [INFO] tweaked toml for crates.io crate nbits_vec 0.1.1 written to /workspace/builds/worker-5/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+936f2600b6c903b04387f74ed5cbce88bb06d243" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+936f2600b6c903b04387f74ed5cbce88bb06d243" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+936f2600b6c903b04387f74ed5cbce88bb06d243" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] de749cbb892e8c4caebdfb77f64fc6b81e4b25cce6d92c569e0e254caad880a1 [INFO] running `Command { std: "docker" "start" "-a" "de749cbb892e8c4caebdfb77f64fc6b81e4b25cce6d92c569e0e254caad880a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "de749cbb892e8c4caebdfb77f64fc6b81e4b25cce6d92c569e0e254caad880a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "de749cbb892e8c4caebdfb77f64fc6b81e4b25cce6d92c569e0e254caad880a1", kill_on_drop: false }` [INFO] [stdout] de749cbb892e8c4caebdfb77f64fc6b81e4b25cce6d92c569e0e254caad880a1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+936f2600b6c903b04387f74ed5cbce88bb06d243" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 821681b19696088c683cce4bb4fad0e9b71bc084932d05a1d6cccdef39d635c3 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "821681b19696088c683cce4bb4fad0e9b71bc084932d05a1d6cccdef39d635c3", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling libc v0.2.108 [INFO] [stderr] Compiling typenum v1.14.0 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling num-iter v0.1.42 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking num-complex v0.1.43 [INFO] [stderr] Checking num-bigint v0.1.44 [INFO] [stderr] Checking num-rational v0.1.42 [INFO] [stderr] Checking num v0.1.42 [INFO] [stderr] Checking nbits_vec v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] error[E0603]: module `raw_vec` is private [INFO] [stdout] --> src/lib.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | use alloc::raw_vec::RawVec; [INFO] [stdout] | ^^^^^^^ private module [INFO] [stdout] | [INFO] [stdout] note: the module `raw_vec` is defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/lib.rs:1243:9 [INFO] [stdout] | [INFO] [stdout] 1243 | try!(write!(f, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/lib.rs:1251:17 [INFO] [stdout] | [INFO] [stdout] 1251 | try!(write!(f, "{:#x}, ", ptr::read(ptr.offset(i as isize)))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:325:17 [INFO] [stdout] | [INFO] [stdout] 325 | if self.len() > len { [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:406:17 [INFO] [stdout] | [INFO] [stdout] 406 | if self.is_empty() { [INFO] [stdout] | ^^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::is_empty` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::is_empty` [INFO] [stdout] ... [INFO] [stdout] 559 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | -------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:451:17 [INFO] [stdout] | [INFO] [stdout] 451 | if self.is_empty() { [INFO] [stdout] | ^^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::is_empty` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::is_empty` [INFO] [stdout] ... [INFO] [stdout] 559 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | -------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:487:31 [INFO] [stdout] | [INFO] [stdout] 487 | let other_len = other.len(); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:524:14 [INFO] [stdout] | [INFO] [stdout] 524 | self.len() * Self::nbits() [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:541:14 [INFO] [stdout] | [INFO] [stdout] 541 | self.raw_cap() * Self::block_bits() [INFO] [stdout] | ^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::raw_cap` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::raw_cap` [INFO] [stdout] ... [INFO] [stdout] 1139 | fn raw_cap(&self) -> usize { [INFO] [stdout] | ------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:560:14 [INFO] [stdout] | [INFO] [stdout] 560 | self.len() == 0 [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:579:24 [INFO] [stdout] | [INFO] [stdout] 579 | let len = self.len(); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:608:42 [INFO] [stdout] | [INFO] [stdout] 608 | let ret = Some(self.get(self.len() - 1)); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:634:24 [INFO] [stdout] | [INFO] [stdout] 634 | let len = self.len(); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:707:36 [INFO] [stdout] | [INFO] [stdout] 707 | for from in from..self.len() { [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0603]: module `raw_vec` is private [INFO] [stdout] --> src/lib.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | use alloc::raw_vec::RawVec; [INFO] [stdout] | ^^^^^^^ private module [INFO] [stdout] | [INFO] [stdout] note: the module `raw_vec` is defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/lib.rs:1243:9 [INFO] [stdout] | [INFO] [stdout] 1243 | try!(write!(f, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/lib.rs:1251:17 [INFO] [stdout] | [INFO] [stdout] 1251 | try!(write!(f, "{:#x}, ", ptr::read(ptr.offset(i as isize)))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:799:28 [INFO] [stdout] | [INFO] [stdout] 799 | ptr::write(ptr, new); [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:325:17 [INFO] [stdout] | [INFO] [stdout] 325 | if self.len() > len { [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:406:17 [INFO] [stdout] | [INFO] [stdout] 406 | if self.is_empty() { [INFO] [stdout] | ^^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::is_empty` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::is_empty` [INFO] [stdout] ... [INFO] [stdout] 559 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | -------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:451:17 [INFO] [stdout] | [INFO] [stdout] 451 | if self.is_empty() { [INFO] [stdout] | ^^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::is_empty` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::is_empty` [INFO] [stdout] ... [INFO] [stdout] 559 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | -------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:487:31 [INFO] [stdout] | [INFO] [stdout] 487 | let other_len = other.len(); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:524:14 [INFO] [stdout] | [INFO] [stdout] 524 | self.len() * Self::nbits() [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:541:14 [INFO] [stdout] | [INFO] [stdout] 541 | self.raw_cap() * Self::block_bits() [INFO] [stdout] | ^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::raw_cap` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::raw_cap` [INFO] [stdout] ... [INFO] [stdout] 1139 | fn raw_cap(&self) -> usize { [INFO] [stdout] | ------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:560:14 [INFO] [stdout] | [INFO] [stdout] 560 | self.len() == 0 [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:579:24 [INFO] [stdout] | [INFO] [stdout] 579 | let len = self.len(); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:608:42 [INFO] [stdout] | [INFO] [stdout] 608 | let ret = Some(self.get(self.len() - 1)); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:634:24 [INFO] [stdout] | [INFO] [stdout] 634 | let len = self.len(); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:811:28 [INFO] [stdout] | [INFO] [stdout] 811 | ptr::write(ptr, new); [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const Block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:707:36 [INFO] [stdout] | [INFO] [stdout] 707 | for from in from..self.len() { [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:817:28 [INFO] [stdout] | [INFO] [stdout] 817 | ptr::write(ptr, new); [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const Block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:862:26 [INFO] [stdout] | [INFO] [stdout] 862 | if loc.0 >= self.raw_cap() { [INFO] [stdout] | ^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::raw_cap` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::raw_cap` [INFO] [stdout] ... [INFO] [stdout] 1139 | fn raw_cap(&self) -> usize { [INFO] [stdout] | ------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:953:37 [INFO] [stdout] | [INFO] [stdout] 953 | (_, true) => ptr::write(ptr, cur | mask), [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:799:28 [INFO] [stdout] | [INFO] [stdout] 799 | ptr::write(ptr, new); [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:811:28 [INFO] [stdout] | [INFO] [stdout] 811 | ptr::write(ptr, new); [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const Block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:954:38 [INFO] [stdout] | [INFO] [stdout] 954 | (_, false) => ptr::write(ptr, cur & !mask), [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type annotations needed [INFO] [stdout] --> src/lib.rs:984:38 [INFO] [stdout] | [INFO] [stdout] 984 | let ptr = self.raw_ptr().offset(bi as isize); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(tyvar_behind_raw_pointer)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #46906 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type annotations needed [INFO] [stdout] --> src/lib.rs:996:32 [INFO] [stdout] | [INFO] [stdout] 996 | (ptr::read(ptr.offset(1)) << (block_bits - bo2) >> (block_bits - nbits)) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #46906 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed for `*const T` [INFO] [stdout] --> src/lib.rs:984:28 [INFO] [stdout] | [INFO] [stdout] 984 | let ptr = self.raw_ptr().offset(bi as isize); [INFO] [stdout] | --- ^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | | [INFO] [stdout] | consider giving `ptr` the explicit type `*const T`, where the type parameter `Block` is specified [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::raw_ptr` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::raw_ptr` [INFO] [stdout] ... [INFO] [stdout] 1091 | pub fn raw_ptr(&self) -> *const Block { [INFO] [stdout] | ------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type annotations needed [INFO] [stdout] --> src/lib.rs:1042:34 [INFO] [stdout] | [INFO] [stdout] 1042 | let ptr = self.raw_ptr().offset(loc.0 as isize); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #46906 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1039:26 [INFO] [stdout] | [INFO] [stdout] 1039 | if loc.0 >= self.raw_cap() { [INFO] [stdout] | ^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::raw_cap` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::raw_cap` [INFO] [stdout] ... [INFO] [stdout] 1139 | fn raw_cap(&self) -> usize { [INFO] [stdout] | ------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1080:14 [INFO] [stdout] | [INFO] [stdout] 1080 | self.get_raw_bits(pos, 1) == Block::one() [INFO] [stdout] | -----^^^^^^^^^^^^-------- [INFO] [stdout] | | | [INFO] [stdout] | | cannot infer type for type parameter `Block` [INFO] [stdout] | this method call resolves to `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::get_raw_bits` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::get_raw_bits` [INFO] [stdout] ... [INFO] [stdout] 1035 | pub unsafe fn get_raw_bits(&self, pos: usize, length: usize) -> Block { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] help: use the fully qualified path for the potential candidates [INFO] [stdout] | [INFO] [stdout] 1080 | ::get_raw_bits(self) == Block::one() [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1080 | ::get_raw_bits(self) == Block::one() [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1080 | ::get_raw_bits(self) == Block::one() [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1080 | ::get_raw_bits(self) == Block::one() [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] and 8 other candidates [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1129:38 [INFO] [stdout] | [INFO] [stdout] 1129 | let loc = Self::bit_loc(self.bits()); [INFO] [stdout] | ^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::bits` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::bits` [INFO] [stdout] ... [INFO] [stdout] 523 | pub fn bits(&self) -> usize { [INFO] [stdout] | ---- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1261:25 [INFO] [stdout] | [INFO] [stdout] 1261 | Hash::hash(self.as_raw_slice(), state); [INFO] [stdout] | -----^^^^^^^^^^^^-- [INFO] [stdout] | | | [INFO] [stdout] | | cannot infer type for type parameter `Block` [INFO] [stdout] | this method call resolves to `&[Block]` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] ... [INFO] [stdout] 1097 | pub fn as_raw_slice(&self) -> &[Block] { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] help: use the fully qualified path for the potential candidates [INFO] [stdout] | [INFO] [stdout] 1261 | Hash::hash(::as_raw_slice(self), state); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1261 | Hash::hash(::as_raw_slice(self), state); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1261 | Hash::hash(::as_raw_slice(self), state); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1261 | Hash::hash(::as_raw_slice(self), state); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] and 8 other candidates [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1268:14 [INFO] [stdout] | [INFO] [stdout] 1268 | self.len() == other.len() && self.as_raw_slice() == other.as_raw_slice() [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1272:14 [INFO] [stdout] | [INFO] [stdout] 1272 | self.len() != other.len() || self.as_raw_slice() == other.as_raw_slice() [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1291:38 [INFO] [stdout] | [INFO] [stdout] 1291 | PartialOrd::partial_cmp(self.as_raw_slice(), other.as_raw_slice()) [INFO] [stdout] | ^^^^^^^^^^^^ -------------------- this method call resolves to `&[Block]` [INFO] [stdout] | | [INFO] [stdout] | cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] ... [INFO] [stdout] 1097 | pub fn as_raw_slice(&self) -> &[Block] { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1297:23 [INFO] [stdout] | [INFO] [stdout] 1297 | Ord::cmp(self.as_raw_slice(), other.as_raw_slice()) [INFO] [stdout] | ^^^^^^^^^^^^ -------------------- this method call resolves to `&[Block]` [INFO] [stdout] | | [INFO] [stdout] | cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] ... [INFO] [stdout] 1097 | pub fn as_raw_slice(&self) -> &[Block] { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BitAnd` [INFO] [stdout] --> src/lib.rs:44:16 [INFO] [stdout] | [INFO] [stdout] 44 | use std::ops::{BitAnd, BitOr, Shl, Shr}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BitOr` [INFO] [stdout] --> src/lib.rs:44:24 [INFO] [stdout] | [INFO] [stdout] 44 | use std::ops::{BitAnd, BitOr, Shl, Shr}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Shl` [INFO] [stdout] --> src/lib.rs:44:31 [INFO] [stdout] | [INFO] [stdout] 44 | use std::ops::{BitAnd, BitOr, Shl, Shr}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Shr` [INFO] [stdout] --> src/lib.rs:44:36 [INFO] [stdout] | [INFO] [stdout] 44 | use std::ops::{BitAnd, BitOr, Shl, Shr}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 27 previous errors; 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0283, E0308, E0603. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0283`. [INFO] [stdout] [INFO] [stderr] error: could not compile `nbits_vec` due to 28 previous errors; 9 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:817:28 [INFO] [stdout] | [INFO] [stdout] 817 | ptr::write(ptr, new); [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const Block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:862:26 [INFO] [stdout] | [INFO] [stdout] 862 | if loc.0 >= self.raw_cap() { [INFO] [stdout] | ^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::raw_cap` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::raw_cap` [INFO] [stdout] ... [INFO] [stdout] 1139 | fn raw_cap(&self) -> usize { [INFO] [stdout] | ------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:953:37 [INFO] [stdout] | [INFO] [stdout] 953 | (_, true) => ptr::write(ptr, cur | mask), [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:954:38 [INFO] [stdout] | [INFO] [stdout] 954 | (_, false) => ptr::write(ptr, cur & !mask), [INFO] [stdout] | ^^^ types differ in mutability [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut _` [INFO] [stdout] found raw pointer `*const _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type annotations needed [INFO] [stdout] --> src/lib.rs:984:38 [INFO] [stdout] | [INFO] [stdout] 984 | let ptr = self.raw_ptr().offset(bi as isize); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(tyvar_behind_raw_pointer)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #46906 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type annotations needed [INFO] [stdout] --> src/lib.rs:996:32 [INFO] [stdout] | [INFO] [stdout] 996 | (ptr::read(ptr.offset(1)) << (block_bits - bo2) >> (block_bits - nbits)) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #46906 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed for `*const T` [INFO] [stdout] --> src/lib.rs:984:28 [INFO] [stdout] | [INFO] [stdout] 984 | let ptr = self.raw_ptr().offset(bi as isize); [INFO] [stdout] | --- ^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | | [INFO] [stdout] | consider giving `ptr` the explicit type `*const T`, where the type parameter `Block` is specified [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::raw_ptr` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::raw_ptr` [INFO] [stdout] ... [INFO] [stdout] 1091 | pub fn raw_ptr(&self) -> *const Block { [INFO] [stdout] | ------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type annotations needed [INFO] [stdout] --> src/lib.rs:1042:34 [INFO] [stdout] | [INFO] [stdout] 1042 | let ptr = self.raw_ptr().offset(loc.0 as isize); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #46906 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1039:26 [INFO] [stdout] | [INFO] [stdout] 1039 | if loc.0 >= self.raw_cap() { [INFO] [stdout] | ^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::raw_cap` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::raw_cap` [INFO] [stdout] ... [INFO] [stdout] 1139 | fn raw_cap(&self) -> usize { [INFO] [stdout] | ------- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1080:14 [INFO] [stdout] | [INFO] [stdout] 1080 | self.get_raw_bits(pos, 1) == Block::one() [INFO] [stdout] | -----^^^^^^^^^^^^-------- [INFO] [stdout] | | | [INFO] [stdout] | | cannot infer type for type parameter `Block` [INFO] [stdout] | this method call resolves to `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::get_raw_bits` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::get_raw_bits` [INFO] [stdout] ... [INFO] [stdout] 1035 | pub unsafe fn get_raw_bits(&self, pos: usize, length: usize) -> Block { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] help: use the fully qualified path for the potential candidates [INFO] [stdout] | [INFO] [stdout] 1080 | ::get_raw_bits(self) == Block::one() [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1080 | ::get_raw_bits(self) == Block::one() [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1080 | ::get_raw_bits(self) == Block::one() [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1080 | ::get_raw_bits(self) == Block::one() [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] and 8 other candidates [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1129:38 [INFO] [stdout] | [INFO] [stdout] 1129 | let loc = Self::bit_loc(self.bits()); [INFO] [stdout] | ^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::bits` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::bits` [INFO] [stdout] ... [INFO] [stdout] 523 | pub fn bits(&self) -> usize { [INFO] [stdout] | ---- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1261:25 [INFO] [stdout] | [INFO] [stdout] 1261 | Hash::hash(self.as_raw_slice(), state); [INFO] [stdout] | -----^^^^^^^^^^^^-- [INFO] [stdout] | | | [INFO] [stdout] | | cannot infer type for type parameter `Block` [INFO] [stdout] | this method call resolves to `&[Block]` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] ... [INFO] [stdout] 1097 | pub fn as_raw_slice(&self) -> &[Block] { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] help: use the fully qualified path for the potential candidates [INFO] [stdout] | [INFO] [stdout] 1261 | Hash::hash(::as_raw_slice(self), state); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1261 | Hash::hash(::as_raw_slice(self), state); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1261 | Hash::hash(::as_raw_slice(self), state); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 1261 | Hash::hash(::as_raw_slice(self), state); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] and 8 other candidates [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1268:14 [INFO] [stdout] | [INFO] [stdout] 1268 | self.len() == other.len() && self.as_raw_slice() == other.as_raw_slice() [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1272:14 [INFO] [stdout] | [INFO] [stdout] 1272 | self.len() != other.len() || self.as_raw_slice() == other.as_raw_slice() [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1291:38 [INFO] [stdout] | [INFO] [stdout] 1291 | PartialOrd::partial_cmp(self.as_raw_slice(), other.as_raw_slice()) [INFO] [stdout] | ^^^^^^^^^^^^ -------------------- this method call resolves to `&[Block]` [INFO] [stdout] | | [INFO] [stdout] | cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] ... [INFO] [stdout] 1097 | pub fn as_raw_slice(&self) -> &[Block] { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/lib.rs:1297:23 [INFO] [stdout] | [INFO] [stdout] 1297 | Ord::cmp(self.as_raw_slice(), other.as_raw_slice()) [INFO] [stdout] | ^^^^^^^^^^^^ -------------------- this method call resolves to `&[Block]` [INFO] [stdout] | | [INFO] [stdout] | cannot infer type for type parameter `Block` [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::as_raw_slice` [INFO] [stdout] ... [INFO] [stdout] 1097 | pub fn as_raw_slice(&self) -> &[Block] { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:55:56 [INFO] [stdout] | [INFO] [stdout] 55 | assert_eq!(vec.get_raw_bit(i), true); [INFO] [stdout] | ^^^^^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::get_raw_bit` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::get_raw_bit` [INFO] [stdout] ... [INFO] [stdout] 1079 | pub unsafe fn get_raw_bit(&self, pos: usize) -> bool { [INFO] [stdout] | ----------- required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:70:49 [INFO] [stdout] | [INFO] [stdout] 70 | vec.get_raw_bits(i, n); [INFO] [stdout] | ----^^^^^^^^^^^^------ [INFO] [stdout] | | | [INFO] [stdout] | | cannot infer type for type parameter `Block` [INFO] [stdout] | this method call resolves to `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::get_raw_bits` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::get_raw_bits` [INFO] [stdout] ... [INFO] [stdout] 1035 | pub unsafe fn get_raw_bits(&self, pos: usize, length: usize) -> Block { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the fully qualified path for the potential candidates [INFO] [stdout] | [INFO] [stdout] 70 | ::get_raw_bits(vec); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 70 | ::get_raw_bits(vec); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 70 | ::get_raw_bits(vec); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 70 | ::get_raw_bits(vec); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] and 8 other candidates [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:85:41 [INFO] [stdout] | [INFO] [stdout] 85 | vec.get_raw_bits(1, 1); [INFO] [stdout] | ----^^^^^^^^^^^^------ [INFO] [stdout] | | | [INFO] [stdout] | | cannot infer type for type parameter `Block` [INFO] [stdout] | this method call resolves to `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::get_raw_bits` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::get_raw_bits` [INFO] [stdout] ... [INFO] [stdout] 1035 | pub unsafe fn get_raw_bits(&self, pos: usize, length: usize) -> Block { [INFO] [stdout] | ------------ required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the fully qualified path for the potential candidates [INFO] [stdout] | [INFO] [stdout] 85 | ::get_raw_bits(vec); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 85 | ::get_raw_bits(vec); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 85 | ::get_raw_bits(vec); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 85 | ::get_raw_bits(vec); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] and 8 other candidates [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:107:48 [INFO] [stdout] | [INFO] [stdout] 107 | assert_eq!(vec.capacity(), 0); [INFO] [stdout] | ^^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::capacity` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::capacity` [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn capacity(&self) -> usize { [INFO] [stdout] | -------- required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:116:45 [INFO] [stdout] | [INFO] [stdout] 116 | assert!(vec.capacity() >= 1); [INFO] [stdout] | ^^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::capacity` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::capacity` [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn capacity(&self) -> usize { [INFO] [stdout] | -------- required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:136:48 [INFO] [stdout] | [INFO] [stdout] 136 | assert_eq!(vec.len(), 100); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/tests.rs:160:41 [INFO] [stdout] | [INFO] [stdout] 160 | let v = vec.get(i); [INFO] [stdout] | ^ consider giving `v` a type [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:171:56 [INFO] [stdout] | [INFO] [stdout] 171 | assert_eq!(vec.get(j), 0b111001 >> (i / 100) & NV::mask()); [INFO] [stdout] | ----^^^--- [INFO] [stdout] | | | [INFO] [stdout] | | cannot infer type for type parameter `Block` [INFO] [stdout] | this method call resolves to `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::get` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::get` [INFO] [stdout] ... [INFO] [stdout] 973 | pub fn get(&self, index: usize) -> Block { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the fully qualified path for the potential candidates [INFO] [stdout] | [INFO] [stdout] 171 | assert_eq!(::get(vec), 0b111001 >> (i / 100) & NV::mask()); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 171 | assert_eq!(::get(vec), 0b111001 >> (i / 100) & NV::mask()); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 171 | assert_eq!(::get(vec), 0b111001 >> (i / 100) & NV::mask()); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 171 | assert_eq!(::get(vec), 0b111001 >> (i / 100) & NV::mask()); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] and 8 other candidates [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:180:49 [INFO] [stdout] | [INFO] [stdout] 180 | let l = vec.len(); [INFO] [stdout] | ^^^ cannot infer type for type parameter `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::len` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::len` [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn len(&self) -> usize { [INFO] [stdout] | --- required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/tests.rs:224:70 [INFO] [stdout] | [INFO] [stdout] 224 | println!("{} capacity: {}", i, j.capacity()); [INFO] [stdout] | ^^^^^^^^ cannot infer type for type parameter `Block` [INFO] [stdout] ... [INFO] [stdout] 235 | / generate_test! { [INFO] [stdout] 236 | | (n1 N1 => u8 u16 u32 u64 usize) [INFO] [stdout] 237 | | (n2 N2 => u8 u16 u32 u64 usize) [INFO] [stdout] 238 | | (n3 N3 => u8 u16 u32 u64 usize) [INFO] [stdout] 239 | | (n4 N4 => u8 u16 u32 u64 usize) [INFO] [stdout] 240 | | (n8 N8 => u8 u16 u32 u64 usize) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: PrimInt` [INFO] [stdout] note: required by a bound in `NbitsVec::::capacity` [INFO] [stdout] --> src/lib.rs:111:36 [INFO] [stdout] | [INFO] [stdout] 111 | impl NbitsVec { [INFO] [stdout] | ^^^^^^^ required by this bound in `NbitsVec::::capacity` [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn capacity(&self) -> usize { [INFO] [stdout] | -------- required by a bound in this [INFO] [stdout] = note: this error originates in the macro `generate_test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BitAnd` [INFO] [stdout] --> src/lib.rs:44:16 [INFO] [stdout] | [INFO] [stdout] 44 | use std::ops::{BitAnd, BitOr, Shl, Shr}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BitOr` [INFO] [stdout] --> src/lib.rs:44:24 [INFO] [stdout] | [INFO] [stdout] 44 | use std::ops::{BitAnd, BitOr, Shl, Shr}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Shl` [INFO] [stdout] --> src/lib.rs:44:31 [INFO] [stdout] | [INFO] [stdout] 44 | use std::ops::{BitAnd, BitOr, Shl, Shr}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Shr` [INFO] [stdout] --> src/lib.rs:44:36 [INFO] [stdout] | [INFO] [stdout] 44 | use std::ops::{BitAnd, BitOr, Shl, Shr}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 37 previous errors; 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0282, E0283, E0308, E0603. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0282`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "821681b19696088c683cce4bb4fad0e9b71bc084932d05a1d6cccdef39d635c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "821681b19696088c683cce4bb4fad0e9b71bc084932d05a1d6cccdef39d635c3", kill_on_drop: false }` [INFO] [stdout] 821681b19696088c683cce4bb4fad0e9b71bc084932d05a1d6cccdef39d635c3