Generic fixes for the configure script for C99 compatibility.  These
changes are already part of current autoconf and do not need to be
upstreamed separately.

diff --git a/aclocal.m4 b/aclocal.m4
index 345e600b35ab530a..630f383376f016f1 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -870,10 +870,6 @@ else
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -889,7 +885,7 @@ int main ()
   else
     puts (dlerror ());
 
-    exit (status);
+    return status;
 }]
 EOF
   if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
diff --git a/configure b/configure
index 175581ff2a37e615..d0fb8783e147654b 100755
--- a/configure
+++ b/configure
@@ -3431,7 +3431,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   for ac_declaration in \
-   '' \
+   '#include <stdlib.h>' \
    'extern "C" void std::exit (int) throw (); using std::exit;' \
    'extern "C" void std::exit (int); using std::exit;' \
    'extern "C" void exit (int) throw ();' \
@@ -5023,8 +5023,8 @@ main ()
   for (i = 0; i < 256; i++)
     if (XOR (islower (i), ISLOWER (i))
 	|| toupper (i) != TOUPPER (i))
-      exit(2);
-  exit (0);
+      return 2;
+  return 0;
 }
 _ACEOF
 rm -f conftest$ac_exeext
@@ -14000,10 +14000,6 @@ else
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -14019,7 +14015,7 @@ int main ()
   else
     puts (dlerror ());
 
-    exit (status);
+    return status;
 }
 EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -14100,10 +14096,6 @@ else
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -14119,7 +14111,7 @@ int main ()
   else
     puts (dlerror ());
 
-    exit (status);
+    return status;
 }
 EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
