From 2acda1fde3e1542a0b1bfc5a0885559e6daf142a Mon Sep 17 00:00:00 2001 From: Joost VandeVondele Date: Sun, 3 Dec 2017 18:29:55 +0100 Subject: [PATCH] Use bool(Bitboard b) instead of !!b (#1321) The idiom !!b is confusing newcomers (e.g. Stefan needs explaining here https://groups.google.com/d/msg/fishcooking/vYqnsRI4brY/Gaf60QuACwAJ). No functional change. --- src/bitboard.h | 1 - src/evaluate.cpp | 8 ++++---- src/pawns.cpp | 2 +- src/pawns.h | 2 +- src/search.cpp | 2 +- 5 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/bitboard.h b/src/bitboard.h index ba1b0072..05f65931 100644 --- a/src/bitboard.h +++ b/src/bitboard.h @@ -130,7 +130,6 @@ constexpr bool more_than_one(Bitboard b) { return b & (b - 1); } - /// rank_bb() and file_bb() return a bitboard representing all the squares on /// the given file or rank. diff --git a/src/evaluate.cpp b/src/evaluate.cpp index e1061849..e470e613 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -342,12 +342,12 @@ namespace { // Bonus for outpost squares bb = OutpostRanks & ~pe->pawn_attacks_span(Them); if (bb & s) - score += Outpost[Pt == BISHOP][!!(attackedBy[Us][PAWN] & s)] * 2; + score += Outpost[Pt == BISHOP][bool(attackedBy[Us][PAWN] & s)] * 2; else { bb &= b & ~pos.pieces(Us); if (bb) - score += Outpost[Pt == BISHOP][!!(attackedBy[Us][PAWN] & bb)]; + score += Outpost[Pt == BISHOP][bool(attackedBy[Us][PAWN] & bb)]; } // Bonus when behind a pawn @@ -388,7 +388,7 @@ namespace { // Bonus when on an open or semi-open file if (pe->semiopen_file(Us, file_of(s))) - score += RookOnFile[!!pe->semiopen_file(Them, file_of(s))]; + score += RookOnFile[bool(pe->semiopen_file(Them, file_of(s)))]; // Penalty when trapped by the king, even more if the king cannot castle else if (mob <= 3) @@ -450,7 +450,7 @@ namespace { kingDanger = kingAttackersCount[Them] * kingAttackersWeight[Them] + 102 * kingAdjacentZoneAttacksCount[Them] + 191 * popcount(kingRing[Us] & weak) - + 143 * !!pos.pinned_pieces(Us) + + 143 * bool(pos.pinned_pieces(Us)) - 848 * !pos.count(Them) - 9 * mg_value(score) / 8 + 40; diff --git a/src/pawns.cpp b/src/pawns.cpp index 90998754..a031534d 100644 --- a/src/pawns.cpp +++ b/src/pawns.cpp @@ -174,7 +174,7 @@ namespace { // Score this pawn if (supported | phalanx) - score += Connected[opposed][!!phalanx][popcount(supported)][relative_rank(Us, s)]; + score += Connected[opposed][bool(phalanx)][popcount(supported)][relative_rank(Us, s)]; else if (!neighbours) score -= Isolated, e->weakUnopposed[Us] += !opposed; diff --git a/src/pawns.h b/src/pawns.h index 19815293..a018f2c1 100644 --- a/src/pawns.h +++ b/src/pawns.h @@ -50,7 +50,7 @@ struct Entry { } int pawns_on_same_color_squares(Color c, Square s) const { - return pawnsOnSquares[c][!!(DarkSquares & s)]; + return pawnsOnSquares[c][bool(DarkSquares & s)]; } template diff --git a/src/search.cpp b/src/search.cpp index 6917a0f7..b6a49442 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1115,7 +1115,7 @@ moves_loop: // When in check search starts from here const bool PvNode = NT == PV; - assert(InCheck == !!pos.checkers()); + assert(InCheck == bool(pos.checkers())); assert(alpha >= -VALUE_INFINITE && alpha < beta && beta <= VALUE_INFINITE); assert(PvNode || (alpha == beta - 1)); assert(depth <= DEPTH_ZERO); -- 2.39.2