Ensure that configure-script testing for compiler attributes actually works.
[asterisk/asterisk.git] / autoconf / ast_gcc_attribute.m4
index c448845..806b390 100644 (file)
@@ -5,12 +5,12 @@ AC_DEFUN([AST_GCC_ATTRIBUTE],
 [
 AC_MSG_CHECKING(for compiler 'attribute $1' support)
 saved_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS -Werror"
+CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
 if test "x$2" = "x"
 then
 AC_COMPILE_IFELSE(
-       AC_LANG_PROGRAM([void __attribute__(($1)) *test(void *muffin, ...) {}],
+       AC_LANG_PROGRAM([static void __attribute__(($1)) *test(void *muffin, ...) {return (void *) 0;}],
                        []),
        AC_MSG_RESULT(yes)
        AC_DEFINE_UNQUOTED([HAVE_ATTRIBUTE_$1], 1, [Define to 1 if your GCC C compiler supports the '$1' attribute.]),
@@ -18,7 +18,7 @@ AC_COMPILE_IFELSE(
 )
 else
 AC_COMPILE_IFELSE(
-       AC_LANG_PROGRAM([void __attribute__(($2)) *test(void *muffin, ...) {}],
+       AC_LANG_PROGRAM([static void __attribute__(($2)) *test(void *muffin, ...) {return (void *) 0;}],
                        []),
        AC_MSG_RESULT(yes)
        AC_DEFINE_UNQUOTED([HAVE_ATTRIBUTE_$1], 1, [Define to 1 if your GCC C compiler supports the '$1' attribute.]),