]> git.sur5r.net Git - cc65/blob - test/val/while.c
All regression-tests subdirectories are cleaned before the first test starts, so...
[cc65] / test / val / while.c
1 /*
2   !!DESCRIPTION!!
3   !!ORIGIN!!      SDCC regression tests
4   !!LICENCE!!     GPL, read COPYING.GPL
5 */
6
7 #include <stdio.h>
8 #include <limits.h>
9
10 unsigned char success = 0;
11 unsigned char failures = 0;
12 unsigned char dummy = 0;
13
14 #ifdef SUPPORT_BIT_TYPES
15 bit bit0 = 0;
16 #endif
17 unsigned int aint0 = 0;
18 unsigned int aint1 = 0;
19 unsigned char achar0 = 0;
20 unsigned char achar1 = 0;
21
22 void
23 done ()
24 {
25   dummy++;
26 }
27
28 void
29 while1 (void)
30 {
31   unsigned char i = 10;
32
33   do
34     {
35       achar0++;
36     }
37   while (--i);
38
39   if (achar0 != 10)
40     failures++;
41 }
42
43 int
44 main (void)
45 {
46   while1 ();
47
48   success = failures;
49   done ();
50   printf("failures: %d\n",failures);
51
52   return failures;
53 }