2000-10-20 Jason Merrill <jason@redhat.com>
* error.c (dump_expr): Use host_integerp.
2000-08-18 Nathan Sidwell <nathan@codesourcery.com>
* error.c (dump_expr): Correctly negate integer constant.
--- gcc/cp/error.c.jj Mon Jul 10 09:43:58 2000
+++ gcc/cp/error.c Wed Nov 29 15:01:13 2000
@@ -1485,16 +1485,16 @@ dump_expr (t, flags)
dump_char (tree_low_cst (t, 0));
OB_PUTC ('\'');
}
- else if ((unsigned HOST_WIDE_INT) TREE_INT_CST_HIGH (t)
- != (TREE_INT_CST_LOW (t) >> (HOST_BITS_PER_WIDE_INT - 1)))
+ else if (! host_integerp (t, 0))
{
tree val = t;
if (tree_int_cst_sgn (val) < 0)
{
OB_PUTC ('-');
- val = build_int_2 (~TREE_INT_CST_LOW (val),
- -TREE_INT_CST_HIGH (val));
+ val = build_int_2 (-TREE_INT_CST_LOW (val),
+ ~TREE_INT_CST_HIGH (val)
+ + !TREE_INT_CST_LOW (val));
}
/* Would "%x%0*x" or "%x%*0x" get zero-padding on all
systems? */