From 8d4c91868d89b3a65241e7a5190fb7cdd9f6769e Mon Sep 17 00:00:00 2001 From: Shawn Date: Sat, 7 Apr 2018 19:40:02 -0700 Subject: [PATCH 1/2] Fix some spurious warnings in MSVC at higher warning levels. --- include/pcg_uint128.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/pcg_uint128.hpp b/include/pcg_uint128.hpp index 16f9264..a10f23e 100644 --- a/include/pcg_uint128.hpp +++ b/include/pcg_uint128.hpp @@ -140,14 +140,14 @@ inline bitcount_t flog2(uint32_t v) { unsigned long i; _BitScanReverse(&i, v); - return i; + return static_cast(i); } inline bitcount_t trailingzeros(uint32_t v) { unsigned long i; _BitScanForward(&i, v); - return i; + return static_cast(i); } inline bitcount_t flog2(uint64_t v) @@ -155,7 +155,7 @@ inline bitcount_t flog2(uint64_t v) #if defined(_M_X64) || defined(_M_ARM) || defined(_M_ARM64) unsigned long i; _BitScanReverse64(&i, v); - return i; + return static_cast(i); #else // 32-bit x86 uint32_t high = v >> 32; @@ -169,7 +169,7 @@ inline bitcount_t trailingzeros(uint64_t v) #if defined(_M_X64) || defined(_M_ARM) || defined(_M_ARM64) unsigned long i; _BitScanForward64(&i, v); - return i; + return static_cast(i); #else // 32-bit x86 uint32_t high = v >> 32; From 6759ec4ace96392c7858ba842b04bbb19e3f6576 Mon Sep 17 00:00:00 2001 From: Shawn Date: Sat, 7 Apr 2018 19:40:02 -0700 Subject: [PATCH 2/2] Fix some spurious warnings in MSVC at higher warning levels. --- include/pcg_uint128.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/pcg_uint128.hpp b/include/pcg_uint128.hpp index 16f9264..a10f23e 100644 --- a/include/pcg_uint128.hpp +++ b/include/pcg_uint128.hpp @@ -140,14 +140,14 @@ inline bitcount_t flog2(uint32_t v) { unsigned long i; _BitScanReverse(&i, v); - return i; + return static_cast(i); } inline bitcount_t trailingzeros(uint32_t v) { unsigned long i; _BitScanForward(&i, v); - return i; + return static_cast(i); } inline bitcount_t flog2(uint64_t v) @@ -155,7 +155,7 @@ inline bitcount_t flog2(uint64_t v) #if defined(_M_X64) || defined(_M_ARM) || defined(_M_ARM64) unsigned long i; _BitScanReverse64(&i, v); - return i; + return static_cast(i); #else // 32-bit x86 uint32_t high = v >> 32; @@ -169,7 +169,7 @@ inline bitcount_t trailingzeros(uint64_t v) #if defined(_M_X64) || defined(_M_ARM) || defined(_M_ARM64) unsigned long i; _BitScanForward64(&i, v); - return i; + return static_cast(i); #else // 32-bit x86 uint32_t high = v >> 32;