Mercurial > hg > octave-kai > gnulib-hg
changeset 14015:41026f5e29c1
stdint: avoid HP-UX 10.20 preprocessor bug
* lib/stdint.in.h (INT64_MAX, UINT64_MAX): Check via #ifdef rather
than #if.
* tests/test-floor2.c (main): Likewise.
Reported by Peter O'Gorman.
Signed-off-by: Eric Blake <eblake@redhat.com>
author | Eric Blake <eblake@redhat.com> |
---|---|
date | Fri, 24 Dec 2010 13:39:50 -0700 |
parents | d02ecbcfc84d |
children | fdade8a28ed5 |
files | ChangeLog lib/stdint.in.h tests/test-floor2.c |
diffstat | 3 files changed, 11 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2010-12-24 Eric Blake <eblake@redhat.com> + stdint: avoid HP-UX 10.20 preprocessor bug + * lib/stdint.in.h (INT64_MAX, UINT64_MAX): Check via #ifdef rather + than #if. + * tests/test-floor2.c (main): Likewise. + Reported by Peter O'Gorman. + pipe: make obsoletion transition easier * lib/pipe.h: Restore file as thin shim around "spawn-pipe.h". * modules/pipe (Files): Include revived file.
--- a/lib/stdint.in.h +++ b/lib/stdint.in.h @@ -137,9 +137,10 @@ /* If the system defines INT64_MAX, assume int64_t works. That way, if the underlying platform defines int64_t to be a 64-bit long long int, the code below won't mistakenly define it to be a 64-bit long - int, which would mess up C++ name mangling. */ + int, which would mess up C++ name mangling. We must use #ifdef + rather than #if, to avoid an error with HP-UX 10.20 cc. */ -#if INT64_MAX +#ifdef INT64_MAX # define GL_INT64_T #else /* Do not undefine int64_t if gnulib is not being used with 64-bit @@ -162,7 +163,7 @@ # endif #endif -#if UINT64_MAX +#ifdef UINT64_MAX # define GL_UINT64_T #else # if ULONG_MAX >> 31 >> 31 >> 1 == 1