While compiling for Fedora 35 stock machine, I kept having failures due to code in the fuzz tests, I found that adding: 

#include &lt;stdexcept&gt;
#include &lt;limits&gt;

to the top of ./src/test/fuzz/FuzzedDataProvider.h  fixed the issue.
static_assert(size > 0, "The array must be non empty.");
  return array[ConsumeIntegralInRange<size_t>(0, size - 1)];
}
template <typename T, size_t size>
T FuzzedDataProvider::PickValueInArray(const std::array<T, size> &array) {
  static_assert(size > 0, "The array must be non empty.");
  return array[ConsumeIntegralInRange<size_t>(0, size - 1)];
}
template <typename T>
T FuzzedDataProvider::PickValueInArray(std::initializer_list<const T> list) {
  
  if (!list.size())
    abort();
  return *(list.begin() + ConsumeIntegralInRange<size_t>(0, list.size() - 1));
}
inline size_t FuzzedDataProvider::ConsumeData(void *destination,
                                              size_t num_bytes) {
  num_bytes = std::min(num_bytes, remaining_bytes_);
  CopyAndAdvance(destination, num_bytes);
  return num_bytes;
}
inline void FuzzedDataProvider::CopyAndAdvance(void *destination,
                                               size_t num_bytes) {
  std::memcpy(destination, data_ptr_, num_bytes);
  Advance(num_bytes);
}
inline void FuzzedDataProvider::Advance(size_t num_bytes) {