summaryrefslogtreecommitdiff
path: root/m4/realloc.m4
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2010-06-22 00:07:30 +0200
committerBruno Haible <bruno@clisp.org>2010-06-22 00:14:24 +0200
commit800b95c20c636e1bd2e0f1c5e1ce3f84b5089942 (patch)
treee677a8f546189643a6fef8c5c1a0d7f54962ab72 /m4/realloc.m4
parent3ac9b4577c78342bdd022b31cf56de2b12f7297b (diff)
downloadgnulib-800b95c20c636e1bd2e0f1c5e1ce3f84b5089942.tar.gz
Use modern idiom for realloc() replacement.
Diffstat (limited to 'm4/realloc.m4')
-rw-r--r--m4/realloc.m431
1 files changed, 26 insertions, 5 deletions
diff --git a/m4/realloc.m4 b/m4/realloc.m4
index dc30235c17..0b8855656b 100644
--- a/m4/realloc.m4
+++ b/m4/realloc.m4
@@ -1,23 +1,44 @@
-# realloc.m4 serial 9
+# realloc.m4 serial 10
dnl Copyright (C) 2007, 2009, 2010 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.
+# gl_FUNC_REALLOC_GNU
+# -------------------
+# Test whether 'realloc (0, 0)' is handled like in GNU libc, and replace
+# realloc if it is not.
+AC_DEFUN([gl_FUNC_REALLOC_GNU],
+[
+ AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
+ dnl _AC_FUNC_REALLOC_IF is defined in Autoconf.
+ _AC_FUNC_REALLOC_IF(
+ [AC_DEFINE([HAVE_REALLOC], [1],
+ [Define to 1 if your system has a GNU libc compatible 'realloc'
+ function, and to 0 otherwise.])],
+ [AC_DEFINE([HAVE_REALLOC], [0])
+ gl_REPLACE_REALLOC
+ ])
+])# gl_FUNC_REALLOC_GNU
+
# gl_FUNC_REALLOC_POSIX
# ---------------------
# Test whether 'realloc' is POSIX compliant (sets errno to ENOMEM when it
# fails), and replace realloc if it is not.
AC_DEFUN([gl_FUNC_REALLOC_POSIX],
[
+ AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
AC_REQUIRE([gl_CHECK_MALLOC_POSIX])
if test $gl_cv_func_malloc_posix = yes; then
- HAVE_REALLOC_POSIX=1
AC_DEFINE([HAVE_REALLOC_POSIX], [1],
[Define if the 'realloc' function is POSIX compliant.])
else
- AC_LIBOBJ([realloc])
- HAVE_REALLOC_POSIX=0
+ gl_REPLACE_REALLOC
fi
- AC_SUBST([HAVE_REALLOC_POSIX])
+])
+
+AC_DEFUN([gl_REPLACE_REALLOC],
+[
+ AC_LIBOBJ([realloc])
+ HAVE_REALLOC_POSIX=0
])