[INFO] cloning repository https://github.com/a-hariti/dec64-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/a-hariti/dec64-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fa-hariti%2Fdec64-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fa-hariti%2Fdec64-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e3411c43f0f57ae1682f5f94506092ee9e1dc7de [INFO] linting a-hariti/dec64-rs against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fa-hariti%2Fdec64-rs" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/a-hariti/dec64-rs [INFO] finished tweaking git repo https://github.com/a-hariti/dec64-rs [INFO] tweaked toml for git repo https://github.com/a-hariti/dec64-rs written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/a-hariti/dec64-rs on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/a-hariti/dec64-rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 746f0a42cce1d08937535cf79c28ccb21881e2625341ac1bc5ec36269559a310 [INFO] running `Command { std: "docker" "start" "-a" "746f0a42cce1d08937535cf79c28ccb21881e2625341ac1bc5ec36269559a310", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "746f0a42cce1d08937535cf79c28ccb21881e2625341ac1bc5ec36269559a310", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "746f0a42cce1d08937535cf79c28ccb21881e2625341ac1bc5ec36269559a310", kill_on_drop: false }` [INFO] [stdout] 746f0a42cce1d08937535cf79c28ccb21881e2625341ac1bc5ec36269559a310 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d1836ebc4500f7683e78078b014178df3e7ff849d5302da7b7185e815fc061cb [INFO] running `Command { std: "docker" "start" "-a" "d1836ebc4500f7683e78078b014178df3e7ff849d5302da7b7185e815fc061cb", kill_on_drop: false }` [INFO] [stderr] Checking dec64-rs v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: manual `Range::contains` implementation [INFO] [stdout] --> src/math.rs:84:16 [INFO] [stdout] | [INFO] [stdout] 84 | if c >= 0 && c < 93 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use: `(0..93).contains(&c)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:299:11 [INFO] [stdout] | [INFO] [stdout] 299 | Dec64((1 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider reducing it to: `((1 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:300:11 [INFO] [stdout] | [INFO] [stdout] 300 | Dec64((1 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider reducing it to: `((1 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:301:11 [INFO] [stdout] | [INFO] [stdout] 301 | Dec64((2 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider reducing it to: `((2 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:302:11 [INFO] [stdout] | [INFO] [stdout] 302 | Dec64((6 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider reducing it to: `((6 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:303:11 [INFO] [stdout] | [INFO] [stdout] 303 | Dec64((24 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^ help: consider reducing it to: `((24 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:304:11 [INFO] [stdout] | [INFO] [stdout] 304 | Dec64((120 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider reducing it to: `((120 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:305:11 [INFO] [stdout] | [INFO] [stdout] 305 | Dec64((720 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider reducing it to: `((720 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:306:11 [INFO] [stdout] | [INFO] [stdout] 306 | Dec64((5040 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: consider reducing it to: `((5040 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:307:11 [INFO] [stdout] | [INFO] [stdout] 307 | Dec64((40320 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: consider reducing it to: `((40320 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:308:11 [INFO] [stdout] | [INFO] [stdout] 308 | Dec64((362880 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((362880 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:309:11 [INFO] [stdout] | [INFO] [stdout] 309 | Dec64((3628800 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((3628800 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:310:11 [INFO] [stdout] | [INFO] [stdout] 310 | Dec64((39916800 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((39916800 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:311:11 [INFO] [stdout] | [INFO] [stdout] 311 | Dec64((479001600 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((479001600 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:312:11 [INFO] [stdout] | [INFO] [stdout] 312 | Dec64((6227020800 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((6227020800 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:313:11 [INFO] [stdout] | [INFO] [stdout] 313 | Dec64((87178291200 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((87178291200 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:314:11 [INFO] [stdout] | [INFO] [stdout] 314 | Dec64((1307674368000 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((1307674368000 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:315:11 [INFO] [stdout] | [INFO] [stdout] 315 | Dec64((20922789888000 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((20922789888000 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:316:11 [INFO] [stdout] | [INFO] [stdout] 316 | Dec64((355687428096000 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((355687428096000 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:317:11 [INFO] [stdout] | [INFO] [stdout] 317 | Dec64((6402373705728000 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((6402373705728000 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `default` can be confused for the standard trait method `std::default::Default::default` [INFO] [stdout] --> src/rand.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | / pub fn default() -> Self { [INFO] [stdout] 38 | | // Defaults from dec64_math.c [INFO] [stdout] 39 | | // D_E and D_2PI. [INFO] [stdout] 40 | | Self::new(0x6092A113D8D574F0, 0x165286144ADA42F1) [INFO] [stdout] 41 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::default::Default` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] = note: `#[warn(clippy::should_implement_trait)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `next` can be confused for the standard trait method `std::iter::Iterator::next` [INFO] [stdout] --> src/rand.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | / pub fn next(&mut self) -> Dec64 { [INFO] [stdout] 45 | | loop { [INFO] [stdout] 46 | | let mut s1 = self.seed_0; [INFO] [stdout] 47 | | let s0 = self.seed_1; [INFO] [stdout] ... | [INFO] [stdout] 60 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::iter::Iterator` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lib.rs:267:13 [INFO] [stdout] | [INFO] [stdout] 267 | / if let Some(s) = sum { [INFO] [stdout] 268 | | if s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] 269 | | return Self::new(s, e1); [INFO] [stdout] 270 | | } [INFO] [stdout] 271 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 267 ~ if let Some(s) = sum [INFO] [stdout] 268 ~ && s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] 269 | return Self::new(s, e1); [INFO] [stdout] 270 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:268:20 [INFO] [stdout] | [INFO] [stdout] 268 | if s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(Self::MIN_COEFF..=Self::MAX_COEFF).contains(&s)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lib.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 296 | / if let Some(s) = sum { [INFO] [stdout] 297 | | if s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] 298 | | return Self::new(s, e1); [INFO] [stdout] 299 | | } [INFO] [stdout] 300 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 296 ~ if let Some(s) = sum [INFO] [stdout] 297 ~ && s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] 298 | return Self::new(s, e1); [INFO] [stdout] 299 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:297:20 [INFO] [stdout] | [INFO] [stdout] 297 | if s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(Self::MIN_COEFF..=Self::MAX_COEFF).contains(&s)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i32` -> `i32`) [INFO] [stdout] --> src/lib.rs:357:51 [INFO] [stdout] | [INFO] [stdout] 357 | let exp_res = (e1 as i32) - (e2 as i32) - (scale_log as i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `scale_log` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:507:20 [INFO] [stdout] | [INFO] [stdout] 507 | if c > Self::MAX_COEFF / 10 || c < Self::MIN_COEFF / 10 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(Self::MIN_COEFF / 10..=Self::MAX_COEFF / 10).contains(&c)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:625:12 [INFO] [stdout] | [INFO] [stdout] 625 | if target_exp_val > 127 || target_exp_val < -128 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(-128..=127).contains(&target_exp_val)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/lib.rs:662:36 [INFO] [stdout] | [INFO] [stdout] 662 | if abs_rem > threshold { [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 663 | | if q >= 0 { [INFO] [stdout] 664 | | q += 1; [INFO] [stdout] 665 | | } else { [INFO] [stdout] ... | [INFO] [stdout] 668 | | } else if abs_rem == threshold { [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/lib.rs:668:44 [INFO] [stdout] | [INFO] [stdout] 668 | } else if abs_rem == threshold { [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 669 | | if q >= 0 { [INFO] [stdout] 670 | | q += 1; [INFO] [stdout] 671 | | } else { [INFO] [stdout] ... | [INFO] [stdout] 674 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is `Copy`) usually take `self` by value [INFO] [stdout] --> src/lib.rs:685:15 [INFO] [stdout] | [INFO] [stdout] 685 | fn to_i64(&self) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] = note: `#[warn(clippy::wrong_self_convention)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `Range::contains` implementation [INFO] [stdout] --> src/math.rs:84:16 [INFO] [stdout] | [INFO] [stdout] 84 | if c >= 0 && c < 93 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use: `(0..93).contains(&c)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lib.rs:891:17 [INFO] [stdout] | [INFO] [stdout] 891 | / if let Some(&sign_c) = chars.peek() { [INFO] [stdout] 892 | | if sign_c == '-' || sign_c == '+' { [INFO] [stdout] 893 | | exp_str.push(sign_c); [INFO] [stdout] 894 | | chars.next(); [INFO] [stdout] 895 | | } [INFO] [stdout] 896 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 891 ~ if let Some(&sign_c) = chars.peek() [INFO] [stdout] 892 ~ && (sign_c == '-' || sign_c == '+') { [INFO] [stdout] 893 | exp_str.push(sign_c); [INFO] [stdout] 894 | chars.next(); [INFO] [stdout] 895 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `for` loop [INFO] [stdout] --> src/lib.rs:897:17 [INFO] [stdout] | [INFO] [stdout] 897 | while let Some(c) = chars.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `for c in chars` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stdout] = note: `#[warn(clippy::while_let_on_iterator)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-canonical implementation of `partial_cmp` on an `Ord` type [INFO] [stdout] --> src/lib.rs:939:1 [INFO] [stdout] | [INFO] [stdout] 939 | / impl PartialOrd for Dec64 { [INFO] [stdout] 940 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 941 | | Some(self.compare(other)) [INFO] [stdout] 942 | | } [INFO] [stdout] 943 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_canonical_partial_ord_impl [INFO] [stdout] = note: `#[warn(clippy::non_canonical_partial_ord_impl)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 940 - fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 941 - Some(self.compare(other)) [INFO] [stdout] 942 - } [INFO] [stdout] 940 + fn partial_cmp(&self, other: &Self) -> Option { Some(std::cmp::Ord::cmp(self, other)) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:1034:12 [INFO] [stdout] | [INFO] [stdout] 1034 | if coeff > MAX / 10 || coeff < MIN / 10 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(MIN / 10..=MAX / 10).contains(&coeff)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:299:11 [INFO] [stdout] | [INFO] [stdout] 299 | Dec64((1 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider reducing it to: `((1 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:300:11 [INFO] [stdout] | [INFO] [stdout] 300 | Dec64((1 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider reducing it to: `((1 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:301:11 [INFO] [stdout] | [INFO] [stdout] 301 | Dec64((2 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider reducing it to: `((2 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:302:11 [INFO] [stdout] | [INFO] [stdout] 302 | Dec64((6 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider reducing it to: `((6 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:1079:11 [INFO] [stdout] | [INFO] [stdout] 1079 | while coeff > MAX || coeff < MIN { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(MIN..=MAX).contains(&coeff)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:303:11 [INFO] [stdout] | [INFO] [stdout] 303 | Dec64((24 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^ help: consider reducing it to: `((24 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:304:11 [INFO] [stdout] | [INFO] [stdout] 304 | Dec64((120 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider reducing it to: `((120 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:305:11 [INFO] [stdout] | [INFO] [stdout] 305 | Dec64((720 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider reducing it to: `((720 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/lib.rs:1083:9 [INFO] [stdout] | [INFO] [stdout] 1083 | coeff = coeff / 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `coeff /= 10` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:306:11 [INFO] [stdout] | [INFO] [stdout] 306 | Dec64((5040 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: consider reducing it to: `((5040 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:307:11 [INFO] [stdout] | [INFO] [stdout] 307 | Dec64((40320 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: consider reducing it to: `((40320 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:308:11 [INFO] [stdout] | [INFO] [stdout] 308 | Dec64((362880 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((362880 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:1198:12 [INFO] [stdout] | [INFO] [stdout] 1198 | if n >= Dec64::MIN_COEFF && n <= Dec64::MAX_COEFF { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(Dec64::MIN_COEFF..=Dec64::MAX_COEFF).contains(&n)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:309:11 [INFO] [stdout] | [INFO] [stdout] 309 | Dec64((3628800 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((3628800 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:310:11 [INFO] [stdout] | [INFO] [stdout] 310 | Dec64((39916800 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((39916800 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:311:11 [INFO] [stdout] | [INFO] [stdout] 311 | Dec64((479001600 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((479001600 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:312:11 [INFO] [stdout] | [INFO] [stdout] 312 | Dec64((6227020800 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((6227020800 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:313:11 [INFO] [stdout] | [INFO] [stdout] 313 | Dec64((87178291200 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((87178291200 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:314:11 [INFO] [stdout] | [INFO] [stdout] 314 | Dec64((1307674368000 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((1307674368000 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:315:11 [INFO] [stdout] | [INFO] [stdout] 315 | Dec64((20922789888000 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((20922789888000 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:316:11 [INFO] [stdout] | [INFO] [stdout] 316 | Dec64((355687428096000 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((355687428096000 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/math.rs:317:11 [INFO] [stdout] | [INFO] [stdout] 317 | Dec64((6402373705728000 << 8) + 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((6402373705728000 << 8))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `default` can be confused for the standard trait method `std::default::Default::default` [INFO] [stdout] --> src/rand.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | / pub fn default() -> Self { [INFO] [stdout] 38 | | // Defaults from dec64_math.c [INFO] [stdout] 39 | | // D_E and D_2PI. [INFO] [stdout] 40 | | Self::new(0x6092A113D8D574F0, 0x165286144ADA42F1) [INFO] [stdout] 41 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::default::Default` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] = note: `#[warn(clippy::should_implement_trait)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `next` can be confused for the standard trait method `std::iter::Iterator::next` [INFO] [stdout] --> src/rand.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | / pub fn next(&mut self) -> Dec64 { [INFO] [stdout] 45 | | loop { [INFO] [stdout] 46 | | let mut s1 = self.seed_0; [INFO] [stdout] 47 | | let s0 = self.seed_1; [INFO] [stdout] ... | [INFO] [stdout] 60 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::iter::Iterator` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:1391:17 [INFO] [stdout] | [INFO] [stdout] 1391 | assert!(!(two < one)); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `(two >= one)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:1392:17 [INFO] [stdout] | [INFO] [stdout] 1392 | assert!(!(one < one)); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `(one >= one)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:1400:17 [INFO] [stdout] | [INFO] [stdout] 1400 | assert!(!(v1 < v2)); [INFO] [stdout] | ^^^^^^^^^^ help: try: `(v1 >= v2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lib.rs:267:13 [INFO] [stdout] | [INFO] [stdout] 267 | / if let Some(s) = sum { [INFO] [stdout] 268 | | if s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] 269 | | return Self::new(s, e1); [INFO] [stdout] 270 | | } [INFO] [stdout] 271 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 267 ~ if let Some(s) = sum [INFO] [stdout] 268 ~ && s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] 269 | return Self::new(s, e1); [INFO] [stdout] 270 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:268:20 [INFO] [stdout] | [INFO] [stdout] 268 | if s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(Self::MIN_COEFF..=Self::MAX_COEFF).contains(&s)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lib.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 296 | / if let Some(s) = sum { [INFO] [stdout] 297 | | if s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] 298 | | return Self::new(s, e1); [INFO] [stdout] 299 | | } [INFO] [stdout] 300 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 296 ~ if let Some(s) = sum [INFO] [stdout] 297 ~ && s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] 298 | return Self::new(s, e1); [INFO] [stdout] 299 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:297:20 [INFO] [stdout] | [INFO] [stdout] 297 | if s >= Self::MIN_COEFF && s <= Self::MAX_COEFF { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(Self::MIN_COEFF..=Self::MAX_COEFF).contains(&s)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i32` -> `i32`) [INFO] [stdout] --> src/lib.rs:357:51 [INFO] [stdout] | [INFO] [stdout] 357 | let exp_res = (e1 as i32) - (e2 as i32) - (scale_log as i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `scale_log` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:507:20 [INFO] [stdout] | [INFO] [stdout] 507 | if c > Self::MAX_COEFF / 10 || c < Self::MIN_COEFF / 10 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(Self::MIN_COEFF / 10..=Self::MAX_COEFF / 10).contains(&c)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:625:12 [INFO] [stdout] | [INFO] [stdout] 625 | if target_exp_val > 127 || target_exp_val < -128 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(-128..=127).contains(&target_exp_val)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/lib.rs:662:36 [INFO] [stdout] | [INFO] [stdout] 662 | if abs_rem > threshold { [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 663 | | if q >= 0 { [INFO] [stdout] 664 | | q += 1; [INFO] [stdout] 665 | | } else { [INFO] [stdout] ... | [INFO] [stdout] 668 | | } else if abs_rem == threshold { [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/lib.rs:668:44 [INFO] [stdout] | [INFO] [stdout] 668 | } else if abs_rem == threshold { [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 669 | | if q >= 0 { [INFO] [stdout] 670 | | q += 1; [INFO] [stdout] 671 | | } else { [INFO] [stdout] ... | [INFO] [stdout] 674 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is `Copy`) usually take `self` by value [INFO] [stdout] --> src/lib.rs:685:15 [INFO] [stdout] | [INFO] [stdout] 685 | fn to_i64(&self) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] = note: `#[warn(clippy::wrong_self_convention)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lib.rs:891:17 [INFO] [stdout] | [INFO] [stdout] 891 | / if let Some(&sign_c) = chars.peek() { [INFO] [stdout] 892 | | if sign_c == '-' || sign_c == '+' { [INFO] [stdout] 893 | | exp_str.push(sign_c); [INFO] [stdout] 894 | | chars.next(); [INFO] [stdout] 895 | | } [INFO] [stdout] 896 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 891 ~ if let Some(&sign_c) = chars.peek() [INFO] [stdout] 892 ~ && (sign_c == '-' || sign_c == '+') { [INFO] [stdout] 893 | exp_str.push(sign_c); [INFO] [stdout] 894 | chars.next(); [INFO] [stdout] 895 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `for` loop [INFO] [stdout] --> src/lib.rs:897:17 [INFO] [stdout] | [INFO] [stdout] 897 | while let Some(c) = chars.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `for c in chars` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stdout] = note: `#[warn(clippy::while_let_on_iterator)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-canonical implementation of `partial_cmp` on an `Ord` type [INFO] [stdout] --> src/lib.rs:939:1 [INFO] [stdout] | [INFO] [stdout] 939 | / impl PartialOrd for Dec64 { [INFO] [stdout] 940 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 941 | | Some(self.compare(other)) [INFO] [stdout] 942 | | } [INFO] [stdout] 943 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_canonical_partial_ord_impl [INFO] [stdout] = note: `#[warn(clippy::non_canonical_partial_ord_impl)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 940 - fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 941 - Some(self.compare(other)) [INFO] [stdout] 942 - } [INFO] [stdout] 940 + fn partial_cmp(&self, other: &Self) -> Option { Some(std::cmp::Ord::cmp(self, other)) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:1034:12 [INFO] [stdout] | [INFO] [stdout] 1034 | if coeff > MAX / 10 || coeff < MIN / 10 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(MIN / 10..=MAX / 10).contains(&coeff)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:1079:11 [INFO] [stdout] | [INFO] [stdout] 1079 | while coeff > MAX || coeff < MIN { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(MIN..=MAX).contains(&coeff)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/lib.rs:1083:9 [INFO] [stdout] | [INFO] [stdout] 1083 | coeff = coeff / 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `coeff /= 10` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lib.rs:1198:12 [INFO] [stdout] | [INFO] [stdout] 1198 | if n >= Dec64::MIN_COEFF && n <= Dec64::MAX_COEFF { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(Dec64::MIN_COEFF..=Dec64::MAX_COEFF).contains(&n)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.87s [INFO] running `Command { std: "docker" "inspect" "d1836ebc4500f7683e78078b014178df3e7ff849d5302da7b7185e815fc061cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d1836ebc4500f7683e78078b014178df3e7ff849d5302da7b7185e815fc061cb", kill_on_drop: false }` [INFO] [stdout] d1836ebc4500f7683e78078b014178df3e7ff849d5302da7b7185e815fc061cb