From 57d991026c93445d1a0411c5bc935b27250b19b8 Mon Sep 17 00:00:00 2001 From: Kazantcev Andrey <45011689+heckad@users.noreply.github.com> Date: Thu, 1 Oct 2020 15:25:31 +0300 Subject: [PATCH 1/2] Fix warning C4018: '<=': signed/unsigned mismatch --- include/fmt/format-inl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/fmt/format-inl.h b/include/fmt/format-inl.h index b30b52e7a43f..29b947174420 100644 --- a/include/fmt/format-inl.h +++ b/include/fmt/format-inl.h @@ -1790,8 +1790,8 @@ bool check_divisibility_and_divide_by_pow5(uint32_t& n) FMT_NOEXCEPT { template uint32_t small_division_by_pow10(uint32_t n) FMT_NOEXCEPT { static constexpr struct { uint32_t magic_number; - int shift_amount; - int divisor_times_10; + uint32_t shift_amount; + uint32_t divisor_times_10; } infos[] = {{0xcccd, 19, 100}, {0xa3d8, 22, 1000}}; constexpr auto info = infos[N - 1]; FMT_ASSERT(n <= info.divisor_times_10, "n is too large"); From 4692cf959e87fbe6b9ae49e35a1b774b27264691 Mon Sep 17 00:00:00 2001 From: Kazantcev Andrey <45011689+heckad@users.noreply.github.com> Date: Fri, 2 Oct 2020 14:01:51 +0300 Subject: [PATCH 2/2] Update format-inl.h --- include/fmt/format-inl.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/fmt/format-inl.h b/include/fmt/format-inl.h index 29b947174420..0fd719b426a5 100644 --- a/include/fmt/format-inl.h +++ b/include/fmt/format-inl.h @@ -1790,7 +1790,7 @@ bool check_divisibility_and_divide_by_pow5(uint32_t& n) FMT_NOEXCEPT { template uint32_t small_division_by_pow10(uint32_t n) FMT_NOEXCEPT { static constexpr struct { uint32_t magic_number; - uint32_t shift_amount; + int shift_amount; uint32_t divisor_times_10; } infos[] = {{0xcccd, 19, 100}, {0xa3d8, 22, 1000}}; constexpr auto info = infos[N - 1];