Hi Robert,
in the end I managed to make a patch that works and a rather clean one in my view.
I'm afraid the patch can not be applied as is and should be splitted. Otherwise reviewing it is quite cumbersome, also if we find any bugs later finding out the culprit is going to be difficult. We'd better avoid that. Fortunately the patch is not that monolitic. In fact your own email describes how to split it:
- changed long to intptr_t and unsigned long to uintptr_t in all the hash code related files.
Looks like a logically complete and still small enough.
- change the char* bit size comparison with long to intptr_t in both autoconf/intparams.c and m4/intparams.m4
Same here.
- in types.h redefined 32 and 64 types in terms of (u)intptr_t if they match
Ditto (the corresponding hunk is not quite optimal, though. {s,u}int32 can be typedef'ed to {,u}int32_t => no need for ugly #if's). Could you please split the patch this way, and submit those 8 parts? Best regards, Alexei