On Tue, 16 Oct 2007 13:34:49 -0700, Paul Eggert <[EMAIL PROTECTED]> wrote:
> "H.Merijn Brand" <[EMAIL PROTECTED]> writes: > > > cpp: "xx.c", line 1: warning 2012: Unrepresentable preprocessor number > > 9223372036854775807LL > > I installed this patch into gnulib to catch the problem there, too. Can you give me a snapshot? I'll try again. If the build succeeds, I can run the test suite. I remember from 1.18 that it could not finish (on any of the HP-UX's), but I ran those in parallel with the GNU cpio tests, which might have been not the best of ideas. > 2007-10-16 Paul Eggert <[EMAIL PROTECTED]> > > Check for 64-bit int errors in HP-UX 10.20 preprocessor. > Problem reported by H.Merijn Brand in > <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>. > * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too. > * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise. > > diff --git a/m4/longlong.m4 b/m4/longlong.m4 > index 1f9e862..5799c39 100644 > --- a/m4/longlong.m4 > +++ b/m4/longlong.m4 > @@ -1,5 +1,5 @@ > -# longlong.m4 serial 10 > -dnl Copyright (C) 1999-2006 Free Software Foundation, Inc. > +# longlong.m4 serial 11 > +dnl Copyright (C) 1999-2007 Free Software Foundation, Inc. > dnl This file is free software; the Free Software Foundation > dnl gives unlimited permission to copy and/or distribute it, > dnl with or without modifications, as long as this notice is preserved. > @@ -7,8 +7,8 @@ dnl with or without modifications, as long as this notice is > preserved. > dnl From Paul Eggert. > > # Define HAVE_LONG_LONG_INT if 'long long int' works. > -# This fixes a bug in Autoconf 2.60, but can be removed once we > -# assume 2.61 everywhere. > +# This fixes a bug in Autoconf 2.61, but can be removed once we > +# assume 2.62 everywhere. > > # Note: If the type 'long long int' exists but is only 32 bits large > # (as on some very old compilers), HAVE_LONG_LONG_INT will not be > @@ -19,7 +19,10 @@ AC_DEFUN([AC_TYPE_LONG_LONG_INT], > AC_CACHE_CHECK([for long long int], [ac_cv_type_long_long_int], > [AC_LINK_IFELSE( > [AC_LANG_PROGRAM( > - [[long long int ll = 9223372036854775807ll; > + [[#if ! (-9223372036854775807LL < 0 && 0 < 9223372036854775807ll) > + error in preprocessor; > + #endif > + long long int ll = 9223372036854775807ll; > long long int nll = -9223372036854775807LL; > typedef int a[((-9223372036854775807LL < 0 > && 0 < 9223372036854775807ll) > diff --git a/m4/ulonglong.m4 b/m4/ulonglong.m4 > index 9fae98e..e980789 100644 > --- a/m4/ulonglong.m4 > +++ b/m4/ulonglong.m4 > @@ -1,5 +1,5 @@ > -# ulonglong.m4 serial 6 > -dnl Copyright (C) 1999-2006 Free Software Foundation, Inc. > +# ulonglong.m4 serial 7 > +dnl Copyright (C) 1999-2007 Free Software Foundation, Inc. > dnl This file is free software; the Free Software Foundation > dnl gives unlimited permission to copy and/or distribute it, > dnl with or without modifications, as long as this notice is preserved. > @@ -7,8 +7,8 @@ dnl with or without modifications, as long as this notice is > preserved. > dnl From Paul Eggert. > > # Define HAVE_UNSIGNED_LONG_LONG_INT if 'unsigned long long int' works. > -# This fixes a bug in Autoconf 2.60, but can be removed once we > -# assume 2.61 everywhere. > +# This fixes a bug in Autoconf 2.61, but can be removed once we > +# assume 2.62 everywhere. > > # Note: If the type 'unsigned long long int' exists but is only 32 bits > # large (as on some very old compilers), AC_TYPE_UNSIGNED_LONG_LONG_INT > @@ -21,7 +21,10 @@ AC_DEFUN([AC_TYPE_UNSIGNED_LONG_LONG_INT], > [ac_cv_type_unsigned_long_long_int], > [AC_LINK_IFELSE( > [AC_LANG_PROGRAM( > - [[unsigned long long int ull = 18446744073709551615ULL; > + [[#if ! (18446744073709551615ULL <= -1u) > + error in preprocessor; > + #endif > + unsigned long long int ull = 18446744073709551615ULL; > typedef int a[(18446744073709551615ULL <= (unsigned long long int) > -1 > ? 1 : -1)]; > int i = 63;]], > -- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using & porting perl 5.6.2, 5.8.x, 5.10.x on HP-UX 10.20, 11.00, 11.11, & 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin. http://qa.perl.org http://mirrors.develooper.com/hpux/ http://www.test-smoke.org http://www.goldmark.org/jeff/stupid-disclaimers/