When compiling on a 64 bits plateform, tehre are a lot of warning "./zap.c:4000: warning: cast to pointer from integer of different size" (see attachment for details).
I guess this may come from 64 bits pointers being of different size than 32 bits one and require a cast from a long int instead of an int or something similar...
Result of "grep -C2 warning" on the make output.