Imported Upstream version 2.9.0
[debian/cc1111] / support / regression / tests / bug-1408066.c
1 /*
2    bug-136564.c0
3
4    loop induction
5 */
6
7 #include <testfwk.h>
8
9
10 void
11 testBackPatchLabel(void)
12 {
13   volatile unsigned char c0 = 0, c1 = 1;
14   unsigned char r;
15
16   if (     (c0 == 0)) r = 1; else r = 0; ASSERT(r == 1);
17   if (    !(c0 == 0)) r = 1; else r = 0; ASSERT(r == 0);
18   if (   !!(c0 == 0)) r = 1; else r = 0; ASSERT(r == 1);
19   if (  !!!(c0 == 0)) r = 1; else r = 0; ASSERT(r == 0);
20   if ( !!!!(c0 == 0)) r = 1; else r = 0; ASSERT(r == 1);
21   if (!!!!!(c0 == 0)) r = 1; else r = 0; ASSERT(r == 0);
22
23   if (     ((c0 == 0) && (c1 == 1))) r = 1; else r = 0; ASSERT(r == 1);
24   if (    !((c0 == 0) && (c1 == 1))) r = 1; else r = 0; ASSERT(r == 0);
25   if (   !!((c0 == 0) && (c1 == 1))) r = 1; else r = 0; ASSERT(r == 1);
26
27   if (     (  (c0 == 0) &&   (c1 == 1))) r = 1; else r = 0; ASSERT(r == 1);
28   if (    !( !(c0 == 1) &&  !(c1 == 0))) r = 1; else r = 0; ASSERT(r == 0);
29   if (   !!(!!(c0 == 0) && !!(c1 == 1))) r = 1; else r = 0; ASSERT(r == 1);
30 }