blob: e0c03d2a0eeeb1434bb04413d3f755ec4a4d4313 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
/*
bug-2124.c
*/
#include <testfwk.h>
#if !defined(__SDCC_pdk14) && !defined(__SDCC_pdk15)
typedef int (*DT)(int);
unsigned int f1(unsigned int c)
{
return c + 1;
}
int f2(int c)
{
return c + 2;
}
DT gpfunc[] = {(DT) f1, f2};
#endif
void testBug (void)
{
#if !defined(__SDCC_pdk14) && !defined(__SDCC_pdk15)
DT lpfunc[] = {(DT) f1, f2};
DT spfunc[] = {f2, (DT) f1};
ASSERT (gpfunc[0](0x55) == 0x56);
ASSERT (gpfunc[1](0x66) == 0x68);
ASSERT (lpfunc[0](0x77) == 0x78);
ASSERT (lpfunc[1](0x44) == 0x46);
ASSERT (spfunc[0](0x11) == 0x13);
ASSERT (spfunc[1](0x22) == 0x23);
#endif
}
|