}
if (step == Lists)
- {
for (Piece pc : Pieces)
{
if (pieceCount[pc] != popcount(pieces(color_of(pc), type_of(pc))))
if (board[pieceList[pc][i]] != pc || index[pieceList[pc][i]] != i)
return false;
}
- if (pieceCount[PAWN] > FILE_NB)
- return false;
- }
if (step == Castling)
for (Color c = WHITE; c <= BLACK; ++c)