diff --git a/src/evaluate.cpp b/src/evaluate.cpp index 6308f472..b58d4a03 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -274,6 +274,7 @@ namespace { kingRing[Us] |= shift(kingRing[Us]); kingAttackersCount[Them] = popcount(kingRing[Us] & pe->pawn_attacks(Them)); + kingRing[Us] &= ~double_pawn_attacks_bb(pos.pieces(Us, PAWN)); kingAttacksCount[Them] = kingAttackersWeight[Them] = 0; } } @@ -309,7 +310,7 @@ namespace { attackedBy[Us][Pt] |= b; attackedBy[Us][ALL_PIECES] |= b; - if (b & kingRing[Them] & ~double_pawn_attacks_bb(pos.pieces(Them, PAWN))) + if (b & kingRing[Them]) { kingAttackersCount[Us]++; kingAttackersWeight[Us] += KingAttackWeights[Pt];