Mercurial > hg > octave-lojdl > gnulib-hg
changeset 12991:1276be199c4c
Fix compilation error with Sun C.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sun, 14 Mar 2010 19:25:45 +0100 |
parents | bec1f52a7706 |
children | 4ca54426154c |
files | ChangeLog lib/strtol.c lib/xstrtoll.c lib/xstrtoull.c |
diffstat | 4 files changed, 22 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2010-03-14 Bruno Haible <bruno@clisp.org> + + Fix compilation error with Sun C. + * lib/strtol.c: Use LLONG_MIN instead of GCC specific LONG_LONG_MIN. + Use LLONG_MAX instead of GCC specific LONG_LONG_MAX. Use ULLONG_MAX + instead of GCC specific ULONG_LONG_MAX. + * lib/xstrtoll.c: Likewise. + * lib/xstrtoull.c: Likewise. + 2010-03-13 Bruno Haible <bruno@clisp.org> Allow the user to disable C++ code and tests.
--- a/lib/strtol.c +++ b/lib/strtol.c @@ -114,9 +114,9 @@ operating on `long long int's. */ #ifdef QUAD # define LONG long long -# define STRTOL_LONG_MIN LONG_LONG_MIN -# define STRTOL_LONG_MAX LONG_LONG_MAX -# define STRTOL_ULONG_MAX ULONG_LONG_MAX +# define STRTOL_LONG_MIN LLONG_MIN +# define STRTOL_LONG_MAX LLONG_MAX +# define STRTOL_ULONG_MAX ULLONG_MAX /* The extra casts in the following macros work around compiler bugs, e.g., in Cray C 5.0.3.0. */ @@ -147,19 +147,19 @@ ? (t) -1 \ : ~ (~ (t) 0 << (sizeof (t) * CHAR_BIT - 1)))) -# ifndef ULONG_LONG_MAX -# define ULONG_LONG_MAX TYPE_MAXIMUM (unsigned long long) +# ifndef ULLONG_MAX +# define ULLONG_MAX TYPE_MAXIMUM (unsigned long long) # endif -# ifndef LONG_LONG_MAX -# define LONG_LONG_MAX TYPE_MAXIMUM (long long int) +# ifndef LLONG_MAX +# define LLONG_MAX TYPE_MAXIMUM (long long int) # endif -# ifndef LONG_LONG_MIN -# define LONG_LONG_MIN TYPE_MINIMUM (long long int) +# ifndef LLONG_MIN +# define LLONG_MIN TYPE_MINIMUM (long long int) # endif # if __GNUC__ == 2 && __GNUC_MINOR__ < 7 /* Work around gcc bug with using this constant. */ - static const unsigned long long int maxquad = ULONG_LONG_MAX; + static const unsigned long long int maxquad = ULLONG_MAX; # undef STRTOL_ULONG_MAX # define STRTOL_ULONG_MAX maxquad # endif
--- a/lib/xstrtoll.c +++ b/lib/xstrtoll.c @@ -1,6 +1,6 @@ #define __strtol strtoll #define __strtol_t long long int #define __xstrtol xstrtoll -#define STRTOL_T_MINIMUM LONG_LONG_MIN -#define STRTOL_T_MAXIMUM LONG_LONG_MAX +#define STRTOL_T_MINIMUM LLONG_MIN +#define STRTOL_T_MAXIMUM LLONG_MAX #include "xstrtol.c"