diff --git a/src/search.cpp b/src/search.cpp index ddae81dfb..47dc777a6 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1728,8 +1728,7 @@ Value Search::Worker::qsearch(Position& pos, Stack* ss, Value alpha, Value beta) if (!ss->inCheck && !moveCount && !pos.non_pawn_material(us) && type_of(pos.captured_piece()) >= ROOK) { - if (!((us == WHITE ? shift(pos.pieces(us, PAWN)) - : shift(pos.pieces(us, PAWN))) + if (!(pawn_single_push_bb(us, pos.pieces(us, PAWN)) & ~pos.pieces())) // no pawn pushes available { pos.state()->checkersBB = Rank1BB; // search for legal king-moves only