From a95befa318135bd5cc46fd2bd464d0d0606bc22c Mon Sep 17 00:00:00 2001 From: greg7mdp Date: Mon, 20 Oct 2025 20:07:48 -0400 Subject: [PATCH] Fix sanitizer issue in test code. --- tests/hash_generator_testing.h | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/tests/hash_generator_testing.h b/tests/hash_generator_testing.h index 191ef3f..496dd10 100644 --- a/tests/hash_generator_testing.h +++ b/tests/hash_generator_testing.h @@ -76,7 +76,7 @@ std::mt19937_64* GetSharedRng() { } -enum Enum { +enum Enum : uint64_t { kEnumEmpty, kEnumDeleted, }; @@ -96,34 +96,24 @@ struct Generator; template struct Generator::value>::type> { T operator()() const { - std::uniform_int_distribution dist; - return dist(*GetSharedRng()); + std::uniform_int_distribution dist; + return dist(*GetSharedRng()); } }; template <> struct Generator { Enum operator()() const { - std::uniform_int_distribution::type> dist; - - while (true) { - auto variate = dist(*GetSharedRng()); - if (variate != kEnumEmpty && variate != kEnumDeleted) - return static_cast(variate); - } + std::uniform_int_distribution::type> dist; + return static_cast(dist(*GetSharedRng())); } }; template <> struct Generator { EnumClass operator()() const { - std::uniform_int_distribution< - typename std::underlying_type::type> dist; - while (true) { - EnumClass variate = static_cast(dist(*GetSharedRng())); - if (variate != EnumClass::kEmpty && variate != EnumClass::kDeleted) - return static_cast(variate); - } + std::uniform_int_distribution::type> dist; + return static_cast(dist(*GetSharedRng())); } };