]> arthur.barton.de Git - bup.git/commitdiff
Drop builtin_mul_overflow in favor of INT_MULTIPLY_OK
authorRob Browning <rlb@defaultvalue.org>
Sun, 3 Oct 2021 19:21:27 +0000 (14:21 -0500)
committerRob Browning <rlb@defaultvalue.org>
Sat, 9 Oct 2021 17:09:15 +0000 (12:09 -0500)
Now that we have intprops.h drop built_mul_overflow (since intpropos.h
should use it when available).

Signed-off-by: Rob Browning <rlb@defaultvalue.org>
config/configure
lib/bup/_helpers.c

index f1faa6e8a74cc735eec0d267a734cca761837445..85495ae2507ae2b0bdd70e8ec90e33e0f1449f8c 100755 (executable)
@@ -165,24 +165,6 @@ fi
 AC_CHECK_FUNCS utimes
 AC_CHECK_FUNCS lutimes
 
-builtin_mul_overflow_code="
-#include <stddef.h>
-int main(int argc, char **argv)
-{
-    size_t n = 0, size = 0, total;
-    __builtin_mul_overflow(n, size, &total);
-    return 0;
-}
-"
-
-TLOGN "checking for __builtin_mul_overflow"
-if bup_try_c_code "$builtin_mul_overflow_code"; then
-    AC_DEFINE BUP_HAVE_BUILTIN_MUL_OVERFLOW 1
-    TLOG ' (found)'
-else
-    TLOG ' (not found)'
-fi
-
 
 AC_CHECK_FUNCS mincore
 
index cb5e934faa656ed897e590c30b84301d13300887..391597ff04a6eba86d1a253b7d310a396bf30245 100644 (file)
@@ -125,16 +125,10 @@ static void *checked_calloc(size_t n, size_t size)
     return result;
 }
 
-#ifndef BUP_HAVE_BUILTIN_MUL_OVERFLOW
-
-#define checked_malloc checked_calloc
-
-#else // defined BUP_HAVE_BUILTIN_MUL_OVERFLOW
-
 static void *checked_malloc(size_t n, size_t size)
 {
     size_t total;
-    if (__builtin_mul_overflow(n, size, &total))
+    if (!INT_MULTIPLY_OK(n, size, &total))
     {
         PyErr_Format(PyExc_OverflowError,
                      "request to allocate %zu items of size %zu is too large",
@@ -147,8 +141,6 @@ static void *checked_malloc(size_t n, size_t size)
     return result;
 }
 
-#endif // defined BUP_HAVE_BUILTIN_MUL_OVERFLOW
-
 
 #ifndef htonll
 // This function should technically be macro'd out if it's going to be used