|
From: | Bruno Haible |
Subject: | assume that the compiler supports 'long long' |
Date: | Sun, 22 Dec 2019 10:41:28 +0100 |
User-agent: | KMail/5.1.3 (Linux/4.4.0-166-generic; KDE/5.18.0; x86_64; ; ) |
It's now time to assume that all compilers supported by Gnulib support 'long long': - 64-bit platforms are commonplace since 2004 approximately (namely x86_64), - ISO C11 ยง 6.2.5 specifies 'long long int'. - MSVC supports 'long long' since MSVC 14 (2015). This shouldn't come as a surprise, since I've mentioned this plan already in <https://lists.gnu.org/archive/html/bug-gnulib/2019-12/msg00141.html>. 2019-12-22 Bruno Haible <address@hidden> longlong: Mark module obsolete. * modules/longlong (Status, Notice): New sections. stdint: Assume that the compiler supports 'long long'. * lib/stdint.in.h (int64_t, uint64_t, intmax_t, uintmax_t, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C): Assume HAVE_LONG_LONG_INT and HAVE_UNSIGNED_LONG_LONG_INT to be 1. * m4/stdint.m4 (gl_STDINT_H): Don't require AC_TYPE_LONG_LONG_INT, AC_TYPE_UNSIGNED_LONG_LONG_INT. * modules/stdint (Files): Remove longlong.m4. (Makefile.am): Don't substitute HAVE_LONG_LONG_INT, HAVE_UNSIGNED_LONG_LONG_INT. inttypes-incomplete: Assume that the compiler supports 'long long'. * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Assume HAVE_LONG_LONG_INT and HAVE_UNSIGNED_LONG_LONG_INT to be 1. * m4/inttypes.m4 (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): Assume HAVE_LONG_LONG_INT to be 1. * modules/inttypes-incomplete (Makefile.am): Don't substitute HAVE_LONG_LONG_INT, HAVE_UNSIGNED_LONG_LONG_INT. malloca: Assume that the compiler supports 'long long'. * lib/malloca.h: Assume HAVE_LONG_LONG_INT to be 1. * m4/malloca.m4 (gl_MALLOCA): Don't require AC_TYPE_LONG_LONG_INT. * modules/malloca (Files): Remove longlong.m4. * modules/relocatable-prog-wrapper (Files): Likewise. atoll: Assume that the compiler supports 'long long'. * m4/atoll.m4 (gl_FUNC_ATOLL): Don't require AC_TYPE_LONG_LONG_INT. * modules/atoll (Files): Remove longlong.m4. strtoll: Assume that the compiler supports 'long long'. * m4/strtoll.m4 (gl_FUNC_STRTOLL): Don't require AC_TYPE_LONG_LONG_INT. * modules/strtoll (Files): Remove longlong.m4. strtoull: Assume that the compiler supports 'long long'. * m4/strtoull.m4 (gl_FUNC_STRTOULL): Don't require AC_TYPE_UNSIGNED_LONG_LONG_INT. * modules/strtoull (Files): Remove longlong.m4. strtoimax, strtoumax: Assume that the compiler supports 'long long'. * lib/strtoimax.c: Assume HAVE_LONG_LONG_INT and HAVE_UNSIGNED_LONG_LONG_INT to be 1. * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Don't require AC_TYPE_LONG_LONG_INT. * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't require AC_TYPE_UNSIGNED_LONG_LONG_INT. * modules/strtoimax (Files): Remove longlong.m4. * modules/strtoumax (Files): Likewise. xstrtoll: Assume that the compiler supports 'long long'. * lib/xstrtol.h (xstrtoll, xstrtoull): Declare unconditionally. * modules/xstrtoll (configure.ac): Don't invoke AC_TYPE_LONG_LONG_INT. vasnprintf: Assume that the compiler supports 'long long'. * lib/printf-args.h: Assume HAVE_LONG_LONG_INT to be 1. * lib/printf-args.c (PRINTF_FETCHARGS): Likewise. * lib/printf-parse.c (PRINTF_PARSE): Likewise. * lib/vasnprintf.c (MAX_ROOM_NEEDED, VASNPRINTF): Likewise. * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Don't require AC_TYPE_LONG_LONG_INT. * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE, gl_PREREQ_VASNPRINTF): Likewise. * modules/vasnprintf (Files): Remove longlong.m4. * modules/c-vasnprintf (Files): Likewise. * modules/unistdio/u8-vasnprintf (Files): Likewise. * modules/unistdio/u8-u8-vasnprintf (Files): Likewise. * modules/unistdio/u16-vasnprintf (Files): Likewise. * modules/unistdio/u16-u16-vasnprintf (Files): Likewise. * modules/unistdio/u32-vasnprintf (Files): Likewise. * modules/unistdio/u32-u32-vasnprintf (Files): Likewise. * modules/unistdio/ulc-vasnprintf (Files): Likewise. gethrxtime: Assume that the compiler supports 'long long'. * lib/xtime.h (xtime_t): Define to 'long long int' always. (XTIME_PRECISION): Define to 1000000000 always. (xtime_make, xtime_sec): Optimize accordingly. * m4/gethrxtime.m4 (gl_XTIME): Don't require AC_TYPE_LONG_LONG_INT. * modules/gethrxtime (Files): Remove longlong.m4. integer_length*: Assume that the compiler supports 'long long'. * lib/integer_length.h (integer_length_ll): Declare unconditionally. * modules/integer_length (Files): Remove longlong.m4. (configure.ac): Don't require AC_TYPE_UNSIGNED_LONG_LONG_INT. * modules/integer_length_l (Files): Remove longlong.m4. (configure.ac): Don't require AC_TYPE_UNSIGNED_LONG_LONG_INT. * modules/integer_length_ll (Files): Remove longlong.m4. (configure.ac): Don't require AC_TYPE_UNSIGNED_LONG_LONG_INT. count-one-bits: Assume that the compiler supports 'long long'. * lib/count-one-bits.h (count_one_bits_ll): Define unconditionally. * m4/count-one-bits.m4: Remove file. * modules/count-one-bits (Files): Remove it. (configure.ac): Don't invoke gl_COUNT_ONE_BITS. * tests/test-count-one-bits.c (main): Test count_one_bits_ll unconditionally. count-trailing-zeros: Assume that the compiler supports 'long long'. * lib/count-trailing-zeros.h (count_trailing_zeros_ll): Define unconditionally. * m4/count-trailing-zeros.m4: Remove file. * modules/count-trailing-zeros (Files): Remove it. (configure.ac): Don't invoke gl_COUNT_TRAILING_ZEROS. * tests/test-count-trailing-zeros.c (main): Test count_trailing_zeros_ll unconditionally. count-leading-zeros: Assume that the compiler supports 'long long'. * lib/count-leading-zeros.h (count_leading_zeros_ll): Define unconditionally. * m4/count-leading-zeros.m4: Remove file. * modules/count-leading-zeros (Files): Remove it. (configure.ac): Don't invoke gl_COUNT_LEADING_ZEROS. * tests/test-count-leading-zeros.c (main): Test count_leading_zeros_ll unconditionally.
0001-count-leading-zeros-Assume-that-the-compiler-support.patch
Description: Text Data
0002-count-trailing-zeros-Assume-that-the-compiler-suppor.patch
Description: Text Data
0003-count-one-bits-Assume-that-the-compiler-supports-lon.patch
Description: Text Data
0004-integer_length-Assume-that-the-compiler-supports-lon.patch
Description: Text Data
0005-gethrxtime-Assume-that-the-compiler-supports-long-lo.patch
Description: Text Data
0006-vasnprintf-Assume-that-the-compiler-supports-long-lo.patch
Description: Text Data
0007-xstrtoll-Assume-that-the-compiler-supports-long-long.patch
Description: Text Data
0008-strtoimax-strtoumax-Assume-that-the-compiler-support.patch
Description: Text Data
0009-strtoull-Assume-that-the-compiler-supports-long-long.patch
Description: Text Data
0010-strtoll-Assume-that-the-compiler-supports-long-long.patch
Description: Text Data
0011-atoll-Assume-that-the-compiler-supports-long-long.patch
Description: Text Data
0012-malloca-Assume-that-the-compiler-supports-long-long.patch
Description: Text Data
0013-inttypes-incomplete-Assume-that-the-compiler-support.patch
Description: Text Data
0014-stdint-Assume-that-the-compiler-supports-long-long.patch
Description: Text Data
0015-longlong-Mark-module-obsolete.patch
Description: Text Data
[Prev in Thread] | Current Thread | [Next in Thread] |