[INFO] updating cached repository gsas7q7o/rust-xp [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/gsas7q7o/rust-xp [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/gsas7q7o/rust-xp" "work/ex/clippy-test-run/sources/stable/gh/gsas7q7o/rust-xp"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/gsas7q7o/rust-xp'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/gsas7q7o/rust-xp" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/gsas7q7o/rust-xp"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/gsas7q7o/rust-xp'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 30c9aaf9335a9bd3a6cf5f1ed910e776b366639f [INFO] sha for GitHub repo gsas7q7o/rust-xp: 30c9aaf9335a9bd3a6cf5f1ed910e776b366639f [INFO] validating manifest of gsas7q7o/rust-xp 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 gsas7q7o/rust-xp 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 gsas7q7o/rust-xp [INFO] finished frobbing gsas7q7o/rust-xp [INFO] frobbed toml for gsas7q7o/rust-xp written to work/ex/clippy-test-run/sources/stable/gh/gsas7q7o/rust-xp/Cargo.toml [INFO] started frobbing gsas7q7o/rust-xp [INFO] finished frobbing gsas7q7o/rust-xp [INFO] frobbed toml for gsas7q7o/rust-xp written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/gsas7q7o/rust-xp/Cargo.toml [INFO] crate gsas7q7o/rust-xp 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 gsas7q7o/rust-xp against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-0/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/gsas7q7o/rust-xp:/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] f1a26da81b9a648b2939d4725c4907e4f7997d01f9dd7a5d4f2fe2599f3c4741 [INFO] running `"docker" "start" "-a" "f1a26da81b9a648b2939d4725c4907e4f7997d01f9dd7a5d4f2fe2599f3c4741"` [INFO] [stderr] Checking xp v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:64:13 [INFO] [stderr] | [INFO] [stderr] 64 | let d = (x[i] as UInt + BASE) - borrow - y[i] as UInt; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | let d = (x[i] as UInt + BASE) - y; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:122:12 [INFO] [stderr] | [INFO] [stderr] 122 | y: &[u8], [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:123:12 [INFO] [stderr] | [INFO] [stderr] 123 | r: &mut [u8], [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:180:25 [INFO] [stderr] | [INFO] [stderr] 180 | let mut j = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:278:13 [INFO] [stderr] | [INFO] [stderr] 278 | let r: u8 = quotient(n, &mut z, &x, base); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:291:13 [INFO] [stderr] | [INFO] [stderr] 291 | let r: u8 = quotient(n, &mut z, &x, base); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:305:17 [INFO] [stderr] | [INFO] [stderr] 305 | let mut j: usize = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:308:17 [INFO] [stderr] | [INFO] [stderr] 308 | let c: char = str_[j]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:64:13 [INFO] [stderr] | [INFO] [stderr] 64 | let d = (x[i] as UInt + BASE) - borrow - y[i] as UInt; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | let d = (x[i] as UInt + BASE) - y; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:122:12 [INFO] [stderr] | [INFO] [stderr] 122 | y: &[u8], [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:123:12 [INFO] [stderr] | [INFO] [stderr] 123 | r: &mut [u8], [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:180:25 [INFO] [stderr] | [INFO] [stderr] 180 | let mut j = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:278:13 [INFO] [stderr] | [INFO] [stderr] 278 | let r: u8 = quotient(n, &mut z, &x, base); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:291:13 [INFO] [stderr] | [INFO] [stderr] 291 | let r: u8 = quotient(n, &mut z, &x, base); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:305:17 [INFO] [stderr] | [INFO] [stderr] 305 | let mut j: usize = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/xp.rs:308:17 [INFO] [stderr] | [INFO] [stderr] 308 | let c: char = str_[j]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/xp.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | carryout [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/xp.rs:85:20 [INFO] [stderr] | [INFO] [stderr] 85 | let carryout = y as u8; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/xp.rs:100:5 [INFO] [stderr] | [INFO] [stderr] 100 | borrowout [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/xp.rs:99:21 [INFO] [stderr] | [INFO] [stderr] 99 | let borrowout = y as u8; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/xp.rs:220:5 [INFO] [stderr] | [INFO] [stderr] 220 | return 1 [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `1` [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/xp.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | carryout [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/xp.rs:85:20 [INFO] [stderr] | [INFO] [stderr] 85 | let carryout = y as u8; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/xp.rs:100:5 [INFO] [stderr] | [INFO] [stderr] 100 | borrowout [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/xp.rs:99:21 [INFO] [stderr] | [INFO] [stderr] 99 | let borrowout = y as u8; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/xp.rs:220:5 [INFO] [stderr] | [INFO] [stderr] 220 | return 1 [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `1` [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 u16 to u128 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:16:14 [INFO] [stderr] | [INFO] [stderr] 16 | u /= BASE as u128; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u128::from(BASE)` [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 u16 to u128 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:23:14 [INFO] [stderr] | [INFO] [stderr] 23 | u /= BASE as u128; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u128::from(BASE)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `j` is only used to index `z`. [INFO] [stderr] --> src/xp.rs:26:14 [INFO] [stderr] | [INFO] [stderr] 26 | for j in i..n { [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] 26 | for in z.iter_mut().take(n).skip(i) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:45:21 [INFO] [stderr] | [INFO] [stderr] 45 | let mut carry = carry as UInt; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(carry)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:48:18 [INFO] [stderr] | [INFO] [stderr] 48 | carry += x[i] as UInt + y[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:48:33 [INFO] [stderr] | [INFO] [stderr] 48 | carry += x[i] as UInt + y[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(y[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:61:22 [INFO] [stderr] | [INFO] [stderr] 61 | let mut borrow = borrow as UInt; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(borrow)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:64:18 [INFO] [stderr] | [INFO] [stderr] 64 | let d = (x[i] as UInt + BASE) - borrow - y[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:64:50 [INFO] [stderr] | [INFO] [stderr] 64 | let d = (x[i] as UInt + BASE) - borrow - y[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(y[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:76:17 [INFO] [stderr] | [INFO] [stderr] 76 | let mut y = y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:79:14 [INFO] [stderr] | [INFO] [stderr] 79 | y += x[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:90:17 [INFO] [stderr] | [INFO] [stderr] 90 | let mut y = y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:93:18 [INFO] [stderr] | [INFO] [stderr] 93 | let d = (x[i] as UInt + BASE) - y; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:111:18 [INFO] [stderr] | [INFO] [stderr] 111 | carry += x[i] as UInt * y as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:111:33 [INFO] [stderr] | [INFO] [stderr] 111 | carry += x[i] as UInt * y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `r`. [INFO] [stderr] --> src/xp.rs:138:18 [INFO] [stderr] | [INFO] [stderr] 138 | for i in 1..my { r[i] = 0; } [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] 138 | for in r.iter_mut().take(my).skip(1) { r[i] = 0; } [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `q`. [INFO] [stderr] --> src/xp.rs:142:18 [INFO] [stderr] | [INFO] [stderr] 142 | for i in 0..nx { q[i] = 0; } [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] 142 | for in q.iter_mut().take(nx) { q[i] = 0; } [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:145:18 [INFO] [stderr] | [INFO] [stderr] 145 | for i in 0..n { r[i] = x[i]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `r[..n].clone_from_slice(&x[..n])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `r`. [INFO] [stderr] --> src/xp.rs:148:18 [INFO] [stderr] | [INFO] [stderr] 148 | for i in n..my { r[i] = 0; } [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] 148 | for in r.iter_mut().take(my).skip(n) { r[i] = 0; } [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:158:18 [INFO] [stderr] | [INFO] [stderr] 158 | for i in 0..n { rem[i] = x[i]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `rem[..n].clone_from_slice(&x[..n])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:168:30 [INFO] [stderr] | [INFO] [stderr] 168 | let y2 = y[m - 1] as u64 * BASE as u64 + y[m - 2] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u64::from(y[m - 1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:168:48 [INFO] [stderr] | [INFO] [stderr] 168 | let y2 = y[m - 1] as u64 * BASE as u64 + y[m - 2] as u64; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:168:62 [INFO] [stderr] | [INFO] [stderr] 168 | let y2 = y[m - 1] as u64 * BASE as u64 + y[m - 2] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u64::from(y[m - 2])` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:169:30 [INFO] [stderr] | [INFO] [stderr] 169 | let r3 = rem[km] as u64 * (BASE as u64 * BASE as u64) + [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u64::from(rem[km])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:169:48 [INFO] [stderr] | [INFO] [stderr] 169 | let r3 = rem[km] as u64 * (BASE as u64 * BASE as u64) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:169:62 [INFO] [stderr] | [INFO] [stderr] 169 | let r3 = rem[km] as u64 * (BASE as u64 * BASE as u64) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:170:25 [INFO] [stderr] | [INFO] [stderr] 170 | rem[km - 1] as u64 * BASE as u64 + rem[km -2 ] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(rem[km - 1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:170:46 [INFO] [stderr] | [INFO] [stderr] 170 | rem[km - 1] as u64 * BASE as u64 + rem[km -2 ] as u64; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:170:60 [INFO] [stderr] | [INFO] [stderr] 170 | rem[km - 1] as u64 * BASE as u64 + rem[km -2 ] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(rem[km -2 ])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:172:30 [INFO] [stderr] | [INFO] [stderr] 172 | if qk >= BASE as u64 { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:173:30 [INFO] [stderr] | [INFO] [stderr] 173 | qk = BASE as u64 -1; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [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: an inclusive range would be more readable [INFO] [stderr] --> src/xp.rs:197:46 [INFO] [stderr] | [INFO] [stderr] 197 | let mut _remz: Vec = rem[k..(k + m + 1)].to_vec(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use: `k..=k + m` [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/xp.rs:198:42 [INFO] [stderr] | [INFO] [stderr] 198 | let _remx: Vec = rem[k..(k + m + 1)].to_vec(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use: `k..=k + m` [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: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:204:26 [INFO] [stderr] | [INFO] [stderr] 204 | for i in 0..=m { rem[k + i] = _remz[k + i]; } [INFO] [stderr] | ^^^^^ help: try replacing the loop by: `rem[k..(m + 1 + k)].clone_from_slice(&_remz[k..(m + 1 + k)])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:209:18 [INFO] [stderr] | [INFO] [stderr] 209 | for i in 0..m { r[i] = rem[i]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `r[..m].clone_from_slice(&rem[..m])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `q`. [INFO] [stderr] --> src/xp.rs:212:22 [INFO] [stderr] | [INFO] [stderr] 212 | for i in (n - m + 1)..nx { [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] 212 | for in q.iter_mut().take(nx).skip((n - m + 1)) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `r`. [INFO] [stderr] --> src/xp.rs:215:22 [INFO] [stderr] | [INFO] [stderr] 215 | for i in m..my { [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] 215 | for in r.iter_mut().take(my).skip(m) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:227:32 [INFO] [stderr] | [INFO] [stderr] 227 | carry = carry * BASE + x[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:228:25 [INFO] [stderr] | [INFO] [stderr] 228 | z[i] = (carry / y as UInt) as u8; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:229:18 [INFO] [stderr] | [INFO] [stderr] 229 | carry %= y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:239:32 [INFO] [stderr] | [INFO] [stderr] 239 | carry = carry * BASE + x[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:240:25 [INFO] [stderr] | [INFO] [stderr] 240 | x[i] = (carry / y as UInt) as u8; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:241:18 [INFO] [stderr] | [INFO] [stderr] 241 | carry %= y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 i16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:252:5 [INFO] [stderr] | [INFO] [stderr] 252 | x[i] as i16 - y[i] as i16 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:252:19 [INFO] [stderr] | [INFO] [stderr] 252 | x[i] as i16 - y[i] as i16 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i16::from(y[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:279:18 [INFO] [stderr] | [INFO] [stderr] 279 | for j in 0..n { x[j] = z[j]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `x[..n].clone_from_slice(&z[..n])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:292:18 [INFO] [stderr] | [INFO] [stderr] 292 | for j in 0..n { x[j] = z[j]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `x[..n].clone_from_slice(&z[..n])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: this looks like you are swapping elements of `str_` manually [INFO] [stderr] --> src/xp.rs:308:13 [INFO] [stderr] | [INFO] [stderr] 308 | / let c: char = str_[j]; [INFO] [stderr] 309 | | str_[j] = str_[i]; [INFO] [stderr] 310 | | str_[i] = c; [INFO] [stderr] | |_______________________^ help: try: `str_.swap(j, i)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_swap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_swap [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u128 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:16:14 [INFO] [stderr] | [INFO] [stderr] 16 | u /= BASE as u128; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u128::from(BASE)` [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 u16 to u128 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:23:14 [INFO] [stderr] | [INFO] [stderr] 23 | u /= BASE as u128; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u128::from(BASE)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `j` is only used to index `z`. [INFO] [stderr] --> src/xp.rs:26:14 [INFO] [stderr] | [INFO] [stderr] 26 | for j in i..n { [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] 26 | for in z.iter_mut().take(n).skip(i) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:45:21 [INFO] [stderr] | [INFO] [stderr] 45 | let mut carry = carry as UInt; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(carry)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:48:18 [INFO] [stderr] | [INFO] [stderr] 48 | carry += x[i] as UInt + y[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:48:33 [INFO] [stderr] | [INFO] [stderr] 48 | carry += x[i] as UInt + y[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(y[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:61:22 [INFO] [stderr] | [INFO] [stderr] 61 | let mut borrow = borrow as UInt; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(borrow)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:64:18 [INFO] [stderr] | [INFO] [stderr] 64 | let d = (x[i] as UInt + BASE) - borrow - y[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:64:50 [INFO] [stderr] | [INFO] [stderr] 64 | let d = (x[i] as UInt + BASE) - borrow - y[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(y[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:76:17 [INFO] [stderr] | [INFO] [stderr] 76 | let mut y = y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:79:14 [INFO] [stderr] | [INFO] [stderr] 79 | y += x[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:90:17 [INFO] [stderr] | [INFO] [stderr] 90 | let mut y = y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:93:18 [INFO] [stderr] | [INFO] [stderr] 93 | let d = (x[i] as UInt + BASE) - y; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:111:18 [INFO] [stderr] | [INFO] [stderr] 111 | carry += x[i] as UInt * y as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:111:33 [INFO] [stderr] | [INFO] [stderr] 111 | carry += x[i] as UInt * y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `r`. [INFO] [stderr] --> src/xp.rs:138:18 [INFO] [stderr] | [INFO] [stderr] 138 | for i in 1..my { r[i] = 0; } [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] 138 | for in r.iter_mut().take(my).skip(1) { r[i] = 0; } [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `q`. [INFO] [stderr] --> src/xp.rs:142:18 [INFO] [stderr] | [INFO] [stderr] 142 | for i in 0..nx { q[i] = 0; } [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] 142 | for in q.iter_mut().take(nx) { q[i] = 0; } [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:145:18 [INFO] [stderr] | [INFO] [stderr] 145 | for i in 0..n { r[i] = x[i]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `r[..n].clone_from_slice(&x[..n])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `r`. [INFO] [stderr] --> src/xp.rs:148:18 [INFO] [stderr] | [INFO] [stderr] 148 | for i in n..my { r[i] = 0; } [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] 148 | for in r.iter_mut().take(my).skip(n) { r[i] = 0; } [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:158:18 [INFO] [stderr] | [INFO] [stderr] 158 | for i in 0..n { rem[i] = x[i]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `rem[..n].clone_from_slice(&x[..n])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:168:30 [INFO] [stderr] | [INFO] [stderr] 168 | let y2 = y[m - 1] as u64 * BASE as u64 + y[m - 2] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u64::from(y[m - 1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:168:48 [INFO] [stderr] | [INFO] [stderr] 168 | let y2 = y[m - 1] as u64 * BASE as u64 + y[m - 2] as u64; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:168:62 [INFO] [stderr] | [INFO] [stderr] 168 | let y2 = y[m - 1] as u64 * BASE as u64 + y[m - 2] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u64::from(y[m - 2])` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:169:30 [INFO] [stderr] | [INFO] [stderr] 169 | let r3 = rem[km] as u64 * (BASE as u64 * BASE as u64) + [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u64::from(rem[km])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:169:48 [INFO] [stderr] | [INFO] [stderr] 169 | let r3 = rem[km] as u64 * (BASE as u64 * BASE as u64) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:169:62 [INFO] [stderr] | [INFO] [stderr] 169 | let r3 = rem[km] as u64 * (BASE as u64 * BASE as u64) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:170:25 [INFO] [stderr] | [INFO] [stderr] 170 | rem[km - 1] as u64 * BASE as u64 + rem[km -2 ] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(rem[km - 1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:170:46 [INFO] [stderr] | [INFO] [stderr] 170 | rem[km - 1] as u64 * BASE as u64 + rem[km -2 ] as u64; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:170:60 [INFO] [stderr] | [INFO] [stderr] 170 | rem[km - 1] as u64 * BASE as u64 + rem[km -2 ] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(rem[km -2 ])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:172:30 [INFO] [stderr] | [INFO] [stderr] 172 | if qk >= BASE as u64 { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:173:30 [INFO] [stderr] | [INFO] [stderr] 173 | qk = BASE as u64 -1; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(BASE)` [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: an inclusive range would be more readable [INFO] [stderr] --> src/xp.rs:197:46 [INFO] [stderr] | [INFO] [stderr] 197 | let mut _remz: Vec = rem[k..(k + m + 1)].to_vec(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use: `k..=k + m` [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/xp.rs:198:42 [INFO] [stderr] | [INFO] [stderr] 198 | let _remx: Vec = rem[k..(k + m + 1)].to_vec(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use: `k..=k + m` [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: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:204:26 [INFO] [stderr] | [INFO] [stderr] 204 | for i in 0..=m { rem[k + i] = _remz[k + i]; } [INFO] [stderr] | ^^^^^ help: try replacing the loop by: `rem[k..(m + 1 + k)].clone_from_slice(&_remz[k..(m + 1 + k)])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:209:18 [INFO] [stderr] | [INFO] [stderr] 209 | for i in 0..m { r[i] = rem[i]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `r[..m].clone_from_slice(&rem[..m])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `q`. [INFO] [stderr] --> src/xp.rs:212:22 [INFO] [stderr] | [INFO] [stderr] 212 | for i in (n - m + 1)..nx { [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] 212 | for in q.iter_mut().take(nx).skip((n - m + 1)) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `r`. [INFO] [stderr] --> src/xp.rs:215:22 [INFO] [stderr] | [INFO] [stderr] 215 | for i in m..my { [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] 215 | for in r.iter_mut().take(my).skip(m) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:227:32 [INFO] [stderr] | [INFO] [stderr] 227 | carry = carry * BASE + x[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:228:25 [INFO] [stderr] | [INFO] [stderr] 228 | z[i] = (carry / y as UInt) as u8; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:229:18 [INFO] [stderr] | [INFO] [stderr] 229 | carry %= y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:239:32 [INFO] [stderr] | [INFO] [stderr] 239 | carry = carry * BASE + x[i] as UInt; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:240:25 [INFO] [stderr] | [INFO] [stderr] 240 | x[i] = (carry / y as UInt) as u8; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:241:18 [INFO] [stderr] | [INFO] [stderr] 241 | carry %= y as UInt; [INFO] [stderr] | ^^^^^^^^^ help: try: `u16::from(y)` [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 i16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:252:5 [INFO] [stderr] | [INFO] [stderr] 252 | x[i] as i16 - y[i] as i16 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i16::from(x[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i16 may become silently lossy if types change [INFO] [stderr] --> src/xp.rs:252:19 [INFO] [stderr] | [INFO] [stderr] 252 | x[i] as i16 - y[i] as i16 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i16::from(y[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:279:18 [INFO] [stderr] | [INFO] [stderr] 279 | for j in 0..n { x[j] = z[j]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `x[..n].clone_from_slice(&z[..n])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/xp.rs:292:18 [INFO] [stderr] | [INFO] [stderr] 292 | for j in 0..n { x[j] = z[j]; } [INFO] [stderr] | ^^^^ help: try replacing the loop by: `x[..n].clone_from_slice(&z[..n])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: this looks like you are swapping elements of `str_` manually [INFO] [stderr] --> src/xp.rs:308:13 [INFO] [stderr] | [INFO] [stderr] 308 | / let c: char = str_[j]; [INFO] [stderr] 309 | | str_[j] = str_[i]; [INFO] [stderr] 310 | | str_[i] = c; [INFO] [stderr] | |_______________________^ help: try: `str_.swap(j, i)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_swap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_swap [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.26s [INFO] running `"docker" "inspect" "f1a26da81b9a648b2939d4725c4907e4f7997d01f9dd7a5d4f2fe2599f3c4741"` [INFO] running `"docker" "rm" "-f" "f1a26da81b9a648b2939d4725c4907e4f7997d01f9dd7a5d4f2fe2599f3c4741"` [INFO] [stdout] f1a26da81b9a648b2939d4725c4907e4f7997d01f9dd7a5d4f2fe2599f3c4741