]> git.sur5r.net Git - cc65/blob - test/val/call1.c
Fixed _textcolor definition.
[cc65] / test / val / call1.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 uint0 = 0;
18 unsigned int uint1 = 0;
19 unsigned char uchar0 = 0;
20 unsigned char uchar1 = 0;
21
22 unsigned char call3 (void);
23
24 void
25 done ()
26 {
27   dummy++;
28 }
29
30 void
31 call1 (unsigned char uc0)
32 {
33   if (uc0)
34     failures++;
35 }
36
37 void
38 call2 (unsigned int ui0)
39 {
40   if (ui0)
41     failures++;
42 }
43
44 unsigned char
45 call3 (void)
46 {
47   if (uchar0)
48     failures++;
49
50   return (failures);
51 }
52
53 unsigned int
54 call4 (void)
55 {
56   unsigned int i = 0;
57
58   if (uint0)
59     i++;
60
61   return (i);
62 }
63
64 unsigned int
65 call5 (unsigned int k)
66 {
67   if (k)
68     failures++;
69
70   return (k);
71 }
72
73 unsigned char 
74 call6a(unsigned char uc)
75 {
76   if(uc>uchar1)
77     return 1;
78   else
79     return 0;
80 }
81
82 unsigned char
83 call6(unsigned char uc)
84 {
85   return(call6a(uc));
86 }
87
88 unsigned int 
89 call7a(unsigned int ui)
90 {
91   if(ui)
92     return 1;
93   else
94     return 0;
95 }
96
97 unsigned int
98 call7(unsigned int ui)
99 {
100   return(call7a(ui));
101 }
102
103 unsigned char
104 call8(unsigned char uc1,unsigned char uc2)
105 {
106   return uc1+uc2;
107 }
108
109 void call9(unsigned int ui1, unsigned int ui2)
110 {
111   if(ui1 != 0x1234)
112     failures++;
113   if(ui2 != 0x5678)
114     failures++;
115 }
116
117 int
118 main (void)
119 {
120   call1 (uchar0);
121   call2 (uint0);
122   uchar1 = call3 ();
123   uint1 = call4 ();
124   if (uint1)
125     failures++;
126
127   uint1 = call5 (uint0);
128   if (uint1)
129     failures++;
130
131   if(call6(uchar0))
132     failures++;
133
134   if(call7(0))
135     failures++;
136
137   if(!call7(1))
138     failures++;
139
140   if(!call7(0xff00))
141     failures++;
142
143   uchar0=4;
144   uchar1=3;
145   uchar0 = call8(uchar0,uchar1);
146
147   if(uchar0 != 7)
148     failures++;
149
150   call9(0x1234,0x5678);
151
152   success = failures;
153   done ();
154   printf("failures: %d\n",failures);
155
156   return failures;
157 }