[INFO] updating cached repository ttakamura/binary-nn-rust [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/ttakamura/binary-nn-rust [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/ttakamura/binary-nn-rust" "work/ex/clippy-test-run/sources/stable/gh/ttakamura/binary-nn-rust"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/ttakamura/binary-nn-rust'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/ttakamura/binary-nn-rust" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ttakamura/binary-nn-rust"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ttakamura/binary-nn-rust'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 79cf37b6b746e717a107bb7a460b6f9df00e383b [INFO] sha for GitHub repo ttakamura/binary-nn-rust: 79cf37b6b746e717a107bb7a460b6f9df00e383b [INFO] validating manifest of ttakamura/binary-nn-rust 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 ttakamura/binary-nn-rust 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 ttakamura/binary-nn-rust [INFO] finished frobbing ttakamura/binary-nn-rust [INFO] frobbed toml for ttakamura/binary-nn-rust written to work/ex/clippy-test-run/sources/stable/gh/ttakamura/binary-nn-rust/Cargo.toml [INFO] started frobbing ttakamura/binary-nn-rust [INFO] finished frobbing ttakamura/binary-nn-rust [INFO] frobbed toml for ttakamura/binary-nn-rust written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ttakamura/binary-nn-rust/Cargo.toml [INFO] crate ttakamura/binary-nn-rust 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 ttakamura/binary-nn-rust against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/ttakamura/binary-nn-rust:/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] b0221399b1d3f11ac3b98791da915e6c017127a15942a1bd9af08a17a4553bd8 [INFO] running `"docker" "start" "-a" "b0221399b1d3f11ac3b98791da915e6c017127a15942a1bd9af08a17a4553bd8"` [INFO] [stderr] Checking serde v0.9.12 [INFO] [stderr] Compiling syn v0.11.9 [INFO] [stderr] Compiling serde_codegen_internals v0.14.2 [INFO] [stderr] Compiling serde_derive v0.9.12 [INFO] [stderr] Checking bincode v1.0.0-alpha6 [INFO] [stderr] Checking binary_nn v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/backend/bitvec.rs:19:7 [INFO] [stderr] | [INFO] [stderr] 19 | nbits: nbits, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `nbits` [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/backend/bitmatrix.rs:20:7 [INFO] [stderr] | [INFO] [stderr] 20 | nbits: nbits, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `nbits` [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/backend/bititer.rs:115:7 [INFO] [stderr] | [INFO] [stderr] 115 | op: op, [INFO] [stderr] | ^^^^^^ help: replace it with: `op` [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/backend/bititer.rs:116:7 [INFO] [stderr] | [INFO] [stderr] 116 | left: left, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `left` [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/backend/bititer.rs:117:7 [INFO] [stderr] | [INFO] [stderr] 117 | right: right, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `right` [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/backend/bititer.rs:160:7 [INFO] [stderr] | [INFO] [stderr] 160 | shape: shape, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `shape` [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/layer/batch_norm.rs:38:7 [INFO] [stderr] | [INFO] [stderr] 38 | avg_mean: avg_mean, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `avg_mean` [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/layer/batch_norm.rs:39:7 [INFO] [stderr] | [INFO] [stderr] 39 | avg_var: avg_var, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `avg_var` [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/layer/batch_norm.rs:40:7 [INFO] [stderr] | [INFO] [stderr] 40 | beta: beta, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `beta` [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/layer/batch_norm.rs:41:7 [INFO] [stderr] | [INFO] [stderr] 41 | gamma: gamma, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `gamma` [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/layer/batch_norm.rs:42:7 [INFO] [stderr] | [INFO] [stderr] 42 | threshold: threshold, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `threshold` [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/layer/linear.rs:26:32 [INFO] [stderr] | [INFO] [stderr] 26 | return BinaryLinearLayer { weight: weight }; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `weight` [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/backend/bitvec.rs:19:7 [INFO] [stderr] | [INFO] [stderr] 19 | nbits: nbits, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `nbits` [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/backend/bitmatrix.rs:20:7 [INFO] [stderr] | [INFO] [stderr] 20 | nbits: nbits, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `nbits` [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/backend/bititer.rs:115:7 [INFO] [stderr] | [INFO] [stderr] 115 | op: op, [INFO] [stderr] | ^^^^^^ help: replace it with: `op` [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/backend/bititer.rs:116:7 [INFO] [stderr] | [INFO] [stderr] 116 | left: left, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `left` [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/backend/bititer.rs:117:7 [INFO] [stderr] | [INFO] [stderr] 117 | right: right, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `right` [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/backend/bititer.rs:160:7 [INFO] [stderr] | [INFO] [stderr] 160 | shape: shape, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `shape` [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/layer/batch_norm.rs:38:7 [INFO] [stderr] | [INFO] [stderr] 38 | avg_mean: avg_mean, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `avg_mean` [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/layer/batch_norm.rs:39:7 [INFO] [stderr] | [INFO] [stderr] 39 | avg_var: avg_var, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `avg_var` [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/layer/batch_norm.rs:40:7 [INFO] [stderr] | [INFO] [stderr] 40 | beta: beta, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `beta` [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/layer/batch_norm.rs:41:7 [INFO] [stderr] | [INFO] [stderr] 41 | gamma: gamma, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `gamma` [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/layer/batch_norm.rs:42:7 [INFO] [stderr] | [INFO] [stderr] 42 | threshold: threshold, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `threshold` [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/layer/linear.rs:26:32 [INFO] [stderr] | [INFO] [stderr] 26 | return BinaryLinearLayer { weight: weight }; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `weight` [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: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | / return BitVec { [INFO] [stderr] 18 | | storage: vec, [INFO] [stderr] 19 | | nbits: nbits, [INFO] [stderr] 20 | | }; [INFO] [stderr] | |______^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 17 | BitVec { [INFO] [stderr] 18 | storage: vec, [INFO] [stderr] 19 | nbits: nbits, [INFO] [stderr] 20 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | return (w, b); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(w, b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | return BitVec::new(vec, nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitVec::new(vec, nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:65:5 [INFO] [stderr] | [INFO] [stderr] 65 | return BitVec::new(vec, nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitVec::new(vec, nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | return (ones * 2) - (self.len() as i32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(ones * 2) - (self.len() as i32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:82:5 [INFO] [stderr] | [INFO] [stderr] 82 | return BitIter::new(self.as_slice().into_iter(), self.nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIter::new(self.as_slice().into_iter(), self.nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | return total; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `total` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | return BitVec::block_num_of(self.nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitVec::block_num_of(self.nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:106:5 [INFO] [stderr] | [INFO] [stderr] 106 | return ncol / Bitpack32::limit_index() + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ncol / Bitpack32::limit_index() + 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:61:5 [INFO] [stderr] | [INFO] [stderr] 61 | return v.concat(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `v.concat()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | return Bitpack32 { storage: val }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Bitpack32 { storage: val }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:107:5 [INFO] [stderr] | [INFO] [stderr] 107 | return bit_to_bool(self.storage, index); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bit_to_bool(self.storage, index)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:151:3 [INFO] [stderr] | [INFO] [stderr] 151 | return tmp; [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `tmp` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | / return BitMatrix2 { [INFO] [stderr] 19 | | storage: vec, [INFO] [stderr] 20 | | nbits: nbits, [INFO] [stderr] 21 | | }; [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 18 | BitMatrix2 { [INFO] [stderr] 19 | storage: vec, [INFO] [stderr] 20 | nbits: nbits, [INFO] [stderr] 21 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | return (w, b); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(w, b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | return nrow * self.block_per_row(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `nrow * self.block_per_row()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | return BitMatrix2::new(vec, nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitMatrix2::new(vec, nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | return BitIter::new(slice.into_iter(), ncol); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIter::new(slice.into_iter(), ncol)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:89:5 [INFO] [stderr] | [INFO] [stderr] 89 | return col_vec; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `col_vec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:100:5 [INFO] [stderr] | [INFO] [stderr] 100 | return BitIter::new(self.as_slice().into_iter(), self.nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIter::new(self.as_slice().into_iter(), self.nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:118:5 [INFO] [stderr] | [INFO] [stderr] 118 | return results; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `results` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:124:5 [INFO] [stderr] | [INFO] [stderr] 124 | return (0..nrow).map(|i| self.row_vec(i).dot(&other)).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(0..nrow).map(|i| self.row_vec(i).dot(&other)).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:130:5 [INFO] [stderr] | [INFO] [stderr] 130 | return BitMatrix2::block_per_row_of(ncol); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitMatrix2::block_per_row_of(ncol)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | return ncol / Bitpack32::limit_index() + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ncol / Bitpack32::limit_index() + 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix_trait.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | return self.block(w).get(b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.block(w).get(b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix_trait.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | return self.mut_block(w).set_true(b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.mut_block(w).set_true(b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix_trait.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | return self.mut_block(w).set_false(b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.mut_block(w).set_false(b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bititer.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | return BitIterZip::new(op, self.clone(), other.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIterZip::new(op, self.clone(), other.clone())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bititer.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | return BitIterZip::new(op, self.clone(), other.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIterZip::new(op, self.clone(), other.clone())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:17:3 [INFO] [stderr] | [INFO] [stderr] 17 | return vec; [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `vec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:26:3 [INFO] [stderr] | [INFO] [stderr] 26 | return vec; [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `vec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:31:3 [INFO] [stderr] | [INFO] [stderr] 31 | return load_as_bitvec(&f32_vec, 0, nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `load_as_bitvec(&f32_vec, 0, nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:44:3 [INFO] [stderr] | [INFO] [stderr] 44 | return bit_mat; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `bit_mat` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:53:3 [INFO] [stderr] | [INFO] [stderr] 53 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:66:3 [INFO] [stderr] | [INFO] [stderr] 66 | return buffer; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `buffer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:81:3 [INFO] [stderr] | [INFO] [stderr] 81 | return buffer; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `buffer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:89:3 [INFO] [stderr] | [INFO] [stderr] 89 | return bit_vec; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `bit_vec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:110:3 [INFO] [stderr] | [INFO] [stderr] 110 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | return bincode::serialize(&self, bincode::Infinite).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bincode::serialize(&self, bincode::Infinite).unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | return bincode::deserialize(&vec[..]).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bincode::deserialize(&vec[..]).unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | / return BatchNormLayer { [INFO] [stderr] 38 | | avg_mean: avg_mean, [INFO] [stderr] 39 | | avg_var: avg_var, [INFO] [stderr] 40 | | beta: beta, [INFO] [stderr] 41 | | gamma: gamma, [INFO] [stderr] 42 | | threshold: threshold, [INFO] [stderr] 43 | | }; [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 37 | BatchNormLayer { [INFO] [stderr] 38 | avg_mean: avg_mean, [INFO] [stderr] 39 | avg_var: avg_var, [INFO] [stderr] 40 | beta: beta, [INFO] [stderr] 41 | gamma: gamma, [INFO] [stderr] 42 | threshold: threshold, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | return BatchNormLayer::new(avg_mean, avg_var, beta, gamma); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BatchNormLayer::new(avg_mean, avg_var, beta, gamma)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | return self.threshold.len(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.threshold.len()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | return (gamma * x_hat) + beta; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(gamma * x_hat) + beta` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | return bincode::serialize(&self, bincode::Infinite).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bincode::serialize(&self, bincode::Infinite).unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | return bincode::deserialize(&vec[..]).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bincode::deserialize(&vec[..]).unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | return BinaryLinearLayer { weight: weight }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BinaryLinearLayer { weight: weight }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | return z; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `z` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | return self.weight.dot_vec(x); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.weight.dot_vec(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | / return match bincode::deserialize_from(&mut file, bincode::Infinite) { [INFO] [stderr] 29 | | Ok(net) => net, [INFO] [stderr] 30 | | Err(why) => { [INFO] [stderr] 31 | | panic!("Couldn't deserialize {}, {}", [INFO] [stderr] ... | [INFO] [stderr] 34 | | } [INFO] [stderr] 35 | | }; [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 28 | match bincode::deserialize_from(&mut file, bincode::Infinite) { [INFO] [stderr] 29 | Ok(net) => net, [INFO] [stderr] 30 | Err(why) => { [INFO] [stderr] 31 | panic!("Couldn't deserialize {}, {}", [INFO] [stderr] 32 | path, [INFO] [stderr] 33 | Error::description(&why)) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | / return match bincode::deserialize(data) { [INFO] [stderr] 40 | | Ok(net) => net, [INFO] [stderr] 41 | | Err(why) => panic!("Couldn't deserialize {}", Error::description(&why)), [INFO] [stderr] 42 | | }; [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 39 | match bincode::deserialize(data) { [INFO] [stderr] 40 | Ok(net) => net, [INFO] [stderr] 41 | Err(why) => panic!("Couldn't deserialize {}", Error::description(&why)), [INFO] [stderr] 42 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | / return BitVec { [INFO] [stderr] 18 | | storage: vec, [INFO] [stderr] 19 | | nbits: nbits, [INFO] [stderr] 20 | | }; [INFO] [stderr] | |______^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 17 | BitVec { [INFO] [stderr] 18 | storage: vec, [INFO] [stderr] 19 | nbits: nbits, [INFO] [stderr] 20 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | return (w, b); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(w, b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | return BitVec::new(vec, nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitVec::new(vec, nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:65:5 [INFO] [stderr] | [INFO] [stderr] 65 | return BitVec::new(vec, nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitVec::new(vec, nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | return (ones * 2) - (self.len() as i32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(ones * 2) - (self.len() as i32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:82:5 [INFO] [stderr] | [INFO] [stderr] 82 | return BitIter::new(self.as_slice().into_iter(), self.nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIter::new(self.as_slice().into_iter(), self.nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | return total; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `total` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | return BitVec::block_num_of(self.nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitVec::block_num_of(self.nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitvec.rs:106:5 [INFO] [stderr] | [INFO] [stderr] 106 | return ncol / Bitpack32::limit_index() + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ncol / Bitpack32::limit_index() + 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:61:5 [INFO] [stderr] | [INFO] [stderr] 61 | return v.concat(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `v.concat()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | return Bitpack32 { storage: val }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Bitpack32 { storage: val }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:107:5 [INFO] [stderr] | [INFO] [stderr] 107 | return bit_to_bool(self.storage, index); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bit_to_bool(self.storage, index)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitpack.rs:151:3 [INFO] [stderr] | [INFO] [stderr] 151 | return tmp; [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `tmp` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | / return BitMatrix2 { [INFO] [stderr] 19 | | storage: vec, [INFO] [stderr] 20 | | nbits: nbits, [INFO] [stderr] 21 | | }; [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 18 | BitMatrix2 { [INFO] [stderr] 19 | storage: vec, [INFO] [stderr] 20 | nbits: nbits, [INFO] [stderr] 21 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | return (w, b); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(w, b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | return nrow * self.block_per_row(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `nrow * self.block_per_row()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | return BitMatrix2::new(vec, nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitMatrix2::new(vec, nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | return BitIter::new(slice.into_iter(), ncol); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIter::new(slice.into_iter(), ncol)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:89:5 [INFO] [stderr] | [INFO] [stderr] 89 | return col_vec; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `col_vec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:100:5 [INFO] [stderr] | [INFO] [stderr] 100 | return BitIter::new(self.as_slice().into_iter(), self.nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIter::new(self.as_slice().into_iter(), self.nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:118:5 [INFO] [stderr] | [INFO] [stderr] 118 | return results; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `results` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:124:5 [INFO] [stderr] | [INFO] [stderr] 124 | return (0..nrow).map(|i| self.row_vec(i).dot(&other)).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(0..nrow).map(|i| self.row_vec(i).dot(&other)).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:130:5 [INFO] [stderr] | [INFO] [stderr] 130 | return BitMatrix2::block_per_row_of(ncol); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitMatrix2::block_per_row_of(ncol)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | return ncol / Bitpack32::limit_index() + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ncol / Bitpack32::limit_index() + 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix_trait.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | return self.block(w).get(b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.block(w).get(b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix_trait.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | return self.mut_block(w).set_true(b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.mut_block(w).set_true(b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bitmatrix_trait.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | return self.mut_block(w).set_false(b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.mut_block(w).set_false(b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bititer.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | return BitIterZip::new(op, self.clone(), other.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIterZip::new(op, self.clone(), other.clone())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/backend/bititer.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | return BitIterZip::new(op, self.clone(), other.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BitIterZip::new(op, self.clone(), other.clone())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:17:3 [INFO] [stderr] | [INFO] [stderr] 17 | return vec; [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `vec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:26:3 [INFO] [stderr] | [INFO] [stderr] 26 | return vec; [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `vec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:31:3 [INFO] [stderr] | [INFO] [stderr] 31 | return load_as_bitvec(&f32_vec, 0, nbits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `load_as_bitvec(&f32_vec, 0, nbits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:44:3 [INFO] [stderr] | [INFO] [stderr] 44 | return bit_mat; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `bit_mat` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:53:3 [INFO] [stderr] | [INFO] [stderr] 53 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:66:3 [INFO] [stderr] | [INFO] [stderr] 66 | return buffer; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `buffer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:81:3 [INFO] [stderr] | [INFO] [stderr] 81 | return buffer; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `buffer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:89:3 [INFO] [stderr] | [INFO] [stderr] 89 | return bit_vec; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `bit_vec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/loader.rs:110:3 [INFO] [stderr] | [INFO] [stderr] 110 | return x; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | return bincode::serialize(&self, bincode::Infinite).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bincode::serialize(&self, bincode::Infinite).unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | return bincode::deserialize(&vec[..]).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bincode::deserialize(&vec[..]).unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | / return BatchNormLayer { [INFO] [stderr] 38 | | avg_mean: avg_mean, [INFO] [stderr] 39 | | avg_var: avg_var, [INFO] [stderr] 40 | | beta: beta, [INFO] [stderr] 41 | | gamma: gamma, [INFO] [stderr] 42 | | threshold: threshold, [INFO] [stderr] 43 | | }; [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 37 | BatchNormLayer { [INFO] [stderr] 38 | avg_mean: avg_mean, [INFO] [stderr] 39 | avg_var: avg_var, [INFO] [stderr] 40 | beta: beta, [INFO] [stderr] 41 | gamma: gamma, [INFO] [stderr] 42 | threshold: threshold, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | return BatchNormLayer::new(avg_mean, avg_var, beta, gamma); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BatchNormLayer::new(avg_mean, avg_var, beta, gamma)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | return self.threshold.len(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.threshold.len()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/batch_norm.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | return (gamma * x_hat) + beta; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(gamma * x_hat) + beta` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | return bincode::serialize(&self, bincode::Infinite).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bincode::serialize(&self, bincode::Infinite).unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | return bincode::deserialize(&vec[..]).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `bincode::deserialize(&vec[..]).unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | return BinaryLinearLayer { weight: weight }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `BinaryLinearLayer { weight: weight }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | return z; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `z` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/layer/linear.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | return self.weight.dot_vec(x); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.weight.dot_vec(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | / return match bincode::deserialize_from(&mut file, bincode::Infinite) { [INFO] [stderr] 29 | | Ok(net) => net, [INFO] [stderr] 30 | | Err(why) => { [INFO] [stderr] 31 | | panic!("Couldn't deserialize {}, {}", [INFO] [stderr] ... | [INFO] [stderr] 34 | | } [INFO] [stderr] 35 | | }; [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 28 | match bincode::deserialize_from(&mut file, bincode::Infinite) { [INFO] [stderr] 29 | Ok(net) => net, [INFO] [stderr] 30 | Err(why) => { [INFO] [stderr] 31 | panic!("Couldn't deserialize {}, {}", [INFO] [stderr] 32 | path, [INFO] [stderr] 33 | Error::description(&why)) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | / return match bincode::deserialize(data) { [INFO] [stderr] 40 | | Ok(net) => net, [INFO] [stderr] 41 | | Err(why) => panic!("Couldn't deserialize {}", Error::description(&why)), [INFO] [stderr] 42 | | }; [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 39 | match bincode::deserialize(data) { [INFO] [stderr] 40 | Ok(net) => net, [INFO] [stderr] 41 | Err(why) => panic!("Couldn't deserialize {}", Error::description(&why)), [INFO] [stderr] 42 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: defining a method called `from_iter` on this type; consider implementing the `std::iter::FromIterator` trait or choosing a less ambiguous name [INFO] [stderr] --> src/backend/bitvec.rs:68:3 [INFO] [stderr] | [INFO] [stderr] 68 | / pub fn from_iter(iter: I) -> Self [INFO] [stderr] 69 | | where I: BitIterator [INFO] [stderr] 70 | | { [INFO] [stderr] 71 | | let nbits = iter.shape().clone(); [INFO] [stderr] 72 | | Self::new(Vec::from_iter(iter), nbits) [INFO] [stderr] 73 | | } [INFO] [stderr] | |___^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::should_implement_trait)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/backend/bitvec.rs:71:17 [INFO] [stderr] | [INFO] [stderr] 71 | let nbits = iter.shape().clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `iter.shape()` [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] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/backend/bitvec.rs:82:41 [INFO] [stderr] | [INFO] [stderr] 82 | return BitIter::new(self.as_slice().into_iter(), self.nbits); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/backend/bitpack.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | self.storage = self.storage | other.storage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.storage |= other.storage` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/backend/bitpack.rs:123:5 [INFO] [stderr] | [INFO] [stderr] 123 | self.storage = self.storage & other.storage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.storage &= other.storage` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/backend/bitpack.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | self.storage = self.storage ^ other.storage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.storage ^= other.storage` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `vec` [INFO] [stderr] --> src/backend/bitpack.rs:146:12 [INFO] [stderr] | [INFO] [stderr] 146 | for i in 0..vec.len() { [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] 146 | for (i, ) in vec.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/backend/bitpack.rs:148:7 [INFO] [stderr] | [INFO] [stderr] 148 | tmp = tmp | single_bit_int(i as u32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `tmp |= single_bit_int(i as u32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/backend/bitmatrix.rs:71:31 [INFO] [stderr] | [INFO] [stderr] 71 | return BitIter::new(slice.into_iter(), ncol); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: defining a method called `from_iter` on this type; consider implementing the `std::iter::FromIterator` trait or choosing a less ambiguous name [INFO] [stderr] --> src/backend/bitmatrix.rs:92:3 [INFO] [stderr] | [INFO] [stderr] 92 | / pub fn from_iter(iter: I) -> Self [INFO] [stderr] 93 | | where I: BitIterator [INFO] [stderr] 94 | | { [INFO] [stderr] 95 | | let nbits = iter.shape().clone(); [INFO] [stderr] 96 | | Self::new(Vec::from_iter(iter), nbits) [INFO] [stderr] 97 | | } [INFO] [stderr] | |___^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/backend/bitmatrix.rs:95:17 [INFO] [stderr] | [INFO] [stderr] 95 | let nbits = iter.shape().clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `iter.shape()` [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: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/backend/bitmatrix.rs:100:41 [INFO] [stderr] | [INFO] [stderr] 100 | return BitIter::new(self.as_slice().into_iter(), self.nbits); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: trait `BitMatrix` has a `len` method but no (possibly inherited) `is_empty` method [INFO] [stderr] --> src/backend/bitmatrix_trait.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | / pub trait BitMatrix [INFO] [stderr] 6 | | where Self: Sized [INFO] [stderr] 7 | | { [INFO] [stderr] 8 | | type Index: PartialEq + Clone; [INFO] [stderr] ... | [INFO] [stderr] 23 | | fn new(storage: Vec, nbits: Self::Index) -> Self; [INFO] [stderr] 24 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_without_is_empty)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: defining a method called `from_iter` on this type; consider implementing the `std::iter::FromIterator` trait or choosing a less ambiguous name [INFO] [stderr] --> src/backend/bitvec.rs:68:3 [INFO] [stderr] | [INFO] [stderr] 68 | / pub fn from_iter(iter: I) -> Self [INFO] [stderr] 69 | | where I: BitIterator [INFO] [stderr] 70 | | { [INFO] [stderr] 71 | | let nbits = iter.shape().clone(); [INFO] [stderr] 72 | | Self::new(Vec::from_iter(iter), nbits) [INFO] [stderr] 73 | | } [INFO] [stderr] | |___^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::should_implement_trait)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/backend/bitvec.rs:71:17 [INFO] [stderr] | [INFO] [stderr] 71 | let nbits = iter.shape().clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `iter.shape()` [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] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/backend/bitvec.rs:82:41 [INFO] [stderr] | [INFO] [stderr] 82 | return BitIter::new(self.as_slice().into_iter(), self.nbits); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/loader.rs:84:28 [INFO] [stderr] | [INFO] [stderr] 84 | fn load_as_bitvec(f32_vec: &Vec, offset: u32, nbits: u32) -> BitVec { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[f32]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/backend/bitpack.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | self.storage = self.storage | other.storage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.storage |= other.storage` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/backend/bitpack.rs:123:5 [INFO] [stderr] | [INFO] [stderr] 123 | self.storage = self.storage & other.storage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.storage &= other.storage` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/backend/bitpack.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | self.storage = self.storage ^ other.storage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.storage ^= other.storage` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `vec` [INFO] [stderr] --> src/backend/bitpack.rs:146:12 [INFO] [stderr] | [INFO] [stderr] 146 | for i in 0..vec.len() { [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] 146 | for (i, ) in vec.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/backend/bitpack.rs:148:7 [INFO] [stderr] | [INFO] [stderr] 148 | tmp = tmp | single_bit_int(i as u32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `tmp |= single_bit_int(i as u32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: item `layer::batch_norm::BatchNormLayer` has a public `len` method but no corresponding `is_empty` method [INFO] [stderr] --> src/layer/batch_norm.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | / impl BatchNormLayer { [INFO] [stderr] 27 | | pub fn new(avg_mean: Vec, avg_var: Vec, beta: Vec, gamma: Vec) -> BatchNormLayer { [INFO] [stderr] 28 | | let mut threshold = Vec::new(); [INFO] [stderr] 29 | | let e = 0.00001; [INFO] [stderr] ... | [INFO] [stderr] 102 | | } [INFO] [stderr] 103 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/layer/batch_norm.rs:58:36 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn forward_f32(&self, x_vec: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `x_vec` [INFO] [stderr] --> src/layer/batch_norm.rs:61:14 [INFO] [stderr] | [INFO] [stderr] 61 | for i in 0..length { [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] 61 | for (i, ) in x_vec.iter().enumerate().take(length) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/layer/batch_norm.rs:73:37 [INFO] [stderr] | [INFO] [stderr] 73 | pub fn forward_sign(&self, x_vec: &Vec) -> BitVec { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `x_vec` [INFO] [stderr] --> src/layer/batch_norm.rs:76:14 [INFO] [stderr] | [INFO] [stderr] 76 | for i in 0..length { [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] 76 | for (i, ) in x_vec.iter().enumerate().take(length) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/backend/bitmatrix.rs:71:31 [INFO] [stderr] | [INFO] [stderr] 71 | return BitIter::new(slice.into_iter(), ncol); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: defining a method called `from_iter` on this type; consider implementing the `std::iter::FromIterator` trait or choosing a less ambiguous name [INFO] [stderr] --> src/backend/bitmatrix.rs:92:3 [INFO] [stderr] | [INFO] [stderr] 92 | / pub fn from_iter(iter: I) -> Self [INFO] [stderr] 93 | | where I: BitIterator [INFO] [stderr] 94 | | { [INFO] [stderr] 95 | | let nbits = iter.shape().clone(); [INFO] [stderr] 96 | | Self::new(Vec::from_iter(iter), nbits) [INFO] [stderr] 97 | | } [INFO] [stderr] | |___^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/backend/bitmatrix.rs:95:17 [INFO] [stderr] | [INFO] [stderr] 95 | let nbits = iter.shape().clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `iter.shape()` [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: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/backend/bitmatrix.rs:100:41 [INFO] [stderr] | [INFO] [stderr] 100 | return BitIter::new(self.as_slice().into_iter(), self.nbits); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: trait `BitMatrix` has a `len` method but no (possibly inherited) `is_empty` method [INFO] [stderr] --> src/backend/bitmatrix_trait.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | / pub trait BitMatrix [INFO] [stderr] 6 | | where Self: Sized [INFO] [stderr] 7 | | { [INFO] [stderr] 8 | | type Index: PartialEq + Clone; [INFO] [stderr] ... | [INFO] [stderr] 23 | | fn new(storage: Vec, nbits: Self::Index) -> Self; [INFO] [stderr] 24 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_without_is_empty)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/layer/linear.rs:29:31 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn forward_u8(&self, x: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/layer/linear.rs:36:18 [INFO] [stderr] | [INFO] [stderr] 36 | val += x[icol as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(x[icol as usize])` [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 u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/layer/linear.rs:38:18 [INFO] [stderr] | [INFO] [stderr] 38 | val -= x[icol as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(x[icol as usize])` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/network.rs:38:24 [INFO] [stderr] | [INFO] [stderr] 38 | fn deserialize(data: &Vec) -> Self { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/loader.rs:84:28 [INFO] [stderr] | [INFO] [stderr] 84 | fn load_as_bitvec(f32_vec: &Vec, offset: u32, nbits: u32) -> BitVec { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[f32]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: item `layer::batch_norm::BatchNormLayer` has a public `len` method but no corresponding `is_empty` method [INFO] [stderr] --> src/layer/batch_norm.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | / impl BatchNormLayer { [INFO] [stderr] 27 | | pub fn new(avg_mean: Vec, avg_var: Vec, beta: Vec, gamma: Vec) -> BatchNormLayer { [INFO] [stderr] 28 | | let mut threshold = Vec::new(); [INFO] [stderr] 29 | | let e = 0.00001; [INFO] [stderr] ... | [INFO] [stderr] 102 | | } [INFO] [stderr] 103 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/layer/batch_norm.rs:58:36 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn forward_f32(&self, x_vec: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `x_vec` [INFO] [stderr] --> src/layer/batch_norm.rs:61:14 [INFO] [stderr] | [INFO] [stderr] 61 | for i in 0..length { [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] 61 | for (i, ) in x_vec.iter().enumerate().take(length) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/layer/batch_norm.rs:73:37 [INFO] [stderr] | [INFO] [stderr] 73 | pub fn forward_sign(&self, x_vec: &Vec) -> BitVec { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `x_vec` [INFO] [stderr] --> src/layer/batch_norm.rs:76:14 [INFO] [stderr] | [INFO] [stderr] 76 | for i in 0..length { [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] 76 | for (i, ) in x_vec.iter().enumerate().take(length) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/layer/linear.rs:29:31 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn forward_u8(&self, x: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/layer/linear.rs:36:18 [INFO] [stderr] | [INFO] [stderr] 36 | val += x[icol as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(x[icol as usize])` [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 u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/layer/linear.rs:38:18 [INFO] [stderr] | [INFO] [stderr] 38 | val -= x[icol as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(x[icol as usize])` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/network.rs:38:24 [INFO] [stderr] | [INFO] [stderr] 38 | fn deserialize(data: &Vec) -> Self { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:58:29 [INFO] [stderr] | [INFO] [stderr] 58 | let net = SampleNetwork { l1: l1 }; [INFO] [stderr] | ^^^^^^ help: replace it with: `l1` [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/main.rs:58:29 [INFO] [stderr] | [INFO] [stderr] 58 | let net = SampleNetwork { l1: l1 }; [INFO] [stderr] | ^^^^^^ help: replace it with: `l1` [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: unneeded return statement [INFO] [stderr] --> tests/bititer_test.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | return (x, y); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(x, y)` [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: unneeded return statement [INFO] [stderr] --> tests/bitmatrix_vector_test.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | return (x, y); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(x, y)` [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: unneeded return statement [INFO] [stderr] --> tests/stack_test.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | return max_idx; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `max_idx` [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: unneeded return statement [INFO] [stderr] --> tests/stack_test.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | return (z1, z2, z3); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(z1, z2, z3)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tests/stack_test.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | return argmax(z3); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `argmax(z3)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `expected` [INFO] [stderr] --> tests/batch_norm_test.rs:24:14 [INFO] [stderr] | [INFO] [stderr] 24 | for i in 0..expected.len() { [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] 24 | for (i, ) in expected.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `vec` [INFO] [stderr] --> tests/stack_test.rs:13:14 [INFO] [stderr] | [INFO] [stderr] 13 | for i in 0..vec.len() { [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] 13 | for (i, ) in vec.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `expected` [INFO] [stderr] --> tests/stack_test.rs:73:14 [INFO] [stderr] | [INFO] [stderr] 73 | for i in 0..expected.len() { [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] 73 | for (i, ) in expected.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0554]: #![feature] may not be used on the stable release channel [INFO] [stderr] --> benches/lib.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #![feature(test)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0554`. [INFO] [stderr] error: Could not compile `binary_nn`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tests/bitmatrix_test.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | return (x, y); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(x, y)` [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: variable does not need to be mutable [INFO] [stderr] --> tests/bitmatrix_test.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | let mut x = BitMatrix2::falses((3, 34)); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> tests/bitmatrix_test.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | let mut y = BitMatrix2::falses((34, 2)); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `32` [INFO] [stderr] --> tests/bitmatrix_test.rs:93:32 [INFO] [stderr] | [INFO] [stderr] 93 | assert_eq!(x.offset_of((0, 32 + 0)), (1, 0)); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `32` [INFO] [stderr] --> tests/bitmatrix_test.rs:100:32 [INFO] [stderr] | [INFO] [stderr] 100 | assert_eq!(x.offset_of((1, 32 + 0)), (3, 0)); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `32` [INFO] [stderr] --> tests/bitmatrix_test.rs:107:32 [INFO] [stderr] | [INFO] [stderr] 107 | assert_eq!(x.offset_of((2, 32 + 0)), (5, 0)); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] error: build failed [INFO] running `"docker" "inspect" "b0221399b1d3f11ac3b98791da915e6c017127a15942a1bd9af08a17a4553bd8"` [INFO] running `"docker" "rm" "-f" "b0221399b1d3f11ac3b98791da915e6c017127a15942a1bd9af08a17a4553bd8"` [INFO] [stdout] b0221399b1d3f11ac3b98791da915e6c017127a15942a1bd9af08a17a4553bd8