From: Alain SAVARD Date: Mon, 26 Jan 2015 16:05:53 +0000 (-0500) Subject: Simplify backward pawn definition X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=8aa8608c2a30acc56c4bb4467309cef5089fb2bd;ds=sidebyside Simplify backward pawn definition Make use of 'lever' attribute No functional change Resolves #234 --- diff --git a/src/pawns.cpp b/src/pawns.cpp index eda707ff..798bc0a0 100644 --- a/src/pawns.cpp +++ b/src/pawns.cpp @@ -144,12 +144,11 @@ namespace { lever = theirPawns & pawnAttacksBB[s]; // Test for backward pawn. - // If the pawn is passed, isolated, or connected it cannot be + // If the pawn is passed, isolated, connected or a lever it cannot be // backward. If there are friendly pawns behind on adjacent files - // or if it can capture an enemy pawn it cannot be backward either. - if ( (passed | isolated | connected) - || (ourPawns & pawn_attack_span(Them, s)) - || (pos.attacks_from(s, Us) & theirPawns)) + // it cannot be backward either. + if ( (passed | isolated | connected | lever) + || (ourPawns & pawn_attack_span(Them, s))) backward = false; else {