------- Comment #1 from rguenth at gcc dot gnu dot org  2009-06-14 18:02 -------
Sth like

Index: gcc/tree.c
===================================================================
--- gcc/tree.c  (revision 148472)
+++ gcc/tree.c  (working copy)
@@ -8499,7 +8499,8 @@ widest_int_cst_value (const_tree x)

 #if HOST_BITS_PER_WIDEST_INT > HOST_BITS_PER_WIDE_INT
   gcc_assert (HOST_BITS_PER_WIDEST_INT >= 2 * HOST_BITS_PER_WIDE_INT);
-  val |= TREE_INT_CST_HIGH (x) << HOST_BITS_PER_WIDE_INT;
+  val |= (((unsigned HOST_WIDEST_INT)TREE_INT_CST_HIGH (x))
+         << HOST_BITS_PER_WIDE_INT);
 #else
   /* Make sure the sign-extended value will fit in a HOST_WIDE_INT.  */
   gcc_assert (TREE_INT_CST_HIGH (x) == 0

should fix this.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|middle-end                  |bootstrap
   GCC host triplet|                            |i386-unknown-freebsd8.0
 GCC target triplet|i?86-*-*                    |
           Keywords|build                       |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40439

Reply via email to