[INFO] crate signifix 0.9.0 is already in cache [INFO] extracting crate signifix 0.9.0 into work/ex/clippy-test-run/sources/stable/reg/signifix/0.9.0 [INFO] extracting crate signifix 0.9.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/signifix/0.9.0 [INFO] validating manifest of signifix-0.9.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 signifix-0.9.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 signifix-0.9.0 [INFO] finished frobbing signifix-0.9.0 [INFO] frobbed toml for signifix-0.9.0 written to work/ex/clippy-test-run/sources/stable/reg/signifix/0.9.0/Cargo.toml [INFO] started frobbing signifix-0.9.0 [INFO] finished frobbing signifix-0.9.0 [INFO] frobbed toml for signifix-0.9.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/signifix/0.9.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 signifix-0.9.0 against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/signifix/0.9.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 -Dclippy::into_iter_on_array" "-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] 877c76dc4547535e7076c080e4355966b2bdd1cb1d5893c7aa5407899500a09b [INFO] running `"docker" "start" "-a" "877c76dc4547535e7076c080e4355966b2bdd1cb1d5893c7aa5407899500a09b"` [INFO] [stderr] Checking signifix v0.9.0 (/opt/crater/workdir) [INFO] [stderr] warning: this is an `else if` but the formatting might hide it [INFO] [stderr] --> src/metric.rs:190:55 [INFO] [stderr] | [INFO] [stderr] 190 | let sign = if self.numerator().is_negative() { "-" } else [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 191 | | if f.sign_plus() { "+" } else { "" }; [INFO] [stderr] | |____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::suspicious_else_formatting)] on by default [INFO] [stderr] = note: to remove this lint, remove the `else` or remove the new line between `else` and `if` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_else_formatting [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/metric.rs:276:12 [INFO] [stderr] | [INFO] [stderr] 276 | } else { [INFO] [stderr] | ________________________^ [INFO] [stderr] 277 | | if number.is_nan() { [INFO] [stderr] 278 | | Err(Error::Nan) [INFO] [stderr] 279 | | } else { [INFO] [stderr] 280 | | Err(Error::OutOfUpperBound(number)) [INFO] [stderr] 281 | | } [INFO] [stderr] 282 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 276 | } else if number.is_nan() { [INFO] [stderr] 277 | Err(Error::Nan) [INFO] [stderr] 278 | } else { [INFO] [stderr] 279 | Err(Error::OutOfUpperBound(number)) [INFO] [stderr] 280 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this is an `else if` but the formatting might hide it [INFO] [stderr] --> src/binary.rs:181:55 [INFO] [stderr] | [INFO] [stderr] 181 | let sign = if self.numerator().is_negative() { "-" } else [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 182 | | if f.sign_plus() { "+" } else { "" }; [INFO] [stderr] | |____________^ [INFO] [stderr] | [INFO] [stderr] = note: to remove this lint, remove the `else` or remove the new line between `else` and `if` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_else_formatting [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/binary.rs:275:13 [INFO] [stderr] | [INFO] [stderr] 275 | } else { [INFO] [stderr] | ____________________________^ [INFO] [stderr] 276 | | if number.is_nan() { [INFO] [stderr] 277 | | Err(Error::Nan) [INFO] [stderr] 278 | | } else { [INFO] [stderr] 279 | | Err(Error::OutOfUpperBound(number)) [INFO] [stderr] 280 | | } [INFO] [stderr] 281 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 275 | } else if number.is_nan() { [INFO] [stderr] 276 | Err(Error::Nan) [INFO] [stderr] 277 | } else { [INFO] [stderr] 278 | Err(Error::OutOfUpperBound(number)) [INFO] [stderr] 279 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this is an `else if` but the formatting might hide it [INFO] [stderr] --> src/metric.rs:190:55 [INFO] [stderr] | [INFO] [stderr] 190 | let sign = if self.numerator().is_negative() { "-" } else [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 191 | | if f.sign_plus() { "+" } else { "" }; [INFO] [stderr] | |____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::suspicious_else_formatting)] on by default [INFO] [stderr] = note: to remove this lint, remove the `else` or remove the new line between `else` and `if` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_else_formatting [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/metric.rs:276:12 [INFO] [stderr] | [INFO] [stderr] 276 | } else { [INFO] [stderr] | ________________________^ [INFO] [stderr] 277 | | if number.is_nan() { [INFO] [stderr] 278 | | Err(Error::Nan) [INFO] [stderr] 279 | | } else { [INFO] [stderr] 280 | | Err(Error::OutOfUpperBound(number)) [INFO] [stderr] 281 | | } [INFO] [stderr] 282 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 276 | } else if number.is_nan() { [INFO] [stderr] 277 | Err(Error::Nan) [INFO] [stderr] 278 | } else { [INFO] [stderr] 279 | Err(Error::OutOfUpperBound(number)) [INFO] [stderr] 280 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this is an `else if` but the formatting might hide it [INFO] [stderr] --> src/binary.rs:181:55 [INFO] [stderr] | [INFO] [stderr] 181 | let sign = if self.numerator().is_negative() { "-" } else [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 182 | | if f.sign_plus() { "+" } else { "" }; [INFO] [stderr] | |____________^ [INFO] [stderr] | [INFO] [stderr] = note: to remove this lint, remove the `else` or remove the new line between `else` and `if` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_else_formatting [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/binary.rs:275:13 [INFO] [stderr] | [INFO] [stderr] 275 | } else { [INFO] [stderr] | ____________________________^ [INFO] [stderr] 276 | | if number.is_nan() { [INFO] [stderr] 277 | | Err(Error::Nan) [INFO] [stderr] 278 | | } else { [INFO] [stderr] 279 | | Err(Error::OutOfUpperBound(number)) [INFO] [stderr] 280 | | } [INFO] [stderr] 281 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 275 | } else if number.is_nan() { [INFO] [stderr] 276 | Err(Error::Nan) [INFO] [stderr] 277 | } else { [INFO] [stderr] 278 | Err(Error::OutOfUpperBound(number)) [INFO] [stderr] 279 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:462:17 [INFO] [stderr] | [INFO] [stderr] 462 | fn significand(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:463:3 [INFO] [stderr] | [INFO] [stderr] 463 | self.numerator() as f64 * [1E-00, 1E-01, 1E-02, 1E-03][self.exponent()] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.numerator())` [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:465:15 [INFO] [stderr] | [INFO] [stderr] 465 | fn numerator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:468:17 [INFO] [stderr] | [INFO] [stderr] 468 | fn denominator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:471:14 [INFO] [stderr] | [INFO] [stderr] 471 | fn exponent(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:474:13 [INFO] [stderr] | [INFO] [stderr] 474 | fn integer(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:477:16 [INFO] [stderr] | [INFO] [stderr] 477 | fn fractional(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:480:11 [INFO] [stderr] | [INFO] [stderr] 480 | fn parts(&self) -> (i32, i32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:485:12 [INFO] [stderr] | [INFO] [stderr] 485 | fn prefix(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:128:21 [INFO] [stderr] | [INFO] [stderr] 128 | pub fn significand(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:133:19 [INFO] [stderr] | [INFO] [stderr] 133 | pub fn numerator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:138:21 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn denominator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:143:18 [INFO] [stderr] | [INFO] [stderr] 143 | pub fn exponent(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:148:17 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn integer(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:153:20 [INFO] [stderr] | [INFO] [stderr] 153 | pub fn fractional(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:158:15 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn parts(&self) -> (i32, i32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:164:16 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn prefix(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:169:16 [INFO] [stderr] | [INFO] [stderr] 169 | pub fn symbol(&self) -> Option<&str> { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:174:16 [INFO] [stderr] | [INFO] [stderr] 174 | pub fn factor(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:186:13 [INFO] [stderr] | [INFO] [stderr] 186 | pub fn fmt(&self, f: &mut Formatter, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting i8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:213:1 [INFO] [stderr] | [INFO] [stderr] 213 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 i16 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:213:1 [INFO] [stderr] | [INFO] [stderr] 213 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:213:1 [INFO] [stderr] | [INFO] [stderr] 213 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:214:1 [INFO] [stderr] | [INFO] [stderr] 214 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:214:1 [INFO] [stderr] | [INFO] [stderr] 214 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:214:1 [INFO] [stderr] | [INFO] [stderr] 214 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:216:1 [INFO] [stderr] | [INFO] [stderr] 216 | try_from! { f32 } [INFO] [stderr] | ----------------- in this macro invocation [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 `1u128` [INFO] [stderr] --> src/binary.rs:108:2 [INFO] [stderr] | [INFO] [stderr] 108 | (1u128 << 00) as f64, [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:117:21 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn significand(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:122:19 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn numerator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:127:21 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn denominator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:132:18 [INFO] [stderr] | [INFO] [stderr] 132 | pub fn exponent(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:137:17 [INFO] [stderr] | [INFO] [stderr] 137 | pub fn integer(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:142:20 [INFO] [stderr] | [INFO] [stderr] 142 | pub fn fractional(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:147:15 [INFO] [stderr] | [INFO] [stderr] 147 | pub fn parts(&self) -> (i32, i32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:153:16 [INFO] [stderr] | [INFO] [stderr] 153 | pub fn prefix(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:158:16 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn symbol(&self) -> Option<&str> { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:163:16 [INFO] [stderr] | [INFO] [stderr] 163 | pub fn factor(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:176:13 [INFO] [stderr] | [INFO] [stderr] 176 | pub fn fmt(&self, f: &mut Formatter, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/binary.rs:183:30 [INFO] [stderr] | [INFO] [stderr] 183 | let symbol = self.symbol().unwrap_or(" ".into()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| " ".into())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/binary.rs:183:40 [INFO] [stderr] | [INFO] [stderr] 183 | let symbol = self.symbol().unwrap_or(" ".into()); [INFO] [stderr] | ^^^^^^^^^^^ help: consider removing `.into()`: `" "` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: casting i8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:202:1 [INFO] [stderr] | [INFO] [stderr] 202 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 i16 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:202:1 [INFO] [stderr] | [INFO] [stderr] 202 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:202:1 [INFO] [stderr] | [INFO] [stderr] 202 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:203:1 [INFO] [stderr] | [INFO] [stderr] 203 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:203:1 [INFO] [stderr] | [INFO] [stderr] 203 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:203:1 [INFO] [stderr] | [INFO] [stderr] 203 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:205:1 [INFO] [stderr] | [INFO] [stderr] 205 | try_from! { f32 } [INFO] [stderr] | ----------------- in this macro invocation [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:462:17 [INFO] [stderr] | [INFO] [stderr] 462 | fn significand(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:463:3 [INFO] [stderr] | [INFO] [stderr] 463 | self.numerator() as f64 * [1E-00, 1E-01, 1E-02, 1E-03][self.exponent()] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.numerator())` [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:465:15 [INFO] [stderr] | [INFO] [stderr] 465 | fn numerator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:468:17 [INFO] [stderr] | [INFO] [stderr] 468 | fn denominator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:471:14 [INFO] [stderr] | [INFO] [stderr] 471 | fn exponent(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:474:13 [INFO] [stderr] | [INFO] [stderr] 474 | fn integer(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:477:16 [INFO] [stderr] | [INFO] [stderr] 477 | fn fractional(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:480:11 [INFO] [stderr] | [INFO] [stderr] 480 | fn parts(&self) -> (i32, i32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:485:12 [INFO] [stderr] | [INFO] [stderr] 485 | fn prefix(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:128:21 [INFO] [stderr] | [INFO] [stderr] 128 | pub fn significand(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:133:19 [INFO] [stderr] | [INFO] [stderr] 133 | pub fn numerator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:138:21 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn denominator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:143:18 [INFO] [stderr] | [INFO] [stderr] 143 | pub fn exponent(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:148:17 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn integer(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:153:20 [INFO] [stderr] | [INFO] [stderr] 153 | pub fn fractional(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:158:15 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn parts(&self) -> (i32, i32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:164:16 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn prefix(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:169:16 [INFO] [stderr] | [INFO] [stderr] 169 | pub fn symbol(&self) -> Option<&str> { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:174:16 [INFO] [stderr] | [INFO] [stderr] 174 | pub fn factor(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/metric.rs:186:13 [INFO] [stderr] | [INFO] [stderr] 186 | pub fn fmt(&self, f: &mut Formatter, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting i8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:213:1 [INFO] [stderr] | [INFO] [stderr] 213 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 i16 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:213:1 [INFO] [stderr] | [INFO] [stderr] 213 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:213:1 [INFO] [stderr] | [INFO] [stderr] 213 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:214:1 [INFO] [stderr] | [INFO] [stderr] 214 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:214:1 [INFO] [stderr] | [INFO] [stderr] 214 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:214:1 [INFO] [stderr] | [INFO] [stderr] 214 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/metric.rs:216:1 [INFO] [stderr] | [INFO] [stderr] 216 | try_from! { f32 } [INFO] [stderr] | ----------------- in this macro invocation [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: float has excessive precision [INFO] [stderr] --> src/metric.rs:371:18 [INFO] [stderr] | [INFO] [stderr] 371 | assert_eq!(fmt(999.949_999_999_999_8E+00), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `9.999_499_999_999_998E2` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/metric.rs:373:18 [INFO] [stderr] | [INFO] [stderr] 373 | assert_eq!(fmt(999.949_999_999_999_9E+00), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `9.999_499_999_999_999E2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1u128` [INFO] [stderr] --> src/binary.rs:108:2 [INFO] [stderr] | [INFO] [stderr] 108 | (1u128 << 00) as f64, [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:117:21 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn significand(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:122:19 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn numerator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:127:21 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn denominator(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:132:18 [INFO] [stderr] | [INFO] [stderr] 132 | pub fn exponent(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:137:17 [INFO] [stderr] | [INFO] [stderr] 137 | pub fn integer(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:142:20 [INFO] [stderr] | [INFO] [stderr] 142 | pub fn fractional(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:147:15 [INFO] [stderr] | [INFO] [stderr] 147 | pub fn parts(&self) -> (i32, i32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:153:16 [INFO] [stderr] | [INFO] [stderr] 153 | pub fn prefix(&self) -> usize { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:158:16 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn symbol(&self) -> Option<&str> { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:163:16 [INFO] [stderr] | [INFO] [stderr] 163 | pub fn factor(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/binary.rs:176:13 [INFO] [stderr] | [INFO] [stderr] 176 | pub fn fmt(&self, f: &mut Formatter, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/binary.rs:183:30 [INFO] [stderr] | [INFO] [stderr] 183 | let symbol = self.symbol().unwrap_or(" ".into()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| " ".into())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/binary.rs:183:40 [INFO] [stderr] | [INFO] [stderr] 183 | let symbol = self.symbol().unwrap_or(" ".into()); [INFO] [stderr] | ^^^^^^^^^^^ help: consider removing `.into()`: `" "` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: casting i8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:202:1 [INFO] [stderr] | [INFO] [stderr] 202 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 i16 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:202:1 [INFO] [stderr] | [INFO] [stderr] 202 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:202:1 [INFO] [stderr] | [INFO] [stderr] 202 | try_from! { i8, i16, i32, i64, i128, isize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:203:1 [INFO] [stderr] | [INFO] [stderr] 203 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:203:1 [INFO] [stderr] | [INFO] [stderr] 203 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:203:1 [INFO] [stderr] | [INFO] [stderr] 203 | try_from! { u8, u16, u32, u64, u128, usize } [INFO] [stderr] | -------------------------------------------- in this macro invocation [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:497:21 [INFO] [stderr] | [INFO] [stderr] 497 | Self::try_from(number as f64) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(number)` [INFO] [stderr] | [INFO] [stderr] ::: src/binary.rs:205:1 [INFO] [stderr] | [INFO] [stderr] 205 | try_from! { f32 } [INFO] [stderr] | ----------------- in this macro invocation [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: float has excessive precision [INFO] [stderr] --> src/binary.rs:367:18 [INFO] [stderr] | [INFO] [stderr] 367 | assert_eq!(fmt(1_023.499_999_999_999_94E+00), Ok("1 023 ".into())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `1.023_499_999_999_999_9E3` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/binary.rs:368:18 [INFO] [stderr] | [INFO] [stderr] 368 | assert_eq!(fmt(1_023.499_999_999_999_95E+00), Ok("1.000 Ki".into())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `1.023_5E3` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.29s [INFO] running `"docker" "inspect" "877c76dc4547535e7076c080e4355966b2bdd1cb1d5893c7aa5407899500a09b"` [INFO] running `"docker" "rm" "-f" "877c76dc4547535e7076c080e4355966b2bdd1cb1d5893c7aa5407899500a09b"` [INFO] [stdout] 877c76dc4547535e7076c080e4355966b2bdd1cb1d5893c7aa5407899500a09b