Steve Tell fixed a nested for-loop bug in the PIC Port
[fw/sdcc] / src / regression / b.c
1 #define __16F873
2 #include "p16f873.h"
3
4 unsigned char failures = 0;
5 unsigned char dummy = 0;
6
7 unsigned char uchar0=0;
8 unsigned char uchar1=0;
9 unsigned char uchar2=0;
10
11
12 void done(void)
13 {
14   dummy++;
15 }
16 /*
17 void incptr(unsigned char *ucP)
18 {
19   *ucP = *ucP + 1;
20 }
21 */
22
23 void inc(unsigned char k)
24 {
25   uchar0 = uchar0 + k;
26 }
27
28 void f1(void)
29 {
30
31   uchar2++;
32 }
33
34 void nested_call(unsigned char u)
35 {
36
37   f1();
38   uchar1 = uchar1 + u;
39   inc(uchar1);
40
41 }
42   //  uchar1 = uchar1 + uchar0;
43   //  uchar2 = uchar1 + k;
44
45 void main(void)
46 {
47
48   uchar0=1;
49   //incptr(&uchar0);
50   inc(uchar0);
51   if(uchar0 !=2)
52     failures++;
53
54   uchar0 = 2;
55   uchar1 = 1;
56   uchar2 = 1;
57   nested_call(uchar2);
58
59   if(uchar0 !=4)
60     failures++;
61
62   done();
63 }