2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / 950612-1.c
blobf9885279c33a15191ddac912e98cd5ae615451ad
1 unsigned int
2 f1 (int diff)
4 return ((unsigned int) (diff < 0 ? -diff : diff));
7 unsigned int
8 f2 (unsigned int diff)
10 return ((unsigned int) ((signed int) diff < 0 ? -diff : diff));
13 unsigned long long
14 f3 (long long diff)
16 return ((unsigned long long) (diff < 0 ? -diff : diff));
19 unsigned long long
20 f4 (unsigned long long diff)
22 return ((unsigned long long) ((signed long long) diff < 0 ? -diff : diff));
25 main ()
27 int i;
28 for (i = 0; i <= 10; i++)
30 if (f1 (i) != i)
31 abort ();
32 if (f1 (-i) != i)
33 abort ();
34 if (f2 (i) != i)
35 abort ();
36 if (f2 (-i) != i)
37 abort ();
38 if (f3 ((long long) i) != i)
39 abort ();
40 if (f3 ((long long) -i) != i)
41 abort ();
42 if (f4 ((long long) i) != i)
43 abort ();
44 if (f4 ((long long) -i) != i)
45 abort ();
47 exit (0);