aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.dg/ftrapv-3.c
blob: e23059a078ca13737c5c5462b6817a11d959e673 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* { 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;
}