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(std::is_floating_point<T>::value,
                "A floating point type is required.");
  
  
  using IntegralType =
      typename std::conditional<(sizeof(T) <= sizeof(uint32_t)), uint32_t,
                                uint64_t>::type;
  T result = static_cast<T>(ConsumeIntegral<IntegralType>());
  result /= static_cast<T>(std::numeric_limits<IntegralType>::max());
  return result;
}
inline bool FuzzedDataProvider::ConsumeBool() {
  return 1 & ConsumeIntegral<uint8_t>();
}
template <typename T> T FuzzedDataProvider::ConsumeEnum() {
  static_assert(std::is_enum<T>::value, "|T| must be an enum type.");
  return static_cast<T>(
      ConsumeIntegralInRange<uint32_t>(0, static_cast<uint32_t>(T::kMaxValue)));
}
template <typename T, size_t size>
T FuzzedDataProvider::PickValueInArray(const T (&array)[size]) {