[libc-commits] [libc] [libc] Fix implicit conversion error on rv32 (PR #138622)
Mikhail R. Gadelha via libc-commits
libc-commits at lists.llvm.org
Mon May 5 18:30:46 PDT 2025
https://github.com/mikhailramalho created https://github.com/llvm/llvm-project/pull/138622
This patch fixes the following error on rv32 (and possibly other 32-bit archs):
FPBits.h:760:40: error: implicit conversion loses integer precision: 'int' to 'size_t' (aka 'unsigned int') [-Werror,-Wimplicit-int-conversion]
760 | result.set_significand(number >> -ep);
Fixes #138425.
>From 242322f63a6531111160962688e7d2e14acab353 Mon Sep 17 00:00:00 2001
From: "Mikhail R. Gadelha" <mikhail at igalia.com>
Date: Mon, 5 May 2025 20:11:17 -0300
Subject: [PATCH] [libc] Fix implicit conversion error on rv32
This patch fixes the following error on rv32 (and possibly other 32-bit
archs):
FPBits.h:760:40: error: implicit conversion loses integer precision: 'int' to 'size_t' (aka 'unsigned int') [-Werror,-Wimplicit-int-conversion]
760 | result.set_significand(number >> -ep);
Fixes #138425.
---
libc/src/__support/FPUtil/FPBits.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libc/src/__support/FPUtil/FPBits.h b/libc/src/__support/FPUtil/FPBits.h
index bee8d0a8dc47d..4fa3bc30ecd12 100644
--- a/libc/src/__support/FPUtil/FPBits.h
+++ b/libc/src/__support/FPUtil/FPBits.h
@@ -757,7 +757,7 @@ struct FPRepImpl : public FPRepSem<fp_type, RetT> {
result.set_significand(number);
result.set_biased_exponent(static_cast<StorageType>(ep + 1));
} else {
- result.set_significand(number >> -ep);
+ result.set_significand(number >> static_cast<unsigned>(-ep));
}
return RetT(result.uintval());
}
More information about the libc-commits
mailing list