[libc-commits] [libc] 7e29277 - [libc] Fix implicit conversion warnings. (#130635)

via libc-commits libc-commits at lists.llvm.org
Mon Mar 10 09:51:41 PDT 2025


Author: lntue
Date: 2025-03-10T12:51:38-04:00
New Revision: 7e292772ad810ffe14ea685e0b8f66d4f6eb1556

URL: https://github.com/llvm/llvm-project/commit/7e292772ad810ffe14ea685e0b8f66d4f6eb1556
DIFF: https://github.com/llvm/llvm-project/commit/7e292772ad810ffe14ea685e0b8f66d4f6eb1556.diff

LOG: [libc] Fix implicit conversion warnings. (#130635)

Added: 
    

Modified: 
    libc/src/__support/CPP/bit.h
    libc/src/__support/float_to_string.h

Removed: 
    


################################################################################
diff  --git a/libc/src/__support/CPP/bit.h b/libc/src/__support/CPP/bit.h
index 7d138201783bf..e491f3e032669 100644
--- a/libc/src/__support/CPP/bit.h
+++ b/libc/src/__support/CPP/bit.h
@@ -162,7 +162,7 @@ ADD_SPECIALIZATION(countl_zero, unsigned long long, __builtin_clzll)
 template <typename T>
 [[nodiscard]] LIBC_INLINE constexpr cpp::enable_if_t<cpp::is_unsigned_v<T>, int>
 countl_one(T value) {
-  return cpp::countl_zero<T>(~value);
+  return cpp::countl_zero<T>(static_cast<T>(~value));
 }
 
 /// Count the number of ones from the least significant bit to the first
@@ -175,7 +175,7 @@ countl_one(T value) {
 template <typename T>
 [[nodiscard]] LIBC_INLINE constexpr cpp::enable_if_t<cpp::is_unsigned_v<T>, int>
 countr_one(T value) {
-  return cpp::countr_zero<T>(~value);
+  return cpp::countr_zero<T>(static_cast<T>(~value));
 }
 
 /// Returns the number of bits needed to represent value if value is nonzero.

diff  --git a/libc/src/__support/float_to_string.h b/libc/src/__support/float_to_string.h
index d5de6f38cb655..4b03eaf4d02f2 100644
--- a/libc/src/__support/float_to_string.h
+++ b/libc/src/__support/float_to_string.h
@@ -287,7 +287,7 @@ LIBC_INLINE UInt<MID_INT_SIZE> get_table_negative(int exponent, size_t i) {
   size_t ten_blocks = i;
   size_t five_blocks = 0;
   if (shift_amount < 0) {
-    int block_shifts = (-shift_amount) / BLOCK_SIZE;
+    int block_shifts = (-shift_amount) / static_cast<int>(BLOCK_SIZE);
     if (block_shifts < static_cast<int>(ten_blocks)) {
       ten_blocks = ten_blocks - block_shifts;
       five_blocks = block_shifts;


        


More information about the libc-commits mailing list