From 7370b0b3f0308aec2a32012eddb2f0761d5fe399 Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Sun, 5 Dec 2010 01:25:11 -0800 Subject: Use AC_LANG_PROGRAM in XORG_CHECK_MALLOC_ZERO to clear autoconf-2.68 warnings configure.ac:126: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body ../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from... ../../lib/autoconf/general.m4:2730: _AC_RUN_IFELSE is expanded from... ../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from... ../../lib/autoconf/general.m4:2749: AC_RUN_IFELSE is expanded from... aclocal.m4:1952: XORG_CHECK_MALLOC_ZERO is expanded from... configure.ac:126: the top level Also, calloc() takes two arguments; and all of them return void *, not char *; as the compiler points out when you #include instead of faking it badly. (And sometimes when you don't, due to compiler builtin versions of the functions.) Signed-off-by: Alan Coopersmith Reviewed-by: Matt Turner Reviewed-by: Dan Nicholson Reviewed-by: Gaetan Nadon --- xorg-macros.m4.in | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/xorg-macros.m4.in b/xorg-macros.m4.in index fe29881..c7df523 100644 --- a/xorg-macros.m4.in +++ b/xorg-macros.m4.in @@ -904,18 +904,16 @@ AC_ARG_ENABLE(malloc0returnsnull, AC_MSG_CHECKING([whether malloc(0) returns NULL]) if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then - AC_RUN_IFELSE([ -char *malloc(); -char *realloc(); -char *calloc(); -main() { + AC_RUN_IFELSE([AC_LANG_PROGRAM([ +#include +],[ char *m0, *r0, *c0, *p; m0 = malloc(0); p = malloc(10); r0 = realloc(p,0); - c0 = calloc(0); - exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1); -}], + c0 = calloc(0,10); + exit((m0 == 0 || r0 == 0 || c0 == 0) ? 0 : 1); +])], [MALLOC_ZERO_RETURNS_NULL=yes], [MALLOC_ZERO_RETURNS_NULL=no], [MALLOC_ZERO_RETURNS_NULL=yes]) -- cgit v1.2.3