On Wed, May 28, 2014 at 04:00:32PM +0200, Jakub Jelinek wrote: > Defining HOST_WIDE_INT to long long or long based on whether long is 64-bit > or not, but using PRIx64 etc. unconditionally is just wrong, either > HOST_WIDE_INT should be uint64_t and then you should use PRI*64, or it is > not, and then you should keep using what has been used in the past, > different macros depending on how HOST_WIDE_INT is defined.
And, note that even the fallback PRI*64 definitions if not defined in system headers already probably need to depend on autoconf test finding out whether uint64_t is unsigned long or unsigned long long (and failing otherwise, unless PRI*64 is defined in the headers). Guess the test can easily try to compile some proglet with a template to find out what uint64_t is. Jakub