CheckInfo::CheckInfo(const Position& pos) {
Color them = flip(pos.side_to_move());
- Square ksq = pos.king_square(them);
+ ksq = pos.king_square(them);
pinned = pos.pinned_pieces();
dcCandidates = pos.discovered_check_candidates();
Square ksq = king_square(FindPinned ? sideToMove : flip(sideToMove));
// Pinners are sliders, that give check when candidate pinned is removed
- pinners &= (pieces(ROOK, QUEEN) & RookPseudoAttacks[ksq])
- | (pieces(BISHOP, QUEEN) & BishopPseudoAttacks[ksq]);
+ pinners &= (pieces(ROOK, QUEEN) & PseudoAttacks[ROOK][ksq])
+ | (pieces(BISHOP, QUEEN) & PseudoAttacks[BISHOP][ksq]);
while (pinners)
{