[INFO] crate xorshift128plus 0.1.1 is already in cache [INFO] extracting crate xorshift128plus 0.1.1 into work/ex/clippy-test-run/sources/stable/reg/xorshift128plus/0.1.1 [INFO] extracting crate xorshift128plus 0.1.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/xorshift128plus/0.1.1 [INFO] validating manifest of xorshift128plus-0.1.1 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of xorshift128plus-0.1.1 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing xorshift128plus-0.1.1 [INFO] finished frobbing xorshift128plus-0.1.1 [INFO] frobbed toml for xorshift128plus-0.1.1 written to work/ex/clippy-test-run/sources/stable/reg/xorshift128plus/0.1.1/Cargo.toml [INFO] started frobbing xorshift128plus-0.1.1 [INFO] finished frobbing xorshift128plus-0.1.1 [INFO] frobbed toml for xorshift128plus-0.1.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/xorshift128plus/0.1.1/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting xorshift128plus-0.1.1 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-0/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/xorshift128plus/0.1.1:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] ebce9c304d9d124cdee73433a221370627ca6f68b9e94655d38c2bce21822e78 [INFO] running `"docker" "start" "-a" "ebce9c304d9d124cdee73433a221370627ca6f68b9e94655d38c2bce21822e78"` [INFO] [stderr] Checking xorshift128plus v0.1.1 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | return z ^ (z >> 31); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `z ^ (z >> 31)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:15:24 [INFO] [stderr] | [INFO] [stderr] 15 | let mut z = seed + 0x9E3779B97F4A7C15_u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider: `0x9E37_79B9_7F4A_7C15_u64` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | z = (z ^ (z >> 30)) * 0xBF58476D1CE4E5B9_u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider: `0xBF58_476D_1CE4_E5B9_u64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:17:27 [INFO] [stderr] | [INFO] [stderr] 17 | z = (z ^ (z >> 27)) * 0x94D049BB133111EB_u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider: `0x94D0_49BB_1331_11EB_u64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:5:28 [INFO] [stderr] | [INFO] [stderr] 5 | (x as f64) * f64::exp2(exp as f64) [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(exp)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:10:7 [INFO] [stderr] | [INFO] [stderr] 10 | (((seed as u64) * 48_271_u64) % 2_147_483_647_u64) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(seed)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:22:6 [INFO] [stderr] | [INFO] [stderr] 22 | ((bytes[7] as u64) << 56) + ((bytes[6] as u64) << 48) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[7])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:22:34 [INFO] [stderr] | [INFO] [stderr] 22 | ((bytes[7] as u64) << 56) + ((bytes[6] as u64) << 48) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[6])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:23:6 [INFO] [stderr] | [INFO] [stderr] 23 | ((bytes[5] as u64) << 40) + ((bytes[4] as u64) << 32) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[5])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:23:34 [INFO] [stderr] | [INFO] [stderr] 23 | ((bytes[5] as u64) << 40) + ((bytes[4] as u64) << 32) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[4])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | ((bytes[3] as u64) << 24) + ((bytes[2] as u64) << 16) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[3])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:24:34 [INFO] [stderr] | [INFO] [stderr] 24 | ((bytes[3] as u64) << 24) + ((bytes[2] as u64) << 16) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[2])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:25:6 [INFO] [stderr] | [INFO] [stderr] 25 | ((bytes[1] as u64) << 8) + ((bytes[0] as u64) << 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `(bytes[0] as u64)` [INFO] [stderr] --> src/lib.rs:25:33 [INFO] [stderr] | [INFO] [stderr] 25 | ((bytes[1] as u64) << 8) + ((bytes[0] as u64) << 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:25:34 [INFO] [stderr] | [INFO] [stderr] 25 | ((bytes[1] as u64) << 8) + ((bytes[0] as u64) << 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:85:14 [INFO] [stderr] | [INFO] [stderr] 85 | ((raw1 as u64) << 32) + (raw0 as u64), [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(raw1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:85:37 [INFO] [stderr] | [INFO] [stderr] 85 | ((raw1 as u64) << 32) + (raw0 as u64), [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(raw0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:86:14 [INFO] [stderr] | [INFO] [stderr] 86 | ((raw3 as u64) << 32) + (raw2 as u64), [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(raw3)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:86:37 [INFO] [stderr] | [INFO] [stderr] 86 | ((raw3 as u64) << 32) + (raw2 as u64), [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(raw2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: defining a method called `next` on this type; consider implementing the `std::iter::Iterator` trait or choosing a less ambiguous name [INFO] [stderr] --> src/lib.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | / pub fn next (&mut self) -> f64 { [INFO] [stderr] 102 | | let mut x = self.0; [INFO] [stderr] 103 | | let y = self.1; [INFO] [stderr] 104 | | [INFO] [stderr] ... | [INFO] [stderr] 114 | | ldexp(u64::wrapping_add(self.0, self.1) & MANTISSA_MASK, -MANTISSA_BITS) [INFO] [stderr] 115 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::should_implement_trait)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | return z ^ (z >> 31); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `z ^ (z >> 31)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:15:24 [INFO] [stderr] | [INFO] [stderr] 15 | let mut z = seed + 0x9E3779B97F4A7C15_u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider: `0x9E37_79B9_7F4A_7C15_u64` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | z = (z ^ (z >> 30)) * 0xBF58476D1CE4E5B9_u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider: `0xBF58_476D_1CE4_E5B9_u64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:17:27 [INFO] [stderr] | [INFO] [stderr] 17 | z = (z ^ (z >> 27)) * 0x94D049BB133111EB_u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider: `0x94D0_49BB_1331_11EB_u64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:129:32 [INFO] [stderr] | [INFO] [stderr] 129 | assert_eq!(rng.next(), 0.35873106038177727); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.358_731_060_381_777_27` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:130:32 [INFO] [stderr] | [INFO] [stderr] 130 | assert_eq!(rng.next(), 0.7433543130711686); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0.743_354_313_071_168_6` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:131:32 [INFO] [stderr] | [INFO] [stderr] 131 | assert_eq!(rng.next(), 0.6325316214071923); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0.632_531_621_407_192_3` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:132:32 [INFO] [stderr] | [INFO] [stderr] 132 | assert_eq!(rng.next(), 0.708663591569944); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider: `0.708_663_591_569_944` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:133:32 [INFO] [stderr] | [INFO] [stderr] 133 | assert_eq!(rng.next(), 0.8974382234842848); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0.897_438_223_484_284_8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:138:49 [INFO] [stderr] | [INFO] [stderr] 138 | let mut rng = XorShift128Plus::from_u32(4293262078); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_293_262_078` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:140:32 [INFO] [stderr] | [INFO] [stderr] 140 | assert_eq!(rng.next(), 0.4335893835472515); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0.433_589_383_547_251_5` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:141:32 [INFO] [stderr] | [INFO] [stderr] 141 | assert_eq!(rng.next(), 0.6067907909036327); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0.606_790_790_903_632_7` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:142:32 [INFO] [stderr] | [INFO] [stderr] 142 | assert_eq!(rng.next(), 0.046905965279849804); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider: `0.046_905_965_279_849_804` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:143:32 [INFO] [stderr] | [INFO] [stderr] 143 | assert_eq!(rng.next(), 0.480991995797152); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider: `0.480_991_995_797_152` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:144:32 [INFO] [stderr] | [INFO] [stderr] 144 | assert_eq!(rng.next(), 0.6796126170804464); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0.679_612_617_080_446_4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:5:28 [INFO] [stderr] | [INFO] [stderr] 5 | (x as f64) * f64::exp2(exp as f64) [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(exp)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:10:7 [INFO] [stderr] | [INFO] [stderr] 10 | (((seed as u64) * 48_271_u64) % 2_147_483_647_u64) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(seed)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:22:6 [INFO] [stderr] | [INFO] [stderr] 22 | ((bytes[7] as u64) << 56) + ((bytes[6] as u64) << 48) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[7])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:22:34 [INFO] [stderr] | [INFO] [stderr] 22 | ((bytes[7] as u64) << 56) + ((bytes[6] as u64) << 48) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[6])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:23:6 [INFO] [stderr] | [INFO] [stderr] 23 | ((bytes[5] as u64) << 40) + ((bytes[4] as u64) << 32) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[5])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:23:34 [INFO] [stderr] | [INFO] [stderr] 23 | ((bytes[5] as u64) << 40) + ((bytes[4] as u64) << 32) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[4])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | ((bytes[3] as u64) << 24) + ((bytes[2] as u64) << 16) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[3])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:24:34 [INFO] [stderr] | [INFO] [stderr] 24 | ((bytes[3] as u64) << 24) + ((bytes[2] as u64) << 16) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[2])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:25:6 [INFO] [stderr] | [INFO] [stderr] 25 | ((bytes[1] as u64) << 8) + ((bytes[0] as u64) << 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `(bytes[0] as u64)` [INFO] [stderr] --> src/lib.rs:25:33 [INFO] [stderr] | [INFO] [stderr] 25 | ((bytes[1] as u64) << 8) + ((bytes[0] as u64) << 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:25:34 [INFO] [stderr] | [INFO] [stderr] 25 | ((bytes[1] as u64) << 8) + ((bytes[0] as u64) << 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(bytes[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:85:14 [INFO] [stderr] | [INFO] [stderr] 85 | ((raw1 as u64) << 32) + (raw0 as u64), [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(raw1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:85:37 [INFO] [stderr] | [INFO] [stderr] 85 | ((raw1 as u64) << 32) + (raw0 as u64), [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(raw0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:86:14 [INFO] [stderr] | [INFO] [stderr] 86 | ((raw3 as u64) << 32) + (raw2 as u64), [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(raw3)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:86:37 [INFO] [stderr] | [INFO] [stderr] 86 | ((raw3 as u64) << 32) + (raw2 as u64), [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(raw2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: defining a method called `next` on this type; consider implementing the `std::iter::Iterator` trait or choosing a less ambiguous name [INFO] [stderr] --> src/lib.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | / pub fn next (&mut self) -> f64 { [INFO] [stderr] 102 | | let mut x = self.0; [INFO] [stderr] 103 | | let y = self.1; [INFO] [stderr] 104 | | [INFO] [stderr] ... | [INFO] [stderr] 114 | | ldexp(u64::wrapping_add(self.0, self.1) & MANTISSA_MASK, -MANTISSA_BITS) [INFO] [stderr] 115 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::should_implement_trait)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:129:9 [INFO] [stderr] | [INFO] [stderr] 129 | assert_eq!(rng.next(), 0.35873106038177727); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:129:9 [INFO] [stderr] | [INFO] [stderr] 129 | assert_eq!(rng.next(), 0.35873106038177727); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:130:9 [INFO] [stderr] | [INFO] [stderr] 130 | assert_eq!(rng.next(), 0.7433543130711686); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:130:9 [INFO] [stderr] | [INFO] [stderr] 130 | assert_eq!(rng.next(), 0.7433543130711686); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:131:9 [INFO] [stderr] | [INFO] [stderr] 131 | assert_eq!(rng.next(), 0.6325316214071923); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:131:9 [INFO] [stderr] | [INFO] [stderr] 131 | assert_eq!(rng.next(), 0.6325316214071923); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:132:9 [INFO] [stderr] | [INFO] [stderr] 132 | assert_eq!(rng.next(), 0.708663591569944); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:132:9 [INFO] [stderr] | [INFO] [stderr] 132 | assert_eq!(rng.next(), 0.708663591569944); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:133:9 [INFO] [stderr] | [INFO] [stderr] 133 | assert_eq!(rng.next(), 0.8974382234842848); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:133:9 [INFO] [stderr] | [INFO] [stderr] 133 | assert_eq!(rng.next(), 0.8974382234842848); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 140 | assert_eq!(rng.next(), 0.4335893835472515); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 140 | assert_eq!(rng.next(), 0.4335893835472515); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:141:9 [INFO] [stderr] | [INFO] [stderr] 141 | assert_eq!(rng.next(), 0.6067907909036327); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:141:9 [INFO] [stderr] | [INFO] [stderr] 141 | assert_eq!(rng.next(), 0.6067907909036327); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:142:9 [INFO] [stderr] | [INFO] [stderr] 142 | assert_eq!(rng.next(), 0.046905965279849804); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:142:9 [INFO] [stderr] | [INFO] [stderr] 142 | assert_eq!(rng.next(), 0.046905965279849804); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:143:9 [INFO] [stderr] | [INFO] [stderr] 143 | assert_eq!(rng.next(), 0.480991995797152); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:143:9 [INFO] [stderr] | [INFO] [stderr] 143 | assert_eq!(rng.next(), 0.480991995797152); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:144:9 [INFO] [stderr] | [INFO] [stderr] 144 | assert_eq!(rng.next(), 0.6796126170804464); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:144:9 [INFO] [stderr] | [INFO] [stderr] 144 | assert_eq!(rng.next(), 0.6796126170804464); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: aborting due to 10 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `xorshift128plus`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "ebce9c304d9d124cdee73433a221370627ca6f68b9e94655d38c2bce21822e78"` [INFO] running `"docker" "rm" "-f" "ebce9c304d9d124cdee73433a221370627ca6f68b9e94655d38c2bce21822e78"` [INFO] [stdout] ebce9c304d9d124cdee73433a221370627ca6f68b9e94655d38c2bce21822e78