unsigned char raw;
unsigned char bytes;
union PACKET p1,*p2;
p2 = &p1;
p2->Len = 5;
p2->Dst = 6;
p2->Pro = 7;
p2->Src = 8;
The assignments to the bitfields in the union do not work.
The first byte is set to 6 and the second to 8.
I think the problem is in
static void genGenPointerSet() in src/pic16/gen.c
It seems not to take any account of the possibility of
the result being a bitfield and always assigns the
p1.Len = 5;
work fine !
I'de try and fix it, but pcode is a mystery at the moment.
SDCC : pic16/pic14 2.5.2 #1073 (Aug 1 2005) (UNIX)