X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fmovegen.cpp;h=52d358a66bd3979b9e5e3cf31179a68691dd1e97;hp=612a87e577faec13cf342d1522a4b9abea107146;hb=96eefc4af65204cd2ddad64ac53b8d449f49efa5;hpb=8751b18cf0b5ddb9d7549a465444d5ace215a097 diff --git a/src/movegen.cpp b/src/movegen.cpp index 612a87e5..52d358a6 100644 --- a/src/movegen.cpp +++ b/src/movegen.cpp @@ -71,13 +71,9 @@ namespace { // Because we generate only legal castling moves we need to verify that // when moving the castling rook we do not discover some hidden checker. // For instance an enemy queen in SQ_A1 when castling rook is in SQ_B1. - if (pos.is_chess960()) - { - Bitboard occ = pos.occupied_squares(); - occ ^= rfrom; - if (pos.attackers_to(kto, occ) & enemies) + if ( pos.is_chess960() + && (pos.attackers_to(kto, pos.occupied_squares() ^ rfrom) & enemies)) return mlist; - } (*mlist++).move = make_castle(kfrom, rfrom);