The recent patch “Improve randomness of zic temp file names” used UINT_FAST64_MAX, which assumes C99. * private.h (UINT_FAST64_MAX): Define if not already defined. Reorganize the fallback a bit, to prefer long to long long if either will do. --- private.h | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/private.h b/private.h index b9d9765..aa6eb59 100644 --- a/private.h +++ b/private.h @@ -361,14 +361,13 @@ typedef unsigned long uint_fast32_t; #endif #ifndef UINT_FAST64_MAX -# ifdef ULLONG_MAX -typedef unsigned long long uint_fast64_t; +# if 3 <= ULONG_MAX >> 31 >> 31 +typedef unsigned long uint_fast64_t; +# define UINT_FAST64_MAX ULONG_MAX # else -# if ULONG_MAX >> 31 >> 1 < 0xffffffff -Please use a compiler that supports a 64-bit integer type (or wider); -you may need to compile with "-DHAVE_STDINT_H". -# endif -typedef unsigned long uint_fast64_t; +/* If this fails, compile with -DHAVE_STDINT_H or with a better compiler. */ +typedef unsigned long long uint_fast64_t; +# define UINT_FAST64_MAX ULLONG_MAX # endif #endif -- 2.38.1