Hello,
The problem is in the deflateCopy function in deflate.c (~line 623):
*ds = *ss;
This assigns a structure to another structure, using an internal copy loop (generated by the compiler). I will fix this, but as a work-around, change the code to something like this:
memcpy(ds, ss, sizeof(*ds));
(The basic problem is that ARM is a RISC processor, where all instructions are 32 bits, and some bits are used to encode the instruction itself. This means that some constants won't fit, and needs special treatment. The internal copy loop is not frequently used, so I have missed the case with "impossible" values here...)
Pelle