[INFO] crate half 1.3.0 is already in cache [INFO] extracting crate half 1.3.0 into work/ex/clippy-test-run/sources/stable/reg/half/1.3.0 [INFO] extracting crate half 1.3.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/half/1.3.0 [INFO] validating manifest of half-1.3.0 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 half-1.3.0 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 half-1.3.0 [INFO] finished frobbing half-1.3.0 [INFO] frobbed toml for half-1.3.0 written to work/ex/clippy-test-run/sources/stable/reg/half/1.3.0/Cargo.toml [INFO] started frobbing half-1.3.0 [INFO] finished frobbing half-1.3.0 [INFO] frobbed toml for half-1.3.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/half/1.3.0/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 half-1.3.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/half/1.3.0:/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] 0234542fc7891ea4e29ec56c6afc9d9fe86ae16a590a2d376fc3208f4f1893b7 [INFO] running `"docker" "start" "-a" "0234542fc7891ea4e29ec56c6afc9d9fe86ae16a590a2d376fc3208f4f1893b7"` [INFO] [stderr] Checking half v1.3.0 (/opt/crater/workdir) [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:597:16 [INFO] [stderr] | [INFO] [stderr] 597 | if x & 0x7FFFFFFFu32 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7FFF_FFFFu32` [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:602:24 [INFO] [stderr] | [INFO] [stderr] 602 | let sign = x & 0x80000000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x8000_0000u32` [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:603:23 [INFO] [stderr] | [INFO] [stderr] 603 | let exp = x & 0x7F800000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7F80_0000u32` [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:604:23 [INFO] [stderr] | [INFO] [stderr] 604 | let man = x & 0x007FFFFFu32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x007F_FFFFu32` [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:612:19 [INFO] [stderr] | [INFO] [stderr] 612 | if exp == 0x7F800000u32 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7F80_0000u32` [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:640:29 [INFO] [stderr] | [INFO] [stderr] 640 | let man = man | 0x00800000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x0080_0000u32` [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:654:18 [INFO] [stderr] | [INFO] [stderr] 654 | if man & 0x00001000u32 != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x0000_1000u32` [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:669:16 [INFO] [stderr] | [INFO] [stderr] 669 | if x & 0x7FFFFFFFu32 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7FFF_FFFFu32` [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:674:24 [INFO] [stderr] | [INFO] [stderr] 674 | let sign = x & 0x80000000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x8000_0000u32` [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:675:23 [INFO] [stderr] | [INFO] [stderr] 675 | let exp = x & 0x7FF00000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7FF0_0000u32` [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:676:23 [INFO] [stderr] | [INFO] [stderr] 676 | let man = x & 0x000FFFFFu32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x000F_FFFFu32` [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:684:19 [INFO] [stderr] | [INFO] [stderr] 684 | if exp == 0x7FF00000u32 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7FF0_0000u32` [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:712:29 [INFO] [stderr] | [INFO] [stderr] 712 | let man = man | 0x00100000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x0010_0000u32` [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:726:18 [INFO] [stderr] | [INFO] [stderr] 726 | if man & 0x00000200u32 != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x0000_0200u32` [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:748:68 [INFO] [stderr] | [INFO] [stderr] 748 | return unsafe { mem::transmute((half_sign << 16) | 0x7F800000u32) }; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7F80_0000u32` [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:791:68 [INFO] [stderr] | [INFO] [stderr] 791 | return unsafe { mem::transmute((half_sign << 48) | 0x7FF0000000000000u64) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: consider: `0x7FF0_0000_0000_0000u64` [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: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:425:36 [INFO] [stderr] | [INFO] [stderr] 425 | (self.0 == other.0) || ((self.0 | other.0) & 0x7FFFu16 == 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::verbose_bit_mask)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:440:24 [INFO] [stderr] | [INFO] [stderr] 440 | if (self.0 | other.0) & 0x7FFFu16 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:447:24 [INFO] [stderr] | [INFO] [stderr] 447 | if (self.0 | other.0) & 0x7FFFu16 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:481:34 [INFO] [stderr] | [INFO] [stderr] 481 | (false, true) => (self.0 | other.0) & 0x7FFFu16 == 0, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:512:34 [INFO] [stderr] | [INFO] [stderr] 512 | (true, false) => (self.0 | other.0) & 0x7FFFu16 == 0, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:522:32 [INFO] [stderr] | [INFO] [stderr] 522 | f32::from_str(src).map(|x| f16::from_f32(x)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `f16::from_f32` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:597:12 [INFO] [stderr] | [INFO] [stderr] 597 | if x & 0x7FFFFFFFu32 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `x.trailing_zeros() >= 31` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:669:12 [INFO] [stderr] | [INFO] [stderr] 669 | if x & 0x7FFFFFFFu32 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `x.trailing_zeros() >= 31` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:696:28 [INFO] [stderr] | [INFO] [stderr] 696 | let unbiased_exp = ((exp >> 20) as i64) - 1023; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(exp >> 20)` [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: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:736:12 [INFO] [stderr] | [INFO] [stderr] 736 | if i & 0x7FFFu16 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i.trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:737:29 [INFO] [stderr] | [INFO] [stderr] 737 | return unsafe { mem::transmute((i as u32) << 16) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits((i as u32) << 16)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_int_to_float)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:737:44 [INFO] [stderr] | [INFO] [stderr] 737 | return unsafe { mem::transmute((i as u32) << 16) }; [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(i)` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:740:25 [INFO] [stderr] | [INFO] [stderr] 740 | let half_sign = (i & 0x8000u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(i & 0x8000u16)` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:741:24 [INFO] [stderr] | [INFO] [stderr] 741 | let half_exp = (i & 0x7C00u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(i & 0x7C00u16)` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:742:24 [INFO] [stderr] | [INFO] [stderr] 742 | let half_man = (i & 0x03FFu16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(i & 0x03FFu16)` [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: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:748:33 [INFO] [stderr] | [INFO] [stderr] 748 | return unsafe { mem::transmute((half_sign << 16) | 0x7F800000u32) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits((half_sign << 16) | 0x7F800000u32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:768:29 [INFO] [stderr] | [INFO] [stderr] 768 | return unsafe { mem::transmute(sign | exp | man) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits(sign | exp | man)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:774:18 [INFO] [stderr] | [INFO] [stderr] 774 | unsafe { mem::transmute(sign | exp | man) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits(sign | exp | man)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:779:12 [INFO] [stderr] | [INFO] [stderr] 779 | if i & 0x7FFFu16 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i.trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:780:29 [INFO] [stderr] | [INFO] [stderr] 780 | return unsafe { mem::transmute((i as u64) << 48) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits((i as u64) << 48)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:780:44 [INFO] [stderr] | [INFO] [stderr] 780 | return unsafe { mem::transmute((i as u64) << 48) }; [INFO] [stderr] | ^^^^^^^^^^ help: try: `u64::from(i)` [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 u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:783:25 [INFO] [stderr] | [INFO] [stderr] 783 | let half_sign = (i & 0x8000u16) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(i & 0x8000u16)` [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 u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:784:24 [INFO] [stderr] | [INFO] [stderr] 784 | let half_exp = (i & 0x7C00u16) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(i & 0x7C00u16)` [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 u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:785:24 [INFO] [stderr] | [INFO] [stderr] 785 | let half_man = (i & 0x03FFu16) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(i & 0x03FFu16)` [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: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:791:33 [INFO] [stderr] | [INFO] [stderr] 791 | return unsafe { mem::transmute((half_sign << 48) | 0x7FF0000000000000u64) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits((half_sign << 48) | 0x7FF0000000000000u64)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:809:23 [INFO] [stderr] | [INFO] [stderr] 809 | let exp = ((1023 - 15 - e) as u64) << 52; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(1023 - 15 - e)` [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: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:811:29 [INFO] [stderr] | [INFO] [stderr] 811 | return unsafe { mem::transmute(sign | exp | man) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits(sign | exp | man)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:817:18 [INFO] [stderr] | [INFO] [stderr] 817 | unsafe { mem::transmute(sign | exp | man) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits(sign | exp | man)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:831:5 [INFO] [stderr] | [INFO] [stderr] 831 | / pub fn from_bits_mut<'s>(bits: &'s mut [u16]) -> &'s mut [f16] { [INFO] [stderr] 832 | | let pointer = bits.as_ptr() as *mut f16; [INFO] [stderr] 833 | | let length = bits.len(); [INFO] [stderr] 834 | | unsafe { slice::from_raw_parts_mut(pointer, length) } [INFO] [stderr] 835 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:842:5 [INFO] [stderr] | [INFO] [stderr] 842 | / pub fn to_bits_mut<'s>(bits: &'s mut [f16]) -> &'s mut [u16] { [INFO] [stderr] 843 | | let pointer = bits.as_ptr() as *mut u16; [INFO] [stderr] 844 | | let length = bits.len(); [INFO] [stderr] 845 | | unsafe { slice::from_raw_parts_mut(pointer, length) } [INFO] [stderr] 846 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:851:5 [INFO] [stderr] | [INFO] [stderr] 851 | / pub fn from_bits<'s>(bits: &'s [u16]) -> &'s [f16] { [INFO] [stderr] 852 | | let pointer = bits.as_ptr() as *const f16; [INFO] [stderr] 853 | | let length = bits.len(); [INFO] [stderr] 854 | | unsafe { slice::from_raw_parts(pointer, length) } [INFO] [stderr] 855 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:860:5 [INFO] [stderr] | [INFO] [stderr] 860 | / pub fn to_bits<'s>(bits: &'s [f16]) -> &'s [u16] { [INFO] [stderr] 861 | | let pointer = bits.as_ptr() as *const u16; [INFO] [stderr] 862 | | let length = bits.len(); [INFO] [stderr] 863 | | unsafe { slice::from_raw_parts(pointer, length) } [INFO] [stderr] 864 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:597:16 [INFO] [stderr] | [INFO] [stderr] 597 | if x & 0x7FFFFFFFu32 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7FFF_FFFFu32` [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:602:24 [INFO] [stderr] | [INFO] [stderr] 602 | let sign = x & 0x80000000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x8000_0000u32` [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:603:23 [INFO] [stderr] | [INFO] [stderr] 603 | let exp = x & 0x7F800000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7F80_0000u32` [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:604:23 [INFO] [stderr] | [INFO] [stderr] 604 | let man = x & 0x007FFFFFu32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x007F_FFFFu32` [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:612:19 [INFO] [stderr] | [INFO] [stderr] 612 | if exp == 0x7F800000u32 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7F80_0000u32` [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:640:29 [INFO] [stderr] | [INFO] [stderr] 640 | let man = man | 0x00800000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x0080_0000u32` [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:654:18 [INFO] [stderr] | [INFO] [stderr] 654 | if man & 0x00001000u32 != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x0000_1000u32` [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:669:16 [INFO] [stderr] | [INFO] [stderr] 669 | if x & 0x7FFFFFFFu32 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7FFF_FFFFu32` [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:674:24 [INFO] [stderr] | [INFO] [stderr] 674 | let sign = x & 0x80000000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x8000_0000u32` [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:675:23 [INFO] [stderr] | [INFO] [stderr] 675 | let exp = x & 0x7FF00000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7FF0_0000u32` [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:676:23 [INFO] [stderr] | [INFO] [stderr] 676 | let man = x & 0x000FFFFFu32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x000F_FFFFu32` [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:684:19 [INFO] [stderr] | [INFO] [stderr] 684 | if exp == 0x7FF00000u32 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7FF0_0000u32` [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:712:29 [INFO] [stderr] | [INFO] [stderr] 712 | let man = man | 0x00100000u32; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x0010_0000u32` [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:726:18 [INFO] [stderr] | [INFO] [stderr] 726 | if man & 0x00000200u32 != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x0000_0200u32` [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:748:68 [INFO] [stderr] | [INFO] [stderr] 748 | return unsafe { mem::transmute((half_sign << 16) | 0x7F800000u32) }; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `0x7F80_0000u32` [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:791:68 [INFO] [stderr] | [INFO] [stderr] 791 | return unsafe { mem::transmute((half_sign << 48) | 0x7FF0000000000000u64) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: consider: `0x7FF0_0000_0000_0000u64` [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: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:425:36 [INFO] [stderr] | [INFO] [stderr] 425 | (self.0 == other.0) || ((self.0 | other.0) & 0x7FFFu16 == 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::verbose_bit_mask)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:440:24 [INFO] [stderr] | [INFO] [stderr] 440 | if (self.0 | other.0) & 0x7FFFu16 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:447:24 [INFO] [stderr] | [INFO] [stderr] 447 | if (self.0 | other.0) & 0x7FFFu16 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:481:34 [INFO] [stderr] | [INFO] [stderr] 481 | (false, true) => (self.0 | other.0) & 0x7FFFu16 == 0, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:512:34 [INFO] [stderr] | [INFO] [stderr] 512 | (true, false) => (self.0 | other.0) & 0x7FFFu16 == 0, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((self.0 | other.0)).trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:522:32 [INFO] [stderr] | [INFO] [stderr] 522 | f32::from_str(src).map(|x| f16::from_f32(x)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `f16::from_f32` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:597:12 [INFO] [stderr] | [INFO] [stderr] 597 | if x & 0x7FFFFFFFu32 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `x.trailing_zeros() >= 31` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:669:12 [INFO] [stderr] | [INFO] [stderr] 669 | if x & 0x7FFFFFFFu32 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `x.trailing_zeros() >= 31` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:696:28 [INFO] [stderr] | [INFO] [stderr] 696 | let unbiased_exp = ((exp >> 20) as i64) - 1023; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(exp >> 20)` [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: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:736:12 [INFO] [stderr] | [INFO] [stderr] 736 | if i & 0x7FFFu16 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i.trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:737:29 [INFO] [stderr] | [INFO] [stderr] 737 | return unsafe { mem::transmute((i as u32) << 16) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits((i as u32) << 16)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_int_to_float)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:737:44 [INFO] [stderr] | [INFO] [stderr] 737 | return unsafe { mem::transmute((i as u32) << 16) }; [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(i)` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:740:25 [INFO] [stderr] | [INFO] [stderr] 740 | let half_sign = (i & 0x8000u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(i & 0x8000u16)` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:741:24 [INFO] [stderr] | [INFO] [stderr] 741 | let half_exp = (i & 0x7C00u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(i & 0x7C00u16)` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:742:24 [INFO] [stderr] | [INFO] [stderr] 742 | let half_man = (i & 0x03FFu16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(i & 0x03FFu16)` [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: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:748:33 [INFO] [stderr] | [INFO] [stderr] 748 | return unsafe { mem::transmute((half_sign << 16) | 0x7F800000u32) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits((half_sign << 16) | 0x7F800000u32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:768:29 [INFO] [stderr] | [INFO] [stderr] 768 | return unsafe { mem::transmute(sign | exp | man) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits(sign | exp | man)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:774:18 [INFO] [stderr] | [INFO] [stderr] 774 | unsafe { mem::transmute(sign | exp | man) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits(sign | exp | man)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/lib.rs:779:12 [INFO] [stderr] | [INFO] [stderr] 779 | if i & 0x7FFFu16 == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i.trailing_zeros() >= 15` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:780:29 [INFO] [stderr] | [INFO] [stderr] 780 | return unsafe { mem::transmute((i as u64) << 48) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits((i as u64) << 48)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:780:44 [INFO] [stderr] | [INFO] [stderr] 780 | return unsafe { mem::transmute((i as u64) << 48) }; [INFO] [stderr] | ^^^^^^^^^^ help: try: `u64::from(i)` [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 u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:783:25 [INFO] [stderr] | [INFO] [stderr] 783 | let half_sign = (i & 0x8000u16) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(i & 0x8000u16)` [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 u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:784:24 [INFO] [stderr] | [INFO] [stderr] 784 | let half_exp = (i & 0x7C00u16) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(i & 0x7C00u16)` [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 u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:785:24 [INFO] [stderr] | [INFO] [stderr] 785 | let half_man = (i & 0x03FFu16) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(i & 0x03FFu16)` [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: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:791:33 [INFO] [stderr] | [INFO] [stderr] 791 | return unsafe { mem::transmute((half_sign << 48) | 0x7FF0000000000000u64) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits((half_sign << 48) | 0x7FF0000000000000u64)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:809:23 [INFO] [stderr] | [INFO] [stderr] 809 | let exp = ((1023 - 15 - e) as u64) << 52; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(1023 - 15 - e)` [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: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:811:29 [INFO] [stderr] | [INFO] [stderr] 811 | return unsafe { mem::transmute(sign | exp | man) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits(sign | exp | man)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:817:18 [INFO] [stderr] | [INFO] [stderr] 817 | unsafe { mem::transmute(sign | exp | man) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits(sign | exp | man)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:831:5 [INFO] [stderr] | [INFO] [stderr] 831 | / pub fn from_bits_mut<'s>(bits: &'s mut [u16]) -> &'s mut [f16] { [INFO] [stderr] 832 | | let pointer = bits.as_ptr() as *mut f16; [INFO] [stderr] 833 | | let length = bits.len(); [INFO] [stderr] 834 | | unsafe { slice::from_raw_parts_mut(pointer, length) } [INFO] [stderr] 835 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:842:5 [INFO] [stderr] | [INFO] [stderr] 842 | / pub fn to_bits_mut<'s>(bits: &'s mut [f16]) -> &'s mut [u16] { [INFO] [stderr] 843 | | let pointer = bits.as_ptr() as *mut u16; [INFO] [stderr] 844 | | let length = bits.len(); [INFO] [stderr] 845 | | unsafe { slice::from_raw_parts_mut(pointer, length) } [INFO] [stderr] 846 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:851:5 [INFO] [stderr] | [INFO] [stderr] 851 | / pub fn from_bits<'s>(bits: &'s [u16]) -> &'s [f16] { [INFO] [stderr] 852 | | let pointer = bits.as_ptr() as *const f16; [INFO] [stderr] 853 | | let length = bits.len(); [INFO] [stderr] 854 | | unsafe { slice::from_raw_parts(pointer, length) } [INFO] [stderr] 855 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:860:5 [INFO] [stderr] | [INFO] [stderr] 860 | / pub fn to_bits<'s>(bits: &'s [f16]) -> &'s [u16] { [INFO] [stderr] 861 | | let pointer = bits.as_ptr() as *const u16; [INFO] [stderr] 862 | | let length = bits.len(); [INFO] [stderr] 863 | | unsafe { slice::from_raw_parts(pointer, length) } [INFO] [stderr] 864 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:1040:21 [INFO] [stderr] | [INFO] [stderr] 1040 | nan64 = mem::transmute(0x7ff0_0000_0000_0001u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits(0x7ff0_0000_0000_0001u64)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u64` to a `f64` [INFO] [stderr] --> src/lib.rs:1041:25 [INFO] [stderr] | [INFO] [stderr] 1041 | neg_nan64 = mem::transmute(0xfff0_0000_0000_0001u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f64::from_bits(0xfff0_0000_0000_0001u64)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:1042:21 [INFO] [stderr] | [INFO] [stderr] 1042 | nan32 = mem::transmute(0x7f80_0001u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits(0x7f80_0001u32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] warning: transmute from a `u32` to a `f32` [INFO] [stderr] --> src/lib.rs:1043:25 [INFO] [stderr] | [INFO] [stderr] 1043 | neg_nan32 = mem::transmute(0xff80_0001u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `f32::from_bits(0xff80_0001u32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_int_to_float [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1103:9 [INFO] [stderr] | [INFO] [stderr] 1103 | assert_eq!(f.to_f32(), 7.0f32); [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:1103:9 [INFO] [stderr] | [INFO] [stderr] 1103 | assert_eq!(f.to_f32(), 7.0f32); [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:1110:9 [INFO] [stderr] | [INFO] [stderr] 1110 | assert_eq!(f16::from_bits(0x0000_0001).to_f32(), 2.0f32.powi(-24)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1110:9 [INFO] [stderr] | [INFO] [stderr] 1110 | assert_eq!(f16::from_bits(0x0000_0001).to_f32(), 2.0f32.powi(-24)); [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:1111:9 [INFO] [stderr] | [INFO] [stderr] 1111 | assert_eq!(f16::from_bits(0x0000_0005).to_f32(), 5.0 * 2.0f32.powi(-24)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1111:9 [INFO] [stderr] | [INFO] [stderr] 1111 | assert_eq!(f16::from_bits(0x0000_0005).to_f32(), 5.0 * 2.0f32.powi(-24)); [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:1123:9 [INFO] [stderr] | [INFO] [stderr] 1123 | assert_eq!(f.to_f64(), 7.0f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1123:9 [INFO] [stderr] | [INFO] [stderr] 1123 | assert_eq!(f.to_f64(), 7.0f64); [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:1130:9 [INFO] [stderr] | [INFO] [stderr] 1130 | assert_eq!(f16::from_bits(0x0000_0001).to_f64(), 2.0f64.powi(-24)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1130:9 [INFO] [stderr] | [INFO] [stderr] 1130 | assert_eq!(f16::from_bits(0x0000_0001).to_f64(), 2.0f64.powi(-24)); [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:1131:9 [INFO] [stderr] | [INFO] [stderr] 1131 | assert_eq!(f16::from_bits(0x0000_0005).to_f64(), 5.0 * 2.0f64.powi(-24)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1131:9 [INFO] [stderr] | [INFO] [stderr] 1131 | assert_eq!(f16::from_bits(0x0000_0005).to_f64(), 5.0 * 2.0f64.powi(-24)); [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] warning: the function has a cyclomatic complexity of 43 [INFO] [stderr] --> src/lib.rs:1141:5 [INFO] [stderr] | [INFO] [stderr] 1141 | / fn test_comparisons() { [INFO] [stderr] 1142 | | let zero = f16::from_f64(0.0); [INFO] [stderr] 1143 | | let one = f16::from_f64(1.0); [INFO] [stderr] 1144 | | let neg_zero = f16::from_f64(-0.0); [INFO] [stderr] ... | [INFO] [stderr] 1190 | | assert!(!(neg_one >= one)); [INFO] [stderr] 1191 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1153:17 [INFO] [stderr] | [INFO] [stderr] 1153 | assert!(!(zero < neg_zero)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::neg_cmp_op_on_partial_ord)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1154:17 [INFO] [stderr] | [INFO] [stderr] 1154 | assert!(!(neg_zero < zero)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1157:17 [INFO] [stderr] | [INFO] [stderr] 1157 | assert!(!(zero > neg_zero)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1158:17 [INFO] [stderr] | [INFO] [stderr] 1158 | assert!(!(neg_zero > zero)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1168:17 [INFO] [stderr] | [INFO] [stderr] 1168 | assert!(!(one < neg_zero)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1170:17 [INFO] [stderr] | [INFO] [stderr] 1170 | assert!(!(one <= neg_zero)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1173:17 [INFO] [stderr] | [INFO] [stderr] 1173 | assert!(!(neg_zero > one)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1175:17 [INFO] [stderr] | [INFO] [stderr] 1175 | assert!(!(neg_zero >= one)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1183:17 [INFO] [stderr] | [INFO] [stderr] 1183 | assert!(!(one < neg_one)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1185:17 [INFO] [stderr] | [INFO] [stderr] 1185 | assert!(!(one <= neg_one)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1188:17 [INFO] [stderr] | [INFO] [stderr] 1188 | assert!(!(neg_one > one)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/lib.rs:1190:17 [INFO] [stderr] | [INFO] [stderr] 1190 | assert!(!(neg_one >= one)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] error: aborting due to 6 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `half`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "0234542fc7891ea4e29ec56c6afc9d9fe86ae16a590a2d376fc3208f4f1893b7"` [INFO] running `"docker" "rm" "-f" "0234542fc7891ea4e29ec56c6afc9d9fe86ae16a590a2d376fc3208f4f1893b7"` [INFO] [stdout] 0234542fc7891ea4e29ec56c6afc9d9fe86ae16a590a2d376fc3208f4f1893b7