blob: e23059a078ca13737c5c5462b6817a11d959e673 [file] [log] [blame]
/* { dg-do run } */
/* { dg-options "-ftrapv" } */
extern void abort (void);
unsigned long
foo (long i, long j)
{
/* We may not fold this to (unsigned long)(i * j). */
return -(unsigned long)(i * -j);
}
int main()
{
if (foo (-__LONG_MAX__ - 1, -1) != -(unsigned long)(-__LONG_MAX__ - 1))
abort ();
return 0;
}