On Aug 25, 2013, at 11:29 AM, Richard Sandiford <[email protected]>
wrote:
> Looks like wide-int is just using BITS_PER_UNIT to get the number of
> bits in "char". That's a host thing, so it should be CHAR_BIT instead.
Oh, Kenny did point out one sin:
diff --git a/gcc/wide-int.cc b/gcc/wide-int.cc
index 37ce5b3..891c227 100644
--- a/gcc/wide-int.cc
+++ b/gcc/wide-int.cc
@@ -2056,7 +2056,7 @@ wide_int_ro::mul_internal (bool high, bool full,
/* The 2 is for a full mult. */
memset (r, 0, half_blocks_needed * 2
- * HOST_BITS_PER_HALF_WIDE_INT / BITS_PER_UNIT);
+ * HOST_BITS_PER_HALF_WIDE_INT / CHAR_BIT);
for (j = 0; j < half_blocks_needed; j++)
{
which I fixed.