along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#if !defined(POSITION_H_INCLUDED)
+#ifndef POSITION_H_INCLUDED
#define POSITION_H_INCLUDED
#include <cassert>
// Helper functions
void do_castle(Square kfrom, Square kto, Square rfrom, Square rto);
- template<bool FindPinned> Bitboard hidden_checkers() const;
+ Bitboard hidden_checkers(Square ksq, Color c) const;
// Computing hash keys from scratch (for initialization and debugging)
Key compute_key() const;
}
inline Bitboard Position::discovered_check_candidates() const {
- return hidden_checkers<false>();
+ return hidden_checkers(king_square(~sideToMove), sideToMove);
}
inline Bitboard Position::pinned_pieces() const {
- return hidden_checkers<true>();
+ return hidden_checkers(king_square(sideToMove), ~sideToMove);
}
inline bool Position::pawn_is_passed(Color c, Square s) const {
return thisThread;
}
-#endif // !defined(POSITION_H_INCLUDED)
+#endif // #ifndef POSITION_H_INCLUDED