Cast both sides of the conditional expression. Still covered by same
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 20 Jan 2007 04:51:07 +0000 (04:51 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 20 Jan 2007 04:51:07 +0000 (04:51 +0000)
ChangeLog entry--nothing was checked in since last change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120997 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/expmed.c

index 58b6a63..fea859a 100644 (file)
@@ -4176,7 +4176,9 @@ expand_divmod (int rem_flag, enum tree_code code, enum machine_mode mode,
                HOST_WIDE_INT d = INTVAL (op1);
                unsigned HOST_WIDE_INT abs_d;
 
-               abs_d = d >= 0 ? d : - (unsigned HOST_WIDE_INT) d;
+               abs_d = (d >= 0
+                        ? (unsigned HOST_WIDE_INT) d
+                        : - (unsigned HOST_WIDE_INT) d);
 
                /* n rem d = n rem -d */
                if (rem_flag && d < 0)