mirror of
https://github.com/sockspls/badfish
synced 2025-04-29 16:23:09 +00:00
Workaround a static data member bug in MSVC
Without this patch MSVC crashes when compiled in release mode. It survives and works as expected in debug mode and with gcc and Intel compilers. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
parent
3901affb1d
commit
58c7a5c477
2 changed files with 4 additions and 7 deletions
|
@ -38,6 +38,7 @@ namespace {
|
|||
|
||||
/// Variables
|
||||
|
||||
MovePicker::MovegenPhase PhaseTable[32];
|
||||
int MainSearchPhaseIndex;
|
||||
int EvasionsPhaseIndex;
|
||||
int QsearchWithChecksPhaseIndex;
|
||||
|
@ -45,8 +46,6 @@ namespace {
|
|||
|
||||
}
|
||||
|
||||
// Static array definition
|
||||
MovePicker::MovegenPhase MovePicker::PhaseTable[32];
|
||||
|
||||
|
||||
////
|
||||
|
@ -440,6 +439,9 @@ Move MovePicker::pick_move_from_list() {
|
|||
return MOVE_NONE;
|
||||
}
|
||||
|
||||
MovePicker::MovegenPhase MovePicker::current_move_type() const {
|
||||
return PhaseTable[phaseIndex];
|
||||
}
|
||||
|
||||
/// MovePicker::init_phase_table() initializes the PhaseTable[],
|
||||
/// MainSearchPhaseIndex, EvasionPhaseIndex, QsearchWithChecksPhaseIndex
|
||||
|
|
|
@ -81,7 +81,6 @@ private:
|
|||
Move ttMove, mateKiller, killer1, killer2;
|
||||
Bitboard pinned, dc;
|
||||
MoveStack moves[256], badCaptures[64];
|
||||
static MovegenPhase PhaseTable[32];
|
||||
bool pvNode;
|
||||
Depth depth;
|
||||
int phaseIndex;
|
||||
|
@ -99,10 +98,6 @@ private:
|
|||
/// all pieces which can possibly give discovered check. This bitboard is
|
||||
/// computed by the constructor function.
|
||||
|
||||
inline MovePicker::MovegenPhase MovePicker::current_move_type() const {
|
||||
return PhaseTable[phaseIndex];
|
||||
}
|
||||
|
||||
inline Bitboard MovePicker::discovered_check_candidates() const {
|
||||
return dc;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue