Added more regression test to the pic port. Added support for <<, >>, ^
[fw/sdcc] / src / regression / pointer1.c
1 //#include "p16c84.h"
2 // Pointer tests
3
4 unsigned char success = 0;
5 unsigned char failures = 0;
6 unsigned char dummy = 0;
7
8 bit bit0 = 0;
9 unsigned int aint0 = 0;
10 unsigned int aint1 = 0;
11 unsigned char achar0 = 0;
12 unsigned char achar1 = 0;
13 unsigned char *acharP = 0;
14
15 void
16 done ()
17 {
18
19   dummy++;
20
21 }
22
23 void
24 f1 (unsigned char *ucP)
25 {
26
27   if (ucP == 0)
28     {
29       failures++;
30       return;
31     }
32
33   if (*ucP)
34     failures++;
35 }
36
37 void
38 f2 (unsigned int *uiP)
39 {
40
41   if (uiP == 0)
42     {
43       failures++;
44       return;
45     }
46
47   if (*uiP)
48     failures++;
49
50 }
51
52 unsigned char *
53 f3 (void)
54 {
55
56   return &achar0;
57 }
58
59 void
60 main (void)
61 {
62   f1 (&achar0);
63   f2 (&aint0);
64
65   acharP = f3 ();
66   if ((acharP == 0) || (*acharP))
67     failures++;
68
69   success = failures;
70   done ();
71 }