6 unsigned char f1(unsigned char c
) __z88dk_callee
11 unsigned int f2(unsigned int c
) __z88dk_callee
16 unsigned int f3(unsigned char c
, unsigned char d
) __z88dk_callee __smallc __reentrant
21 #if !defined(__SDCC_hc08) && !defined(__SDCC_s08) && !defined(__SDCC_mos6502) && !defined(__SDCC_mos65c02)
22 unsigned long int f4(unsigned long int c
) __z88dk_callee
24 unsigned long int f4(unsigned long int c
) __z88dk_callee __reentrant
30 unsigned char (*p1
)(unsigned char) __z88dk_callee
;
31 unsigned int (*p2
)(unsigned int) __z88dk_callee
;
32 unsigned int (*p3
)(unsigned char, unsigned char) __z88dk_callee __smallc __reentrant
;
33 #if !defined(__SDCC_hc08) && !defined(__SDCC_s08) && !defined(__SDCC_mos6502) && !defined(__SDCC_mos65c02)
34 unsigned long int (*p4
)(unsigned long int) __z88dk_callee
;
36 unsigned long int (*p4
)(unsigned long int) __z88dk_callee __reentrant
;
46 void g1(int i
) __z88dk_callee
49 g0(); // Tail call optimization needs to do extra work here, to avoid skipping stack cleanup.
55 #if !defined(__SDCC_pdk14) && !defined(__SDCC_pdk15)
56 ASSERT (f1 (23) == 24);
57 ASSERT (f2 (23) == 24);
58 ASSERT (f3 (23, 42) == 65);
59 ASSERT (f4 (23) == 24);
66 ASSERT ((*p1
) (23) == 24);
67 ASSERT ((*p2
) (23) == 24);
68 ASSERT ((*p3
) (23, 42) == 65);
69 ASSERT ((*p4
) (23) == 24);