Bruno Haible wrote:
If you can't cast from 'void *' to 'uintptr_t' and back, the language is no
longer C any more.
Not really. C has been like that ever since uintptr_t was introduced back in
C99, as uintptr_t has always been optional. Even when uintptr_t is present I
doubt whether gcc -fcheck-pointer-bounds is the only implementation where
arithmetic on uintptr_t does not work as it does in the classic
flat-address-space model. It would be nicer if Gnulib worked on these
implementations, as they do conform to the standard.
That being said, I'm not planning to worry about this any more unless it affects
the applications I help maintain. As long as Coreutils, GNU Emacs etc. do not
use the modules or do not run into problems on any of the platforms that I check
occasionally, it's not that big of a deal.