$ sdcc -pp16f877a --opt-code-size -Ilibmain -DF_CPU=4000000 -mpic14 --use-non-free --Werror --fverbose-asm --std-sdcc99 -c -o libmain/timer.o libmain/timer.c
popGet: (offset[0] > AOP_SIZE(op)[0]-1) && AOP_TYPE(op) != AOP_LIT)
WARNING: encountered NULL pcop--this is probably a compiler bug...
popGet: (offset[0] > AOP_SIZE(op)[0]-1) && AOP_TYPE(op) != AOP_LIT)
popGet: (offset[0] > AOP_SIZE(op)[0]-1) && AOP_TYPE(op) != AOP_LIT)
popGet: (offset[0] > AOP_SIZE(op)[0]-1) && AOP_TYPE(op) != AOP_LIT)
popGet: (offset[0] > AOP_SIZE(op)[0]-1) && AOP_TYPE(op) != AOP_LIT)
popGet: (offset[1] > AOP_SIZE(op)[1]-1) && AOP_TYPE(op) != AOP_LIT)
popGet: (offset[0] > AOP_SIZE(op)[0]-1) && AOP_TYPE(op) != AOP_LIT)
popGet: (offset[0] > AOP_SIZE(op)[0]-1) && AOP_TYPE(op) != AOP_LIT)
popGet: (offset[0] > AOP_SIZE(op)[0]-1) && AOP_TYPE(op) != AOP_LIT)
Caught signal 11: SIGSEGV
$ sdcc -v
SDCC : mcs51/gbz80/z80/z180/r2k/r3ka/ds390/pic16/pic14/TININative/ds400/hc08/s08 3.2.0 #8008 (Jul 6 2012) (Linux)
add main.h