diff --git a/src/position.cpp b/src/position.cpp index 350a207fa..3b7b197ff 100644 --- a/src/position.cpp +++ b/src/position.cpp @@ -513,13 +513,10 @@ Bitboard Position::attackers_to(Square s, Bitboard occupied) const { bool Position::attackers_to_exist(Square s, Bitboard occupied, Color c) const { - return ((attacks_bb(s) & pieces(c, ROOK, QUEEN)) - && (attacks_bb(s, occupied) & pieces(c, ROOK, QUEEN))) - || ((attacks_bb(s) & pieces(c, BISHOP, QUEEN)) - && (attacks_bb(s, occupied) & pieces(c, BISHOP, QUEEN))) - || (((attacks_bb(s, ~c) & pieces(PAWN)) | (attacks_bb(s) & pieces(KNIGHT)) - | (attacks_bb(s) & pieces(KING))) - & pieces(c)); + return (attacks_bb(s, occupied) & pieces(c, ROOK, QUEEN)) + || (attacks_bb(s, occupied) & pieces(c, BISHOP, QUEEN)) + || (attacks_bb(s, ~c) & pieces(c, PAWN)) + || (attacks_bb(s) & pieces(c, KNIGHT)) || (attacks_bb(s) & pieces(c, KING)); } // Tests whether a pseudo-legal move is legal