Fix a compilation error for MSVC
authorStéphane Nicolet <cassio@free.fr>
Fri, 27 Jul 2018 13:46:13 +0000 (15:46 +0200)
committerStéphane Nicolet <cassio@free.fr>
Fri, 27 Jul 2018 13:46:13 +0000 (15:46 +0200)
The previous commit wouldn't compile on the Microsoft Virtual Studio C++ compiler. So use a more compatible style for the same idea (which we already use in numerous places of evaluate.cpp, for instance in line 563).

Under the Clang compiler, both versions generate exactly the same machine code (same md5 signatures for the two binaries).

No functional change.

src/evaluate.cpp

index 5f4a1ab..55ceadf 100644 (file)
@@ -636,8 +636,8 @@ namespace {
 
         assert(!(pos.pieces(Them, PAWN) & forward_file_bb(Us, s + Up)));
 
-        bb = forward_file_bb(Us, s) & pos.pieces(Them);
-        score -= HinderPassedPawn * bool(bb);
+        if (forward_file_bb(Us, s) & pos.pieces(Them))
+            score -= HinderPassedPawn;
 
         int r = relative_rank(Us, s);
         int w = PassedDanger[r];