I don't have an issue with using a stdint type for
this particular case, though we use 'long' going all
the way back to New Jersey, and probably won't actually
change our implementation now. However, it seems to
me that using ELF types would be more consistent, and less
confusing overall.
Perhaps the hash function should be written in terms of
the ELF types we've already established, Elf32_Word, and
Elf64_word. That keeps the discussion within the ELF world,
and doesn't require other standards.
Yes, Elf32_Word and Elf64_Word are really both the same thing,
and this does cause some initial confusion, but it's something
that anyone working with ELF needs to already understand. We
could simply document the hash with Elf32_Word, and mention
that this applies equally to ELF64.
Or, we could just leave it as 'long'. I suspect that the messiness
of these alternatives is probably why this wasn't fixed ages ago.
I'm being semi-facetious, but it really doesn't seem worse, and
it's a simpler story.
- Ali