From 15272e79f5ef0bf8aaf2805e0b44fc7b31b5e697 Mon Sep 17 00:00:00 2001 From: ianfab Date: Tue, 24 Jul 2018 22:27:05 +0200 Subject: [PATCH] Fix relative_rank for maximum rank != 2^n No functional change for 8x8 boards. --- src/types.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/types.h b/src/types.h index f127211..aac7022 100644 --- a/src/types.h +++ b/src/types.h @@ -447,7 +447,7 @@ constexpr Square relative_square(Color c, Square s) { } constexpr Rank relative_rank(Color c, Rank r, Rank maxRank = RANK_8) { - return Rank(r ^ (c * maxRank)); + return Rank(c == WHITE ? r : maxRank - r); } constexpr Rank relative_rank(Color c, Square s, Rank maxRank = RANK_8) { -- 1.7.0.4