2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / 20031011-1.c
blob9aa40b8a08d608cc02cf6d98fb163b791ce379a3
1 /* Check that MAX_EXPR and MIN_EXPR are working properly. */
3 #define MAX(X,Y) ((X) > (Y) ? (X) : (Y))
4 #define MIN(X,Y) ((X) < (Y) ? (X) : (Y))
6 extern void abort (void);
8 int main()
10 int ll_bitsize, ll_bitpos;
11 int rl_bitsize, rl_bitpos;
12 int end_bit;
14 ll_bitpos = 32; ll_bitsize = 32;
15 rl_bitpos = 0; rl_bitsize = 32;
17 end_bit = MAX (ll_bitpos + ll_bitsize, rl_bitpos + rl_bitsize);
18 if (end_bit != 64)
19 abort ();
20 end_bit = MAX (rl_bitpos + rl_bitsize, ll_bitpos + ll_bitsize);
21 if (end_bit != 64)
22 abort ();
23 end_bit = MIN (ll_bitpos + ll_bitsize, rl_bitpos + rl_bitsize);
24 if (end_bit != 32)
25 abort ();
26 end_bit = MIN (rl_bitpos + rl_bitsize, ll_bitpos + ll_bitsize);
27 if (end_bit != 32)
28 abort ();
29 return 0;