[libc-commits] [libc] [libc] Fix implicit conversion error on rv32 (PR #138622)
via libc-commits
libc-commits at lists.llvm.org
Mon May 5 18:31:19 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libc
Author: Mikhail R. Gadelha (mikhailramalho)
<details>
<summary>Changes</summary>
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.
---
Full diff: https://github.com/llvm/llvm-project/pull/138622.diff
1 Files Affected:
- (modified) libc/src/__support/FPUtil/FPBits.h (+1-1)
``````````diff
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());
}
``````````
</details>
https://github.com/llvm/llvm-project/pull/138622
More information about the libc-commits
mailing list