Fix missing initialization of AccumulatorCaches in Eval::trace

Add a constructor to `AccumulatorCaches` instead of just calling
`clear(networks)` to prevent similar issues from appearing in the
future.

fixes https://github.com/official-stockfish/Stockfish/issues/5190

closes https://github.com/official-stockfish/Stockfish/pull/5191

No functional change
This commit is contained in:
Disservin
2024-04-25 19:20:57 +02:00
parent 886ed90ec3
commit 3502c8ae42
4 changed files with 11 additions and 7 deletions

View File

@@ -99,7 +99,7 @@ Value Eval::evaluate(const Eval::NNUE::Networks& networks,
// Trace scores are from white's point of view
std::string Eval::trace(Position& pos, const Eval::NNUE::Networks& networks) {
auto caches = std::make_unique<Eval::NNUE::AccumulatorCaches>();
auto caches = std::make_unique<Eval::NNUE::AccumulatorCaches>(networks);
if (pos.checkers())
return "Final evaluation: none (in check)";