// Simple macro to wrap a very common while loop, no facny, no flexibility,
// hardcoded list name 'mlist' and from square 'from'.
-#define SERIALIZE_MOVES(b) while (b) (*mlist++).move = make_move(from, pop_1st_bit<false>(&b))
+#define SERIALIZE_MOVES(b) while (b) (*mlist++).move = make_move(from, pop_1st_bit(&b))
////
//// Local definitions
// The checking pawn cannot be a discovered (bishop) check candidate
// otherwise we were in check also before last double push move.
assert(!bit_is_set(pos.discovered_check_candidates(them), checksq));
- assert(count_1s<false>(b1) == 1 || count_1s<false>(b1) == 2);
+ assert(count_1s(b1) == 1 || count_1s(b1) == 2);
b1 &= ~pinned;
while (b1)
assert(pinned == pos.pinned_pieces(pos.side_to_move()));
Color us = pos.side_to_move();
- Color them = opposite_color(us);
Square from = move_from(m);
Piece pc = pos.piece_on(from);
if (color_of_piece(pc) != us)
return false;
+ Color them = opposite_color(us);
Square to = move_to(m);
// En passant moves