[INFO] updating cached repository AuroransSolis/fractions_and_matrices [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/AuroransSolis/fractions_and_matrices [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/AuroransSolis/fractions_and_matrices" "work/ex/clippy-test-run/sources/stable/gh/AuroransSolis/fractions_and_matrices"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/AuroransSolis/fractions_and_matrices'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/AuroransSolis/fractions_and_matrices" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AuroransSolis/fractions_and_matrices"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AuroransSolis/fractions_and_matrices'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] f256e57e5eb9146a37c9046a08253554dca4d845 [INFO] sha for GitHub repo AuroransSolis/fractions_and_matrices: f256e57e5eb9146a37c9046a08253554dca4d845 [INFO] validating manifest of AuroransSolis/fractions_and_matrices 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 AuroransSolis/fractions_and_matrices 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 AuroransSolis/fractions_and_matrices [INFO] finished frobbing AuroransSolis/fractions_and_matrices [INFO] frobbed toml for AuroransSolis/fractions_and_matrices written to work/ex/clippy-test-run/sources/stable/gh/AuroransSolis/fractions_and_matrices/Cargo.toml [INFO] started frobbing AuroransSolis/fractions_and_matrices [INFO] finished frobbing AuroransSolis/fractions_and_matrices [INFO] frobbed toml for AuroransSolis/fractions_and_matrices written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AuroransSolis/fractions_and_matrices/Cargo.toml [INFO] crate AuroransSolis/fractions_and_matrices has a lockfile. skipping [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 AuroransSolis/fractions_and_matrices against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-1/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/AuroransSolis/fractions_and_matrices:/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] c8e74e22f9b068f9d553918ebb823389c06f705892c7dedfe11216f01e5e14c9 [INFO] running `"docker" "start" "-a" "c8e74e22f9b068f9d553918ebb823389c06f705892c7dedfe11216f01e5e14c9"` [INFO] [stderr] Checking fractions_and_matrices v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/fractions/base.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | num: num, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `num` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/fractions/base.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | den: den, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `den` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/fractions/base.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | num: num, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `num` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/fractions/base.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | den: den, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `den` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/matrices/base.rs:848:24 [INFO] [stderr] | [INFO] [stderr] 848 | } else { [INFO] [stderr] | ________________________^ [INFO] [stderr] 849 | | if !self[(r, c)].is_one() { [INFO] [stderr] 850 | | return false; [INFO] [stderr] 851 | | } [INFO] [stderr] 852 | | } [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] 848 | } else if !self[(r, c)].is_one() { [INFO] [stderr] 849 | return false; [INFO] [stderr] 850 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/matrices/base.rs:950:24 [INFO] [stderr] | [INFO] [stderr] 950 | } else { [INFO] [stderr] | ________________________^ [INFO] [stderr] 951 | | if !self[(r, c)].is_one() { [INFO] [stderr] 952 | | return false; [INFO] [stderr] 953 | | } [INFO] [stderr] 954 | | } [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] 950 | } else if !self[(r, c)].is_one() { [INFO] [stderr] 951 | return false; [INFO] [stderr] 952 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/matrices/transforms.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | return a; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `a` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/matrices/base.rs:848:24 [INFO] [stderr] | [INFO] [stderr] 848 | } else { [INFO] [stderr] | ________________________^ [INFO] [stderr] 849 | | if !self[(r, c)].is_one() { [INFO] [stderr] 850 | | return false; [INFO] [stderr] 851 | | } [INFO] [stderr] 852 | | } [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] 848 | } else if !self[(r, c)].is_one() { [INFO] [stderr] 849 | return false; [INFO] [stderr] 850 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/matrices/base.rs:950:24 [INFO] [stderr] | [INFO] [stderr] 950 | } else { [INFO] [stderr] | ________________________^ [INFO] [stderr] 951 | | if !self[(r, c)].is_one() { [INFO] [stderr] 952 | | return false; [INFO] [stderr] 953 | | } [INFO] [stderr] 954 | | } [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] 950 | } else if !self[(r, c)].is_one() { [INFO] [stderr] 951 | return false; [INFO] [stderr] 952 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/matrices/transforms.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | return a; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `a` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize isize} [INFO] [stderr] | ------------------------------------------------------------- in this macro invocation [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 i8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 u16 to i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:42:36 [INFO] [stderr] | [INFO] [stderr] 42 | .map(|(i, &b)| ((b - '0' as u8) as i64) * 10i64.pow((p10 - i as i64) as u32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(b - '0' as u8)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | into_frac_float!{f32 f64} [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 looks like you are swapping `self.num` and `self.den` manually [INFO] [stderr] --> src/fractions/base.rs:78:9 [INFO] [stderr] | [INFO] [stderr] 78 | / let temp = self.num; [INFO] [stderr] 79 | | self.num = self.den; [INFO] [stderr] 80 | | self.den = temp; [INFO] [stderr] | |_______________________^ help: try: `std::mem::swap(&mut self.num, &mut self.den)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_swap)] on by default [INFO] [stderr] = note: or maybe you should use `std::mem::replace`? [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_swap [INFO] [stderr] [INFO] [stderr] warning: this looks like you are swapping `self.num` and `self.den` manually [INFO] [stderr] --> src/fractions/base.rs:97:9 [INFO] [stderr] | [INFO] [stderr] 97 | / let temp = self.num; [INFO] [stderr] 98 | | self.num = self.den; [INFO] [stderr] 99 | | self.den = temp; [INFO] [stderr] | |_______________________^ help: try: `std::mem::swap(&mut self.num, &mut self.den)` [INFO] [stderr] | [INFO] [stderr] = note: or maybe you should use `std::mem::replace`? [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_swap [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/fractions/base.rs:160:17 [INFO] [stderr] | [INFO] [stderr] 160 | let a = match self.num < 0 { [INFO] [stderr] | _________________^ [INFO] [stderr] 161 | | true => (0 - self.num) as u64, [INFO] [stderr] 162 | | false => self.num as u64 [INFO] [stderr] 163 | | }; [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if self.num < 0 { (0 - self.num) as u64 } else { self.num as u64 }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/fractions/base.rs:164:17 [INFO] [stderr] | [INFO] [stderr] 164 | let b = match self.den < 0 { [INFO] [stderr] | _________________^ [INFO] [stderr] 165 | | true => (0 - self.den) as u64, [INFO] [stderr] 166 | | false => self.den as u64 [INFO] [stderr] 167 | | }; [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if self.den < 0 { (0 - self.den) as u64 } else { self.den as u64 }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/fractions/base.rs:387:15 [INFO] [stderr] | [INFO] [stderr] 387 | let ayy = match a < 0 { [INFO] [stderr] | _______________^ [INFO] [stderr] 388 | | true => (0 - a) as u64, [INFO] [stderr] 389 | | false => a as u64 [INFO] [stderr] 390 | | }; [INFO] [stderr] | |_____^ help: consider using an if/else expression: `if a < 0 { (0 - a) as u64 } else { a as u64 }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/fractions/base.rs:391:15 [INFO] [stderr] | [INFO] [stderr] 391 | let bee = match b < 0 { [INFO] [stderr] | _______________^ [INFO] [stderr] 392 | | true => (0 - b) as u64, [INFO] [stderr] 393 | | false => b as u64 [INFO] [stderr] 394 | | }; [INFO] [stderr] | |_____^ help: consider using an if/else expression: `if b < 0 { (0 - b) as u64 } else { b as u64 }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:12:21 [INFO] [stderr] | [INFO] [stderr] 12 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Add` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:25:20 [INFO] [stderr] | [INFO] [stderr] 25 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::suspicious_arithmetic_impl)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:29:25 [INFO] [stderr] | [INFO] [stderr] 29 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:34:25 [INFO] [stderr] | [INFO] [stderr] 34 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Add` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:36:33 [INFO] [stderr] | [INFO] [stderr] 36 | let self_mult = lcm / s.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Add` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:37:30 [INFO] [stderr] | [INFO] [stderr] 37 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Add` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:39:28 [INFO] [stderr] | [INFO] [stderr] 39 | s.num += r.num * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `AddAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:52:20 [INFO] [stderr] | [INFO] [stderr] 52 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::suspicious_op_assign_impl)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `AddAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:60:33 [INFO] [stderr] | [INFO] [stderr] 60 | let self_mult = lcm / self.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `AddAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:61:30 [INFO] [stderr] | [INFO] [stderr] 61 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `AddAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:63:31 [INFO] [stderr] | [INFO] [stderr] 63 | self.num += r.num * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Sub` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:77:20 [INFO] [stderr] | [INFO] [stderr] 77 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:81:25 [INFO] [stderr] | [INFO] [stderr] 81 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:86:25 [INFO] [stderr] | [INFO] [stderr] 86 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Sub` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:88:33 [INFO] [stderr] | [INFO] [stderr] 88 | let self_mult = lcm / s.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Sub` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:89:30 [INFO] [stderr] | [INFO] [stderr] 89 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Sub` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:91:28 [INFO] [stderr] | [INFO] [stderr] 91 | s.num += r.num * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `SubAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:104:20 [INFO] [stderr] | [INFO] [stderr] 104 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `SubAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:112:33 [INFO] [stderr] | [INFO] [stderr] 112 | let self_mult = lcm / self.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `SubAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:113:30 [INFO] [stderr] | [INFO] [stderr] 113 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `SubAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:115:31 [INFO] [stderr] | [INFO] [stderr] 115 | self.num -= r.num * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Mul` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:129:20 [INFO] [stderr] | [INFO] [stderr] 129 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `MulAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:141:20 [INFO] [stderr] | [INFO] [stderr] 141 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:157:20 [INFO] [stderr] | [INFO] [stderr] 157 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:160:32 [INFO] [stderr] | [INFO] [stderr] 160 | Fraction::new(self.num * r.den, self.den * r.num) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:160:50 [INFO] [stderr] | [INFO] [stderr] 160 | Fraction::new(self.num * r.den, self.den * r.num) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `DivAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:169:20 [INFO] [stderr] | [INFO] [stderr] 169 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `RemAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:204:20 [INFO] [stderr] | [INFO] [stderr] 204 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `RemAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:212:33 [INFO] [stderr] | [INFO] [stderr] 212 | let self_mult = lcm / self.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `RemAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:213:30 [INFO] [stderr] | [INFO] [stderr] 213 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `RemAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:216:27 [INFO] [stderr] | [INFO] [stderr] 216 | self.num %= r * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | / fn index<'a>(&'a self, index: (usize, usize)) -> &'a T { [INFO] [stderr] 49 | | match self.alignment { [INFO] [stderr] 50 | | Alignment::RowAligned => &self[index.0][index.1], [INFO] [stderr] 51 | | Alignment::ColumnAligned => &self[index.1][index.0] [INFO] [stderr] 52 | | } [INFO] [stderr] 53 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [INFO] [stderr] | --------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 59 | / fn index<'a>(&'a self, index: usize) -> &'a [T] { [INFO] [stderr] 60 | | &self.matrix[(index * self.columns)..((index + 1) * self.columns)] [INFO] [stderr] 61 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [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#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | / fn index_mut<'a>(&'a mut self, index: (usize, usize)) -> &'a mut T { [INFO] [stderr] 75 | | match self.alignment { [INFO] [stderr] 76 | | Alignment::RowAligned => &mut self[index.0][index.1], [INFO] [stderr] 77 | | Alignment::ColumnAligned => &mut self[index.1][index.0] [INFO] [stderr] 78 | | } [INFO] [stderr] 79 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [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#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | / fn index_mut<'a>(&'a mut self, index: usize) -> &'a mut [T] { [INFO] [stderr] 84 | | &mut self.matrix.as_mut_slice()[(index * self.columns)..((index + 1) * self.columns)] [INFO] [stderr] 85 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [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#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | / fn index<'a>(&'a self, index: (usize, usize)) -> &'a T { [INFO] [stderr] 49 | | match self.alignment { [INFO] [stderr] 50 | | Alignment::RowAligned => &self[index.0][index.1], [INFO] [stderr] 51 | | Alignment::ColumnAligned => &self[index.1][index.0] [INFO] [stderr] 52 | | } [INFO] [stderr] 53 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [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#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/matrices/base.rs:741:9 [INFO] [stderr] | [INFO] [stderr] 741 | / match self { [INFO] [stderr] 742 | | &MatrixError::InitError(ref e) => write!(f, "Initialization error: {}", e), [INFO] [stderr] 743 | | &MatrixError::TransformError(ref e) => write!(f, "Row/Matrix operation error: {}", e), [INFO] [stderr] 744 | | &MatrixError::FunctionError(ref e) => write!(f, "Function error: {}", e) [INFO] [stderr] 745 | | } [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] 741 | match *self { [INFO] [stderr] 742 | MatrixError::InitError(ref e) => write!(f, "Initialization error: {}", e), [INFO] [stderr] 743 | MatrixError::TransformError(ref e) => write!(f, "Row/Matrix operation error: {}", e), [INFO] [stderr] 744 | MatrixError::FunctionError(ref e) => write!(f, "Function error: {}", e) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/matrices/base.rs:751:9 [INFO] [stderr] | [INFO] [stderr] 751 | / match self { [INFO] [stderr] 752 | | &MatrixError::InitError(ref e) => write!(f, "Initialization error: {}", e), [INFO] [stderr] 753 | | &MatrixError::TransformError(ref e) => write!(f, "Row/Matrix operation error: {}", e), [INFO] [stderr] 754 | | &MatrixError::FunctionError(ref e) => write!(f, "Function error: {}", e) [INFO] [stderr] 755 | | } [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] 751 | match *self { [INFO] [stderr] 752 | MatrixError::InitError(ref e) => write!(f, "Initialization error: {}", e), [INFO] [stderr] 753 | MatrixError::TransformError(ref e) => write!(f, "Row/Matrix operation error: {}", e), [INFO] [stderr] 754 | MatrixError::FunctionError(ref e) => write!(f, "Function error: {}", e) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: the loop variable `r` is used to index `nsc` [INFO] [stderr] --> src/matrices/base.rs:990:18 [INFO] [stderr] | [INFO] [stderr] 990 | for r in 0..self.num_rows() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 990 | for (r, ) in nsc.iter().enumerate().take(self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `r` is used to index `nsc` [INFO] [stderr] --> src/matrices/base.rs:1023:18 [INFO] [stderr] | [INFO] [stderr] 1023 | for r in 0..self.num_rows() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 1023 | for (r, ) in nsc.iter().enumerate().take(self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:282:15 [INFO] [stderr] | [INFO] [stderr] 282 | (self * inv).into() [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:297:15 [INFO] [stderr] | [INFO] [stderr] 297 | (self * inv).into() [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:312:23 [INFO] [stderr] | [INFO] [stderr] 312 | (self.clone() * inv).into() [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:328:23 [INFO] [stderr] | [INFO] [stderr] 328 | (self.clone() * inv).into() [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/matrices/operator_overloads.rs:403:37 [INFO] [stderr] | [INFO] [stderr] 403 | matr[(a, b)] += (self[a][b].clone() + rhs[b][a].clone().into()).into(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `(self[a][b].clone() + rhs[b][a].clone().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] error: Suspicious use of binary operator in `MulAssign` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:403:57 [INFO] [stderr] | [INFO] [stderr] 403 | matr[(a, b)] += (self[a][b].clone() + rhs[b][a].clone().into()).into(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/matrices/operator_overloads.rs:411:37 [INFO] [stderr] | [INFO] [stderr] 411 | matr[(a, b)] += (self[(a, b)].clone() + rhs[(b, a)].clone().into()).into(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `(self[(a, b)].clone() + rhs[(b, a)].clone().into())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `MulAssign` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:411:59 [INFO] [stderr] | [INFO] [stderr] 411 | matr[(a, b)] += (self[(a, b)].clone() + rhs[(b, a)].clone().into()).into(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:49:18 [INFO] [stderr] | [INFO] [stderr] 49 | for _ in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:53:22 [INFO] [stderr] | [INFO] [stderr] 53 | for b in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:63:22 [INFO] [stderr] | [INFO] [stderr] 63 | for b in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:91:18 [INFO] [stderr] | [INFO] [stderr] 91 | for _ in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:95:22 [INFO] [stderr] | [INFO] [stderr] 95 | for b in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:112:22 [INFO] [stderr] | [INFO] [stderr] 112 | for b in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/matrices/format.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | / match self { [INFO] [stderr] 17 | | &Separator::Plus => write!(f, "+"), [INFO] [stderr] 18 | | &Separator::Minus => write!(f, "-"), [INFO] [stderr] 19 | | &Separator::Times => write!(f, "*"), [INFO] [stderr] 20 | | &Separator::Divide => write!(f, "/"), [INFO] [stderr] 21 | | &Separator::Space => write!(f, " ") [INFO] [stderr] 22 | | } [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] 16 | match *self { [INFO] [stderr] 17 | Separator::Plus => write!(f, "+"), [INFO] [stderr] 18 | Separator::Minus => write!(f, "-"), [INFO] [stderr] 19 | Separator::Times => write!(f, "*"), [INFO] [stderr] 20 | Separator::Divide => write!(f, "/"), [INFO] [stderr] 21 | Separator::Space => write!(f, " ") [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:292:30 [INFO] [stderr] | [INFO] [stderr] 292 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:356:30 [INFO] [stderr] | [INFO] [stderr] 356 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:406:30 [INFO] [stderr] | [INFO] [stderr] 406 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:571:30 [INFO] [stderr] | [INFO] [stderr] 571 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:634:30 [INFO] [stderr] | [INFO] [stderr] 634 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:712:30 [INFO] [stderr] | [INFO] [stderr] 712 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:781:30 [INFO] [stderr] | [INFO] [stderr] 781 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:864:30 [INFO] [stderr] | [INFO] [stderr] 864 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:934:30 [INFO] [stderr] | [INFO] [stderr] 934 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1012:30 [INFO] [stderr] | [INFO] [stderr] 1012 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1075:30 [INFO] [stderr] | [INFO] [stderr] 1075 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1153:30 [INFO] [stderr] | [INFO] [stderr] 1153 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1225:30 [INFO] [stderr] | [INFO] [stderr] 1225 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1307:30 [INFO] [stderr] | [INFO] [stderr] 1307 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1379:30 [INFO] [stderr] | [INFO] [stderr] 1379 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize isize} [INFO] [stderr] | ------------------------------------------------------------- in this macro invocation [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 i8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 u16 to i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | num: num as i64, [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(num)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | integer_into_frac!{u8 i8 u16 i16 u32 i32 u64 i64 usize 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 i64 may become silently lossy if types change [INFO] [stderr] --> src/fractions/macros.rs:42:36 [INFO] [stderr] | [INFO] [stderr] 42 | .map(|(i, &b)| ((b - '0' as u8) as i64) * 10i64.pow((p10 - i as i64) as u32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(b - '0' as u8)` [INFO] [stderr] | [INFO] [stderr] ::: src/fractions/base.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | into_frac_float!{f32 f64} [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 looks like you are swapping `self.num` and `self.den` manually [INFO] [stderr] --> src/fractions/base.rs:78:9 [INFO] [stderr] | [INFO] [stderr] 78 | / let temp = self.num; [INFO] [stderr] 79 | | self.num = self.den; [INFO] [stderr] 80 | | self.den = temp; [INFO] [stderr] | |_______________________^ help: try: `std::mem::swap(&mut self.num, &mut self.den)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_swap)] on by default [INFO] [stderr] = note: or maybe you should use `std::mem::replace`? [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_swap [INFO] [stderr] [INFO] [stderr] warning: this looks like you are swapping `self.num` and `self.den` manually [INFO] [stderr] --> src/fractions/base.rs:97:9 [INFO] [stderr] | [INFO] [stderr] 97 | / let temp = self.num; [INFO] [stderr] 98 | | self.num = self.den; [INFO] [stderr] 99 | | self.den = temp; [INFO] [stderr] | |_______________________^ help: try: `std::mem::swap(&mut self.num, &mut self.den)` [INFO] [stderr] | [INFO] [stderr] = note: or maybe you should use `std::mem::replace`? [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_swap [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/fractions/base.rs:160:17 [INFO] [stderr] | [INFO] [stderr] 160 | let a = match self.num < 0 { [INFO] [stderr] | _________________^ [INFO] [stderr] 161 | | true => (0 - self.num) as u64, [INFO] [stderr] 162 | | false => self.num as u64 [INFO] [stderr] 163 | | }; [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if self.num < 0 { (0 - self.num) as u64 } else { self.num as u64 }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/fractions/base.rs:164:17 [INFO] [stderr] | [INFO] [stderr] 164 | let b = match self.den < 0 { [INFO] [stderr] | _________________^ [INFO] [stderr] 165 | | true => (0 - self.den) as u64, [INFO] [stderr] 166 | | false => self.den as u64 [INFO] [stderr] 167 | | }; [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if self.den < 0 { (0 - self.den) as u64 } else { self.den as u64 }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/fractions/base.rs:387:15 [INFO] [stderr] | [INFO] [stderr] 387 | let ayy = match a < 0 { [INFO] [stderr] | _______________^ [INFO] [stderr] 388 | | true => (0 - a) as u64, [INFO] [stderr] 389 | | false => a as u64 [INFO] [stderr] 390 | | }; [INFO] [stderr] | |_____^ help: consider using an if/else expression: `if a < 0 { (0 - a) as u64 } else { a as u64 }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/fractions/base.rs:391:15 [INFO] [stderr] | [INFO] [stderr] 391 | let bee = match b < 0 { [INFO] [stderr] | _______________^ [INFO] [stderr] 392 | | true => (0 - b) as u64, [INFO] [stderr] 393 | | false => b as u64 [INFO] [stderr] 394 | | }; [INFO] [stderr] | |_____^ help: consider using an if/else expression: `if b < 0 { (0 - b) as u64 } else { b as u64 }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:12:21 [INFO] [stderr] | [INFO] [stderr] 12 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Add` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:25:20 [INFO] [stderr] | [INFO] [stderr] 25 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::suspicious_arithmetic_impl)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:29:25 [INFO] [stderr] | [INFO] [stderr] 29 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:34:25 [INFO] [stderr] | [INFO] [stderr] 34 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Add` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:36:33 [INFO] [stderr] | [INFO] [stderr] 36 | let self_mult = lcm / s.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Add` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:37:30 [INFO] [stderr] | [INFO] [stderr] 37 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Add` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:39:28 [INFO] [stderr] | [INFO] [stderr] 39 | s.num += r.num * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `AddAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:52:20 [INFO] [stderr] | [INFO] [stderr] 52 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::suspicious_op_assign_impl)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `AddAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:60:33 [INFO] [stderr] | [INFO] [stderr] 60 | let self_mult = lcm / self.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `AddAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:61:30 [INFO] [stderr] | [INFO] [stderr] 61 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `AddAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:63:31 [INFO] [stderr] | [INFO] [stderr] 63 | self.num += r.num * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Sub` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:77:20 [INFO] [stderr] | [INFO] [stderr] 77 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:81:25 [INFO] [stderr] | [INFO] [stderr] 81 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/fractions/operator_overloads.rs:86:25 [INFO] [stderr] | [INFO] [stderr] 86 | let mut s = self.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Sub` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:88:33 [INFO] [stderr] | [INFO] [stderr] 88 | let self_mult = lcm / s.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Sub` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:89:30 [INFO] [stderr] | [INFO] [stderr] 89 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Sub` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:91:28 [INFO] [stderr] | [INFO] [stderr] 91 | s.num += r.num * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `SubAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:104:20 [INFO] [stderr] | [INFO] [stderr] 104 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `SubAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:112:33 [INFO] [stderr] | [INFO] [stderr] 112 | let self_mult = lcm / self.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `SubAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:113:30 [INFO] [stderr] | [INFO] [stderr] 113 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `SubAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:115:31 [INFO] [stderr] | [INFO] [stderr] 115 | self.num -= r.num * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Mul` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:129:20 [INFO] [stderr] | [INFO] [stderr] 129 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `MulAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:141:20 [INFO] [stderr] | [INFO] [stderr] 141 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:157:20 [INFO] [stderr] | [INFO] [stderr] 157 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:160:32 [INFO] [stderr] | [INFO] [stderr] 160 | Fraction::new(self.num * r.den, self.den * r.num) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:160:50 [INFO] [stderr] | [INFO] [stderr] 160 | Fraction::new(self.num * r.den, self.den * r.num) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `DivAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:169:20 [INFO] [stderr] | [INFO] [stderr] 169 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `RemAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:204:20 [INFO] [stderr] | [INFO] [stderr] 204 | if self.ud || r.ud { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `RemAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:212:33 [INFO] [stderr] | [INFO] [stderr] 212 | let self_mult = lcm / self.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `RemAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:213:30 [INFO] [stderr] | [INFO] [stderr] 213 | let r_mult = lcm / r.den; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `RemAssign` impl [INFO] [stderr] --> src/fractions/operator_overloads.rs:216:27 [INFO] [stderr] | [INFO] [stderr] 216 | self.num %= r * r_mult; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | / fn index<'a>(&'a self, index: (usize, usize)) -> &'a T { [INFO] [stderr] 49 | | match self.alignment { [INFO] [stderr] 50 | | Alignment::RowAligned => &self[index.0][index.1], [INFO] [stderr] 51 | | Alignment::ColumnAligned => &self[index.1][index.0] [INFO] [stderr] 52 | | } [INFO] [stderr] 53 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [INFO] [stderr] | --------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 59 | / fn index<'a>(&'a self, index: usize) -> &'a [T] { [INFO] [stderr] 60 | | &self.matrix[(index * self.columns)..((index + 1) * self.columns)] [INFO] [stderr] 61 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [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#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | / fn index_mut<'a>(&'a mut self, index: (usize, usize)) -> &'a mut T { [INFO] [stderr] 75 | | match self.alignment { [INFO] [stderr] 76 | | Alignment::RowAligned => &mut self[index.0][index.1], [INFO] [stderr] 77 | | Alignment::ColumnAligned => &mut self[index.1][index.0] [INFO] [stderr] 78 | | } [INFO] [stderr] 79 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [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#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | / fn index_mut<'a>(&'a mut self, index: usize) -> &'a mut [T] { [INFO] [stderr] 84 | | &mut self.matrix.as_mut_slice()[(index * self.columns)..((index + 1) * self.columns)] [INFO] [stderr] 85 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [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#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/matrices/base.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | / fn index<'a>(&'a self, index: (usize, usize)) -> &'a T { [INFO] [stderr] 49 | | match self.alignment { [INFO] [stderr] 50 | | Alignment::RowAligned => &self[index.0][index.1], [INFO] [stderr] 51 | | Alignment::ColumnAligned => &self[index.1][index.0] [INFO] [stderr] 52 | | } [INFO] [stderr] 53 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 96 | matrix_index_methods!{AugmentedMatrix Matrix} [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#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/matrices/base.rs:741:9 [INFO] [stderr] | [INFO] [stderr] 741 | / match self { [INFO] [stderr] 742 | | &MatrixError::InitError(ref e) => write!(f, "Initialization error: {}", e), [INFO] [stderr] 743 | | &MatrixError::TransformError(ref e) => write!(f, "Row/Matrix operation error: {}", e), [INFO] [stderr] 744 | | &MatrixError::FunctionError(ref e) => write!(f, "Function error: {}", e) [INFO] [stderr] 745 | | } [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] 741 | match *self { [INFO] [stderr] 742 | MatrixError::InitError(ref e) => write!(f, "Initialization error: {}", e), [INFO] [stderr] 743 | MatrixError::TransformError(ref e) => write!(f, "Row/Matrix operation error: {}", e), [INFO] [stderr] 744 | MatrixError::FunctionError(ref e) => write!(f, "Function error: {}", e) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/matrices/base.rs:751:9 [INFO] [stderr] | [INFO] [stderr] 751 | / match self { [INFO] [stderr] 752 | | &MatrixError::InitError(ref e) => write!(f, "Initialization error: {}", e), [INFO] [stderr] 753 | | &MatrixError::TransformError(ref e) => write!(f, "Row/Matrix operation error: {}", e), [INFO] [stderr] 754 | | &MatrixError::FunctionError(ref e) => write!(f, "Function error: {}", e) [INFO] [stderr] 755 | | } [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] 751 | match *self { [INFO] [stderr] 752 | MatrixError::InitError(ref e) => write!(f, "Initialization error: {}", e), [INFO] [stderr] 753 | MatrixError::TransformError(ref e) => write!(f, "Row/Matrix operation error: {}", e), [INFO] [stderr] 754 | MatrixError::FunctionError(ref e) => write!(f, "Function error: {}", e) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: the loop variable `r` is used to index `nsc` [INFO] [stderr] --> src/matrices/base.rs:990:18 [INFO] [stderr] | [INFO] [stderr] 990 | for r in 0..self.num_rows() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 990 | for (r, ) in nsc.iter().enumerate().take(self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:32:22 [INFO] [stderr] | [INFO] [stderr] 32 | for c in (1..self.num_rows() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(1..=self.num_rows())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: the loop variable `r` is used to index `nsc` [INFO] [stderr] --> src/matrices/base.rs:1023:18 [INFO] [stderr] | [INFO] [stderr] 1023 | for r in 0..self.num_rows() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 1023 | for (r, ) in nsc.iter().enumerate().take(self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:107:22 [INFO] [stderr] | [INFO] [stderr] 107 | for c in (1..self.num_rows() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(1..=self.num_rows())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:282:15 [INFO] [stderr] | [INFO] [stderr] 282 | (self * inv).into() [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:297:15 [INFO] [stderr] | [INFO] [stderr] 297 | (self * inv).into() [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:795:12 [INFO] [stderr] | [INFO] [stderr] 795 | if !(location <= self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_rows()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::nonminimal_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:312:23 [INFO] [stderr] | [INFO] [stderr] 312 | (self.clone() * inv).into() [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `Div` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:328:23 [INFO] [stderr] | [INFO] [stderr] 328 | (self.clone() * inv).into() [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_arithmetic_impl [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:850:12 [INFO] [stderr] | [INFO] [stderr] 850 | if !(location <= self.num_columns()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/matrices/operator_overloads.rs:403:37 [INFO] [stderr] | [INFO] [stderr] 403 | matr[(a, b)] += (self[a][b].clone() + rhs[b][a].clone().into()).into(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `(self[a][b].clone() + rhs[b][a].clone().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] error: Suspicious use of binary operator in `MulAssign` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:403:57 [INFO] [stderr] | [INFO] [stderr] 403 | matr[(a, b)] += (self[a][b].clone() + rhs[b][a].clone().into()).into(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/matrices/operator_overloads.rs:411:37 [INFO] [stderr] | [INFO] [stderr] 411 | matr[(a, b)] += (self[(a, b)].clone() + rhs[(b, a)].clone().into()).into(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `(self[(a, b)].clone() + rhs[(b, a)].clone().into())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `MulAssign` impl [INFO] [stderr] --> src/matrices/operator_overloads.rs:411:59 [INFO] [stderr] | [INFO] [stderr] 411 | matr[(a, b)] += (self[(a, b)].clone() + rhs[(b, a)].clone().into()).into(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:1234:12 [INFO] [stderr] | [INFO] [stderr] 1234 | if !(location <= self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_rows()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:1295:12 [INFO] [stderr] | [INFO] [stderr] 1295 | if !(location <= self.num_columns()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:1365:22 [INFO] [stderr] | [INFO] [stderr] 1365 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:49:18 [INFO] [stderr] | [INFO] [stderr] 49 | for _ in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:53:22 [INFO] [stderr] | [INFO] [stderr] 53 | for b in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:63:22 [INFO] [stderr] | [INFO] [stderr] 63 | for b in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:1455:22 [INFO] [stderr] | [INFO] [stderr] 1455 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:1575:22 [INFO] [stderr] | [INFO] [stderr] 1575 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:1691:12 [INFO] [stderr] | [INFO] [stderr] 1691 | if !(location <= self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_rows()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:1706:22 [INFO] [stderr] | [INFO] [stderr] 1706 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:1750:12 [INFO] [stderr] | [INFO] [stderr] 1750 | if !(location < self.num_columns()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location >= self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:91:18 [INFO] [stderr] | [INFO] [stderr] 91 | for _ in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:95:22 [INFO] [stderr] | [INFO] [stderr] 95 | for b in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/display.rs:112:22 [INFO] [stderr] | [INFO] [stderr] 112 | for b in 0..self.num_columns() + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:2021:26 [INFO] [stderr] | [INFO] [stderr] 2021 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:2142:12 [INFO] [stderr] | [INFO] [stderr] 2142 | if !(location <= self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_rows()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:2158:26 [INFO] [stderr] | [INFO] [stderr] 2158 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:2209:12 [INFO] [stderr] | [INFO] [stderr] 2209 | if !(location <= self.num_columns()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/matrices/format.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | / match self { [INFO] [stderr] 17 | | &Separator::Plus => write!(f, "+"), [INFO] [stderr] 18 | | &Separator::Minus => write!(f, "-"), [INFO] [stderr] 19 | | &Separator::Times => write!(f, "*"), [INFO] [stderr] 20 | | &Separator::Divide => write!(f, "/"), [INFO] [stderr] 21 | | &Separator::Space => write!(f, " ") [INFO] [stderr] 22 | | } [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] 16 | match *self { [INFO] [stderr] 17 | Separator::Plus => write!(f, "+"), [INFO] [stderr] 18 | Separator::Minus => write!(f, "-"), [INFO] [stderr] 19 | Separator::Times => write!(f, "*"), [INFO] [stderr] 20 | Separator::Divide => write!(f, "/"), [INFO] [stderr] 21 | Separator::Space => write!(f, " ") [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: aborting due to 32 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `fractions_and_matrices`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:292:30 [INFO] [stderr] | [INFO] [stderr] 292 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:356:30 [INFO] [stderr] | [INFO] [stderr] 356 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:406:30 [INFO] [stderr] | [INFO] [stderr] 406 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:571:30 [INFO] [stderr] | [INFO] [stderr] 571 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:634:30 [INFO] [stderr] | [INFO] [stderr] 634 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:712:30 [INFO] [stderr] | [INFO] [stderr] 712 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:781:30 [INFO] [stderr] | [INFO] [stderr] 781 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:864:30 [INFO] [stderr] | [INFO] [stderr] 864 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:934:30 [INFO] [stderr] | [INFO] [stderr] 934 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1012:30 [INFO] [stderr] | [INFO] [stderr] 1012 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1075:30 [INFO] [stderr] | [INFO] [stderr] 1075 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1153:30 [INFO] [stderr] | [INFO] [stderr] 1153 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1225:30 [INFO] [stderr] | [INFO] [stderr] 1225 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1307:30 [INFO] [stderr] | [INFO] [stderr] 1307 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/transforms.rs:1379:30 [INFO] [stderr] | [INFO] [stderr] 1379 | for c in 0..r + 1 { [INFO] [stderr] | ^^^^^^^^ help: use: `0..=r` [INFO] [stderr] ... [INFO] [stderr] 1450 | transforms_impl!{Matrix: Matrix, AugmentedMatrix: AugmentedMatrix} [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#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:32:22 [INFO] [stderr] | [INFO] [stderr] 32 | for c in (1..self.num_rows() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(1..=self.num_rows())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:107:22 [INFO] [stderr] | [INFO] [stderr] 107 | for c in (1..self.num_rows() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(1..=self.num_rows())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:795:12 [INFO] [stderr] | [INFO] [stderr] 795 | if !(location <= self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_rows()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::nonminimal_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:850:12 [INFO] [stderr] | [INFO] [stderr] 850 | if !(location <= self.num_columns()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:1234:12 [INFO] [stderr] | [INFO] [stderr] 1234 | if !(location <= self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_rows()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:1295:12 [INFO] [stderr] | [INFO] [stderr] 1295 | if !(location <= self.num_columns()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:1365:22 [INFO] [stderr] | [INFO] [stderr] 1365 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:1455:22 [INFO] [stderr] | [INFO] [stderr] 1455 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:1575:22 [INFO] [stderr] | [INFO] [stderr] 1575 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:1691:12 [INFO] [stderr] | [INFO] [stderr] 1691 | if !(location <= self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_rows()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:1706:22 [INFO] [stderr] | [INFO] [stderr] 1706 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:1750:12 [INFO] [stderr] | [INFO] [stderr] 1750 | if !(location < self.num_columns()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location >= self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:2021:26 [INFO] [stderr] | [INFO] [stderr] 2021 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:2142:12 [INFO] [stderr] | [INFO] [stderr] 2142 | if !(location <= self.num_rows()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_rows()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/matrices/extras.rs:2158:26 [INFO] [stderr] | [INFO] [stderr] 2158 | for c in (0..self.num_columns() + 1).rev() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=self.num_columns())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/matrices/extras.rs:2209:12 [INFO] [stderr] | [INFO] [stderr] 2209 | if !(location <= self.num_columns()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `location > self.num_columns()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 29 [INFO] [stderr] --> src/lib.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | / fn index_methods_test() { [INFO] [stderr] 32 | | let mut foo: Matrix = matrix![ [INFO] [stderr] 33 | | 0 1 2 3; [INFO] [stderr] 34 | | 4 5 6 7; [INFO] [stderr] ... | [INFO] [stderr] 58 | | assert_eq!(foo[(3, 0)], 12); [INFO] [stderr] 59 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | let mut foo: Matrix = matrix![ [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::blacklisted_name)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | let foo = matrix![ [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `bar` [INFO] [stderr] --> src/lib.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | let bar = matrix![ [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | let foo: Matrix = Matrix::new((1, 3), RowAligned); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `bar` [INFO] [stderr] --> src/lib.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | let bar: Matrix = Matrix::new((1, 3), ColumnAligned); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | let foo: Matrix = Matrix::new((1, 3), RowAligned); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `bar` [INFO] [stderr] --> src/lib.rs:87:13 [INFO] [stderr] | [INFO] [stderr] 87 | let bar: Matrix = Matrix::new((1, 3), ColumnAligned); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | let foo: Matrix = Matrix::new((1, 3), RowAligned); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `bar` [INFO] [stderr] --> src/lib.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | let bar: Matrix = Matrix::new((1, 3), ColumnAligned); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:102:13 [INFO] [stderr] | [INFO] [stderr] 102 | let foo: Matrix = Matrix::new_from_vec((3, 3), vec.clone(), RowAligned).unwrap(); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:112:13 [INFO] [stderr] | [INFO] [stderr] 112 | let foo: Matrix = Matrix::new_from_vec((3, 3), tmp, ColumnAligned).unwrap(); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:120:13 [INFO] [stderr] | [INFO] [stderr] 120 | let foo = matrix![ [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `bar` [INFO] [stderr] --> src/lib.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | let bar: Matrix = Matrix::new_from_vec((3, 3), vec![1, 4, 7, 2, 5, 8, 3, 6, 9], [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:132:13 [INFO] [stderr] | [INFO] [stderr] 132 | let foo = matrix![ [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `bar` [INFO] [stderr] --> src/lib.rs:137:17 [INFO] [stderr] | [INFO] [stderr] 137 | let mut bar = foo.clone(); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:144:13 [INFO] [stderr] | [INFO] [stderr] 144 | let foo: Matrix = Matrix::new_from_vec((3, 4), [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `bar` [INFO] [stderr] --> src/lib.rs:147:17 [INFO] [stderr] | [INFO] [stderr] 147 | let mut bar = foo.clone(); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/lib.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | let foo: Matrix = Matrix::new_from_vec((4, 4), [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `bar` [INFO] [stderr] --> src/lib.rs:157:17 [INFO] [stderr] | [INFO] [stderr] 157 | let mut bar = foo.clone(); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] error: aborting due to 32 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `fractions_and_matrices`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "c8e74e22f9b068f9d553918ebb823389c06f705892c7dedfe11216f01e5e14c9"` [INFO] running `"docker" "rm" "-f" "c8e74e22f9b068f9d553918ebb823389c06f705892c7dedfe11216f01e5e14c9"` [INFO] [stdout] c8e74e22f9b068f9d553918ebb823389c06f705892c7dedfe11216f01e5e14c9