From: Jim Meyering Date: Fri, 9 Feb 2001 15:04:06 +0000 (+0000) Subject: (AC_SYS_LARGEFILE_TEST_INCLUDES): Don't reject X-Git-Tag: autoconf-2.50~147 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=07c8c30ab3b03ded33e1a4a80f4f97dc0fad8102;p=thirdparty%2Fautoconf.git (AC_SYS_LARGEFILE_TEST_INCLUDES): Don't reject C++ compilers that are masquerading as C compilers, and that incorrectly reject large integers. From Paul Eggert. --- diff --git a/acspecific.m4 b/acspecific.m4 index 9d4305c68..8c75c8c01 100644 --- a/acspecific.m4 +++ b/acspecific.m4 @@ -356,7 +356,14 @@ with arguments. Remove this warning when you adjust your code.])]) # ------------------------------- m4_define([_AC_SYS_LARGEFILE_TEST_INCLUDES], [@%:@include -int a[[(off_t) 9223372036854775807ULL == 9223372036854775807ULL ? 1 : -1]];[]dnl + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]];[]dnl ]) diff --git a/lib/autoconf/specific.m4 b/lib/autoconf/specific.m4 index 9d4305c68..8c75c8c01 100644 --- a/lib/autoconf/specific.m4 +++ b/lib/autoconf/specific.m4 @@ -356,7 +356,14 @@ with arguments. Remove this warning when you adjust your code.])]) # ------------------------------- m4_define([_AC_SYS_LARGEFILE_TEST_INCLUDES], [@%:@include -int a[[(off_t) 9223372036854775807ULL == 9223372036854775807ULL ? 1 : -1]];[]dnl + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]];[]dnl ])