[INFO] crate appro-eq 0.2.2 is already in cache [INFO] extracting crate appro-eq 0.2.2 into work/ex/clippy-test-run/sources/stable/reg/appro-eq/0.2.2 [INFO] extracting crate appro-eq 0.2.2 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/appro-eq/0.2.2 [INFO] validating manifest of appro-eq-0.2.2 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 appro-eq-0.2.2 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 appro-eq-0.2.2 [INFO] finished frobbing appro-eq-0.2.2 [INFO] frobbed toml for appro-eq-0.2.2 written to work/ex/clippy-test-run/sources/stable/reg/appro-eq/0.2.2/Cargo.toml [INFO] started frobbing appro-eq-0.2.2 [INFO] finished frobbing appro-eq-0.2.2 [INFO] frobbed toml for appro-eq-0.2.2 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/appro-eq/0.2.2/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 appro-eq-0.2.2 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/appro-eq/0.2.2:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 0b324391031a61ae76119be349966bafa6c9b34771fc690049f6484e45b9c9d9 [INFO] running `"docker" "start" "-a" "0b324391031a61ae76119be349966bafa6c9b34771fc690049f6484e45b9c9d9"` [INFO] [stderr] Checking appro-eq v0.2.2 (/opt/crater/workdir) [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:634:26 [INFO] [stderr] | [INFO] [stderr] 634 | Duration::new(0, 1000000) // 1ms (1/1000) [INFO] [stderr] | ^^^^^^^ help: consider: `1_000_000` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:634:26 [INFO] [stderr] | [INFO] [stderr] 634 | Duration::new(0, 1000000) // 1ms (1/1000) [INFO] [stderr] | ^^^^^^^ help: consider: `1_000_000` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/lib.rs:99:9 [INFO] [stderr] | [INFO] [stderr] 99 | / match self { [INFO] [stderr] 100 | | &ApproEqError::LengthMismatch => "length mismatch", [INFO] [stderr] 101 | | &ApproEqError::NonNumDifference => "non num difference", [INFO] [stderr] 102 | | &ApproEqError::DividedByZero => "divided by zero", [INFO] [stderr] 103 | | &ApproEqError::Overflow => "overflow", [INFO] [stderr] 104 | | &ApproEqError::ComponentError(ref err) => err.description() [INFO] [stderr] 105 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 99 | match *self { [INFO] [stderr] 100 | ApproEqError::LengthMismatch => "length mismatch", [INFO] [stderr] 101 | ApproEqError::NonNumDifference => "non num difference", [INFO] [stderr] 102 | ApproEqError::DividedByZero => "divided by zero", [INFO] [stderr] 103 | ApproEqError::Overflow => "overflow", [INFO] [stderr] 104 | ApproEqError::ComponentError(ref err) => err.description() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `abs_appro_eq_with_tol` which has no body [INFO] [stderr] --> src/lib.rs:163:5 [INFO] [stderr] | [INFO] [stderr] 163 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 164 | | #[cfg_attr(feature = "docs", stable(feature = "default", since = "0.1.0"))] [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::inline_fn_without_body)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/lib.rs:180:17 [INFO] [stderr] | [INFO] [stderr] 180 | / match val { [INFO] [stderr] 181 | | &Some(ref val) => val <= tol, [INFO] [stderr] 182 | | &None => true, [INFO] [stderr] 183 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 180 | match *val { [INFO] [stderr] 181 | Some(ref val) => val <= tol, [INFO] [stderr] 182 | None => true, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `abs_appro_eq` which has no body [INFO] [stderr] --> src/lib.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 195 | | #[cfg_attr(feature = "docs", stable(feature = "default", since = "0.1.0"))] [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `rel_appro_eq_with_tol` which has no body [INFO] [stderr] --> src/lib.rs:218:5 [INFO] [stderr] | [INFO] [stderr] 218 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 219 | | #[cfg_attr(feature = "docs", stable(feature = "default", since = "0.1.0"))] [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/lib.rs:235:17 [INFO] [stderr] | [INFO] [stderr] 235 | / match val { [INFO] [stderr] 236 | | &Some(ref val) => val <= tol, [INFO] [stderr] 237 | | &None => true, [INFO] [stderr] 238 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 235 | match *val { [INFO] [stderr] 236 | Some(ref val) => val <= tol, [INFO] [stderr] 237 | None => true, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `rel_appro_eq` which has no body [INFO] [stderr] --> src/lib.rs:249:5 [INFO] [stderr] | [INFO] [stderr] 249 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 250 | | #[cfg_attr(feature = "docs", stable(feature = "default", since = "0.1.0"))] [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:324:18 [INFO] [stderr] | [INFO] [stderr] 324 | Ok(Some((*self as f64 - expected).abs() as f32)) [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(*self)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:334:23 [INFO] [stderr] | [INFO] [stderr] 334 | Ok(Some(((*self as f64 - expected).abs() / expected) as f32)) [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(*self)` [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:342:25 [INFO] [stderr] | [INFO] [stderr] 342 | Ok(Some((self - *expected as f64).abs() as f32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(*expected)` [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:352:30 [INFO] [stderr] | [INFO] [stderr] 352 | Ok(Some(((self - *expected as f64).abs() / *expected as f64) as f32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(*expected)` [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:352:56 [INFO] [stderr] | [INFO] [stderr] 352 | Ok(Some(((self - *expected as f64).abs() / *expected as f64) as f32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(*expected)` [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] error: this `if` has identical blocks [INFO] [stderr] --> src/lib.rs:667:61 [INFO] [stderr] | [INFO] [stderr] 667 | } else if expected.as_secs() > std::u32::MAX as u64 { [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 668 | | Err(ApproEqError::DividedByZero) [INFO] [stderr] 669 | | } else { [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/lib.rs:665:45 [INFO] [stderr] | [INFO] [stderr] 665 | if *expected == Duration::new(0, 0) { [INFO] [stderr] | _____________________________________________^ [INFO] [stderr] 666 | | Err(ApproEqError::DividedByZero) [INFO] [stderr] 667 | | } else if expected.as_secs() > std::u32::MAX as u64 { [INFO] [stderr] | |_________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:667:40 [INFO] [stderr] | [INFO] [stderr] 667 | } else if expected.as_secs() > std::u32::MAX as u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(std::u32::MAX)` [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] error: aborting due to 5 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `appro-eq`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/lib.rs:99:9 [INFO] [stderr] | [INFO] [stderr] 99 | / match self { [INFO] [stderr] 100 | | &ApproEqError::LengthMismatch => "length mismatch", [INFO] [stderr] 101 | | &ApproEqError::NonNumDifference => "non num difference", [INFO] [stderr] 102 | | &ApproEqError::DividedByZero => "divided by zero", [INFO] [stderr] 103 | | &ApproEqError::Overflow => "overflow", [INFO] [stderr] 104 | | &ApproEqError::ComponentError(ref err) => err.description() [INFO] [stderr] 105 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 99 | match *self { [INFO] [stderr] 100 | ApproEqError::LengthMismatch => "length mismatch", [INFO] [stderr] 101 | ApproEqError::NonNumDifference => "non num difference", [INFO] [stderr] 102 | ApproEqError::DividedByZero => "divided by zero", [INFO] [stderr] 103 | ApproEqError::Overflow => "overflow", [INFO] [stderr] 104 | ApproEqError::ComponentError(ref err) => err.description() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `abs_appro_eq_with_tol` which has no body [INFO] [stderr] --> src/lib.rs:163:5 [INFO] [stderr] | [INFO] [stderr] 163 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 164 | | #[cfg_attr(feature = "docs", stable(feature = "default", since = "0.1.0"))] [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::inline_fn_without_body)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/lib.rs:180:17 [INFO] [stderr] | [INFO] [stderr] 180 | / match val { [INFO] [stderr] 181 | | &Some(ref val) => val <= tol, [INFO] [stderr] 182 | | &None => true, [INFO] [stderr] 183 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 180 | match *val { [INFO] [stderr] 181 | Some(ref val) => val <= tol, [INFO] [stderr] 182 | None => true, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `abs_appro_eq` which has no body [INFO] [stderr] --> src/lib.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 195 | | #[cfg_attr(feature = "docs", stable(feature = "default", since = "0.1.0"))] [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `rel_appro_eq_with_tol` which has no body [INFO] [stderr] --> src/lib.rs:218:5 [INFO] [stderr] | [INFO] [stderr] 218 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 219 | | #[cfg_attr(feature = "docs", stable(feature = "default", since = "0.1.0"))] [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/lib.rs:235:17 [INFO] [stderr] | [INFO] [stderr] 235 | / match val { [INFO] [stderr] 236 | | &Some(ref val) => val <= tol, [INFO] [stderr] 237 | | &None => true, [INFO] [stderr] 238 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 235 | match *val { [INFO] [stderr] 236 | Some(ref val) => val <= tol, [INFO] [stderr] 237 | None => true, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `rel_appro_eq` which has no body [INFO] [stderr] --> src/lib.rs:249:5 [INFO] [stderr] | [INFO] [stderr] 249 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 250 | | #[cfg_attr(feature = "docs", stable(feature = "default", since = "0.1.0"))] [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:324:18 [INFO] [stderr] | [INFO] [stderr] 324 | Ok(Some((*self as f64 - expected).abs() as f32)) [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(*self)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:334:23 [INFO] [stderr] | [INFO] [stderr] 334 | Ok(Some(((*self as f64 - expected).abs() / expected) as f32)) [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(*self)` [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:342:25 [INFO] [stderr] | [INFO] [stderr] 342 | Ok(Some((self - *expected as f64).abs() as f32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(*expected)` [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:352:30 [INFO] [stderr] | [INFO] [stderr] 352 | Ok(Some(((self - *expected as f64).abs() / *expected as f64) as f32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(*expected)` [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:352:56 [INFO] [stderr] | [INFO] [stderr] 352 | Ok(Some(((self - *expected as f64).abs() / *expected as f64) as f32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(*expected)` [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] error: this `if` has identical blocks [INFO] [stderr] --> src/lib.rs:667:61 [INFO] [stderr] | [INFO] [stderr] 667 | } else if expected.as_secs() > std::u32::MAX as u64 { [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 668 | | Err(ApproEqError::DividedByZero) [INFO] [stderr] 669 | | } else { [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/lib.rs:665:45 [INFO] [stderr] | [INFO] [stderr] 665 | if *expected == Duration::new(0, 0) { [INFO] [stderr] | _____________________________________________^ [INFO] [stderr] 666 | | Err(ApproEqError::DividedByZero) [INFO] [stderr] 667 | | } else if expected.as_secs() > std::u32::MAX as u64 { [INFO] [stderr] | |_________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:667:40 [INFO] [stderr] | [INFO] [stderr] 667 | } else if expected.as_secs() > std::u32::MAX as u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(std::u32::MAX)` [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] error: aborting due to 5 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `appro-eq`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "0b324391031a61ae76119be349966bafa6c9b34771fc690049f6484e45b9c9d9"` [INFO] running `"docker" "rm" "-f" "0b324391031a61ae76119be349966bafa6c9b34771fc690049f6484e45b9c9d9"` [INFO] [stdout] 0b324391031a61ae76119be349966bafa6c9b34771fc690049f6484e45b9c9d9