From dfb93646093f8d71be455fc95e2e06ff73fb9211 Mon Sep 17 00:00:00 2001 From: b-l-u-e Date: Sat, 24 Jan 2026 01:29:58 +0300 Subject: [PATCH] fuzz: pull latest FuzzedDataProvider.h from upstream --- src/test/fuzz/FuzzedDataProvider.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/test/fuzz/FuzzedDataProvider.h b/src/test/fuzz/FuzzedDataProvider.h index 11f2fbdb8c8..5fab0c46829 100644 --- a/src/test/fuzz/FuzzedDataProvider.h +++ b/src/test/fuzz/FuzzedDataProvider.h @@ -314,7 +314,6 @@ T FuzzedDataProvider::PickValueInArray(const std::array &array) { template T FuzzedDataProvider::PickValueInArray(std::initializer_list list) { - // TODO(Dor1s): switch to static_assert once C++14 is allowed. if (!list.size()) abort(); @@ -381,13 +380,13 @@ TS FuzzedDataProvider::ConvertUnsignedToSigned(TU value) { static_assert(!std::numeric_limits::is_signed, "Source type must be unsigned."); - // TODO(Dor1s): change to `if constexpr` once C++17 becomes mainstream. - if (std::numeric_limits::is_modulo) + if constexpr (std::numeric_limits::is_modulo) return static_cast(value); // Avoid using implementation-defined unsigned to signed conversions. // To learn more, see https://stackoverflow.com/questions/13150449. - if (value <= std::numeric_limits::max()) { + constexpr auto TS_max = static_cast(std::numeric_limits::max()); + if (value <= TS_max) { return static_cast(value); } else { constexpr auto TS_min = std::numeric_limits::min();