[INFO] updating cached repository felipeamp/windmill [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/felipeamp/windmill [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/felipeamp/windmill" "work/ex/clippy-test-run/sources/stable/gh/felipeamp/windmill"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/felipeamp/windmill'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/felipeamp/windmill" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/felipeamp/windmill"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/felipeamp/windmill'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] d96a808429a7a8b5f475b03760ec482abab1d1ac [INFO] sha for GitHub repo felipeamp/windmill: d96a808429a7a8b5f475b03760ec482abab1d1ac [INFO] validating manifest of felipeamp/windmill 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 felipeamp/windmill 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 felipeamp/windmill [INFO] finished frobbing felipeamp/windmill [INFO] frobbed toml for felipeamp/windmill written to work/ex/clippy-test-run/sources/stable/gh/felipeamp/windmill/Cargo.toml [INFO] started frobbing felipeamp/windmill [INFO] finished frobbing felipeamp/windmill [INFO] frobbed toml for felipeamp/windmill written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/felipeamp/windmill/Cargo.toml [INFO] crate felipeamp/windmill 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 felipeamp/windmill against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/felipeamp/windmill:/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] cff05e5977e9a8b76172889e763dcfc7efe9a8da9ee49ab965edfafeec391333 [INFO] running `"docker" "start" "-a" "cff05e5977e9a8b76172889e763dcfc7efe9a8da9ee49ab965edfafeec391333"` [INFO] [stderr] Checking windmill v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/types.rs:298:26 [INFO] [stderr] | [INFO] [stderr] 298 | Square((self.0 & 0b111111) as u8) [INFO] [stderr] | ^^^^^^^^ help: consider: `0b11_1111` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/types.rs:302:33 [INFO] [stderr] | [INFO] [stderr] 302 | Square(((self.0 >> 6) & 0b111111) as u8) [INFO] [stderr] | ^^^^^^^^ help: consider: `0b11_1111` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/types.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `types::*` [INFO] [stderr] --> src/bitboard.rs:126:9 [INFO] [stderr] | [INFO] [stderr] 126 | use types::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/types.rs:298:26 [INFO] [stderr] | [INFO] [stderr] 298 | Square((self.0 & 0b111111) as u8) [INFO] [stderr] | ^^^^^^^^ help: consider: `0b11_1111` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/types.rs:302:33 [INFO] [stderr] | [INFO] [stderr] 302 | Square(((self.0 >> 6) & 0b111111) as u8) [INFO] [stderr] | ^^^^^^^^ help: consider: `0b11_1111` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/types.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ascii::AsciiExt` [INFO] [stderr] --> src/types.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:46:28 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn from_square(sq: &Square) -> Bitboard { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `Square` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:55:22 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn pop_count(&self) -> u32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:59:19 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn lsb_bb(&self) -> Bitboard { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:67:19 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn lsb_sq(&self) -> Square { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:72:19 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn msb_bb(&self) -> Bitboard { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:80:19 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn msb_sq(&self) -> Square { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:92:17 [INFO] [stderr] | [INFO] [stderr] 92 | pub fn file(&self) -> File { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:106:17 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn rank(&self) -> Rank { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/types.rs:210:28 [INFO] [stderr] | [INFO] [stderr] 210 | let mut ret = Move(sq_from.0 as u16 | ((sq_to.0 as u16) << 6)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(sq_from.0)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/types.rs:210:48 [INFO] [stderr] | [INFO] [stderr] 210 | let mut ret = Move(sq_from.0 as u16 | ((sq_to.0 as u16) << 6)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(sq_to.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:229:21 [INFO] [stderr] | [INFO] [stderr] 229 | pub fn is_valid(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:297:20 [INFO] [stderr] | [INFO] [stderr] 297 | pub fn sq_from(&self) -> Square { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:301:18 [INFO] [stderr] | [INFO] [stderr] 301 | pub fn sq_to(&self) -> Square { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:305:25 [INFO] [stderr] | [INFO] [stderr] 305 | pub fn is_promotion(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:309:26 [INFO] [stderr] | [INFO] [stderr] 309 | pub fn is_en_passent(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:313:22 [INFO] [stderr] | [INFO] [stderr] 313 | pub fn is_castle(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:317:24 [INFO] [stderr] | [INFO] [stderr] 317 | pub fn castle_side(&self) -> CastleSide { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:328:27 [INFO] [stderr] | [INFO] [stderr] 328 | pub fn promoted_piece(&self) -> Piece { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ascii::AsciiExt` [INFO] [stderr] --> src/types.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:46:28 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn from_square(sq: &Square) -> Bitboard { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `Square` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:55:22 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn pop_count(&self) -> u32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:59:19 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn lsb_bb(&self) -> Bitboard { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:67:19 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn lsb_sq(&self) -> Square { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:72:19 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn msb_bb(&self) -> Bitboard { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bitboard.rs:80:19 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn msb_sq(&self) -> Square { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:92:17 [INFO] [stderr] | [INFO] [stderr] 92 | pub fn file(&self) -> File { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:106:17 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn rank(&self) -> Rank { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/types.rs:210:28 [INFO] [stderr] | [INFO] [stderr] 210 | let mut ret = Move(sq_from.0 as u16 | ((sq_to.0 as u16) << 6)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(sq_from.0)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/types.rs:210:48 [INFO] [stderr] | [INFO] [stderr] 210 | let mut ret = Move(sq_from.0 as u16 | ((sq_to.0 as u16) << 6)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(sq_to.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:229:21 [INFO] [stderr] | [INFO] [stderr] 229 | pub fn is_valid(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:297:20 [INFO] [stderr] | [INFO] [stderr] 297 | pub fn sq_from(&self) -> Square { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:301:18 [INFO] [stderr] | [INFO] [stderr] 301 | pub fn sq_to(&self) -> Square { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:305:25 [INFO] [stderr] | [INFO] [stderr] 305 | pub fn is_promotion(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:309:26 [INFO] [stderr] | [INFO] [stderr] 309 | pub fn is_en_passent(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:313:22 [INFO] [stderr] | [INFO] [stderr] 313 | pub fn is_castle(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:317:24 [INFO] [stderr] | [INFO] [stderr] 317 | pub fn castle_side(&self) -> CastleSide { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/types.rs:328:27 [INFO] [stderr] | [INFO] [stderr] 328 | pub fn promoted_piece(&self) -> Piece { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `(1u16 << 6)` [INFO] [stderr] --> src/types.rs:482:25 [INFO] [stderr] | [INFO] [stderr] 482 | Move(0u16 | (1u16 << 6))); [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 `48u16` [INFO] [stderr] --> src/types.rs:548:25 [INFO] [stderr] | [INFO] [stderr] 548 | Move((0u16 + 48u16) | ((0u16 + 56u16) << 6) | PROMOTION_FLAG)); [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 `56u16` [INFO] [stderr] --> src/types.rs:548:43 [INFO] [stderr] | [INFO] [stderr] 548 | Move((0u16 + 48u16) | ((0u16 + 56u16) << 6) | PROMOTION_FLAG)); [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 `1u16` [INFO] [stderr] --> src/types.rs:555:42 [INFO] [stderr] | [INFO] [stderr] 555 | Move((1u16 + 8u16) | ((1u16 + 0u16) << 6) | (0b01 << 12) | PROMOTION_FLAG)); [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 `48u16` [INFO] [stderr] --> src/types.rs:562:25 [INFO] [stderr] | [INFO] [stderr] 562 | Move((0u16 + 48u16) | ((1u16 + 56u16) << 6) | (0b10 << 12) | PROMOTION_FLAG)); [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 `2u16` [INFO] [stderr] --> src/types.rs:569:42 [INFO] [stderr] | [INFO] [stderr] 569 | Move((1u16 + 8u16) | ((2u16 + 0u16) << 6) | (0b11 << 12) | PROMOTION_FLAG)); [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: in an 'if' condition, avoid complex blocks or closures with blocks; instead, move the block or closure higher and bind it with a 'let' [INFO] [stderr] --> src/types.rs:571:40 [INFO] [stderr] | [INFO] [stderr] 571 | assert!(panic::catch_unwind(|| { [INFO] [stderr] | ________________________________________^ [INFO] [stderr] 572 | | Move::new(Square(64u8), [INFO] [stderr] 573 | | Square(0u8), [INFO] [stderr] 574 | | Piece::None, [INFO] [stderr] 575 | | CastleSide::None, [INFO] [stderr] 576 | | false) [INFO] [stderr] 577 | | }) [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::block_in_if_condition_stmt)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#block_in_if_condition_stmt [INFO] [stderr] [INFO] [stderr] warning: in an 'if' condition, avoid complex blocks or closures with blocks; instead, move the block or closure higher and bind it with a 'let' [INFO] [stderr] --> src/types.rs:579:40 [INFO] [stderr] | [INFO] [stderr] 579 | assert!(panic::catch_unwind(|| { [INFO] [stderr] | ________________________________________^ [INFO] [stderr] 580 | | Move::new(Square(0u8), [INFO] [stderr] 581 | | Square(64u8), [INFO] [stderr] 582 | | Piece::None, [INFO] [stderr] 583 | | CastleSide::None, [INFO] [stderr] 584 | | false) [INFO] [stderr] 585 | | }) [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#block_in_if_condition_stmt [INFO] [stderr] [INFO] [stderr] warning: in an 'if' condition, avoid complex blocks or closures with blocks; instead, move the block or closure higher and bind it with a 'let' [INFO] [stderr] --> src/types.rs:587:40 [INFO] [stderr] | [INFO] [stderr] 587 | assert!(panic::catch_unwind(|| { [INFO] [stderr] | ________________________________________^ [INFO] [stderr] 588 | | Move::new(Square(255u8), [INFO] [stderr] 589 | | Square(255u8), [INFO] [stderr] 590 | | Piece::None, [INFO] [stderr] 591 | | CastleSide::None, [INFO] [stderr] 592 | | false) [INFO] [stderr] 593 | | }) [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#block_in_if_condition_stmt [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 33 [INFO] [stderr] --> src/types.rs:598:5 [INFO] [stderr] | [INFO] [stderr] 598 | / fn move_is_valid() { [INFO] [stderr] 599 | | // Moves with same from and to squares should NOT be valid [INFO] [stderr] 600 | | assert!(!NULL_MOVE.is_valid()); [INFO] [stderr] 601 | | assert!(!Move::new(Square::from_file_rank(File::D, Rank::_1), [INFO] [stderr] ... | [INFO] [stderr] 821 | | .is_valid()); [INFO] [stderr] 822 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.02s [INFO] running `"docker" "inspect" "cff05e5977e9a8b76172889e763dcfc7efe9a8da9ee49ab965edfafeec391333"` [INFO] running `"docker" "rm" "-f" "cff05e5977e9a8b76172889e763dcfc7efe9a8da9ee49ab965edfafeec391333"` [INFO] [stdout] cff05e5977e9a8b76172889e763dcfc7efe9a8da9ee49ab965edfafeec391333