From ec0624f9f988e86abf78d6ea0e4538f2acb060ce Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 27 Aug 2019 18:04:03 -0700 Subject: Revert macOS INT_MULTIPLY_WRAPV patch Problem reported by Bruno Haible in: https://lists.gnu.org/r/bug-gnulib/2019-08/msg00076.html * lib/intprops.h (_GL_HAS___builtin_mul_overflow): Remove. (_GL_HAS_BUILTIN_MUL_OVERFLOW): Go back to working around the Clang bug on macOS. --- ChangeLog | 9 +++++++++ lib/intprops.h | 13 +++++-------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 49a0ea4f1c..2d065ac05a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2019-08-27 Paul Eggert + + Revert macOS INT_MULTIPLY_WRAPV patch + Problem reported by Bruno Haible in: + https://lists.gnu.org/r/bug-gnulib/2019-08/msg00076.html + * lib/intprops.h (_GL_HAS___builtin_mul_overflow): Remove. + (_GL_HAS_BUILTIN_MUL_OVERFLOW): + Go back to working around the Clang bug on macOS. + 2019-08-27 Bruno Haible libtool-next-version: Fix error output. diff --git a/lib/intprops.h b/lib/intprops.h index 2cb6ada51b..ffd7370284 100644 --- a/lib/intprops.h +++ b/lib/intprops.h @@ -31,7 +31,6 @@ # else # define _GL_HAS___builtin_add_overflow 0 # endif -# define _GL_HAS___builtin_mul_overflow _GL_HAS___builtin_add_overflow # define _GL_TEMPDEF___has_builtin #endif @@ -241,13 +240,12 @@ # define _GL_HAS_BUILTIN_ADD_OVERFLOW 0 #endif -/* True if __builtin_mul_overflow (A, B, P) works when P is non-null. - Work around Clang bug . */ -#if (__has_builtin (__builtin_mul_overflow) \ - && (!defined __clang__ || (defined __APPLE__ && defined __MACH__))) -# define _GL_HAS_BUILTIN_MUL_OVERFLOW 1 -#else +/* True if __builtin_mul_overflow (A, B, P) works when P is non-null. */ +#ifdef __clang__ +/* Work around Clang bug . */ # define _GL_HAS_BUILTIN_MUL_OVERFLOW 0 +#else +# define _GL_HAS_BUILTIN_MUL_OVERFLOW _GL_HAS_BUILTIN_ADD_OVERFLOW #endif /* True if __builtin_add_overflow_p (A, B, C) works, and similarly for @@ -591,7 +589,6 @@ #ifdef _GL_TEMPDEF___has_builtin # undef __has_builtin # undef _GL_HAS___builtin_add_overflow -# undef _GL_HAS___builtin_mul_overflow # undef _GL_TEMPDEF___has_builtin #endif -- cgit v1.2.1