> To create a constant expression which evaluates to the most negative long > value (assuming, again, 32 bit, two's complement), you must write: > > -0x7FFFFFFF - 1 Point taken; it should be -0x7fffffff - 1 in the testcase. However, gcc doesn't really care; the problem is actually in check_dbra_loop.