Avoid calling exit without declaring the function. Add missing include for memcpy. Use AC_TYPE_SIGNAL to fix REARM_SIG check. Add missing includes. Fix various implicit int return types of main. Submitted upstream here: diff --git a/configure.in b/configure.in index 51558fa14d2bcf7e..055c88fbd8797eaa 100755 --- a/configure.in +++ b/configure.in @@ -452,7 +452,11 @@ AC_CHECK_FUNC(siglongjmp, AC_DEFINE(HAVE_SIGLONGJMP)) # because Unixware 2.0 handles it specially and refuses to compile # autoconf's automatic test that is a call with no arguments AC_MSG_CHECKING([for memcpy]) -AC_TRY_LINK(,[ +AC_TRY_LINK([ +#ifdef HAVE_STRING_H +#include +#endif +],[ char *s1, *s2; memcpy(s1,s2,0); ], @@ -469,6 +473,7 @@ memcpy(s1,s2,0); AC_MSG_CHECKING([if WNOHANG requires _POSIX_SOURCE]) AC_TRY_RUN([ #include +int main() { #ifndef WNOHANG return 0; @@ -489,6 +494,7 @@ rm -rf wnohang AC_TRY_RUN([ #include #include +int main() { #ifdef WNOHANG FILE *fp = fopen("wnohang","w"); @@ -527,16 +533,21 @@ else AC_DEFINE(SELECT_MASK_TYPE, fd_set) fi -dnl # Check for the data type of the function used in signal(). This -dnl # must be before the test for rearming. -dnl # echo checking return type of signal handlers -dnl AC_HEADER_EGREP([(void|sighandler_t).*signal], signal.h, retsigtype=void,AC_DEFINE(RETSIGTYPE, int) retsigtype=int) +AC_TYPE_SIGNAL # FIXME: check if alarm exists AC_MSG_CHECKING([if signals need to be re-armed]) AC_TRY_RUN([ #include -#define RETSIGTYPE $retsigtype +#ifdef HAVE_STDLIB_H +# include +#endif +#ifdef HAVE_UNISTD_H +# include +#endif +#ifndef NO_SYS_WAIT_H +# include +#endif int signal_rearms = 0; @@ -553,6 +564,7 @@ int n; signal_rearms++; } +int main() { signal(SIGINT,parent_sigint_handler); @@ -714,10 +726,11 @@ fi AC_MSG_CHECKING([for struct sgttyb]) AC_TRY_RUN([ #include +int main() { struct sgttyb tmp; - exit(0); + return 0; }], AC_MSG_RESULT(yes) AC_DEFINE(HAVE_SGTTYB) @@ -738,10 +751,11 @@ if test $mach -eq 0 ; then # pty_termios.c is set up to handle pty_termio. AC_MSG_CHECKING([for struct termio]) AC_TRY_RUN([#include + int main() { struct termio tmp; - exit(0); + return 0; }], AC_DEFINE(HAVE_TERMIO) PTY_TYPE=termios @@ -760,10 +774,11 @@ if test $mach -eq 0 ; then # include # endif # include + int main() { struct termios tmp; - exit(0); + return 0; }], AC_DEFINE(HAVE_TERMIOS) PTY_TYPE=termios @@ -782,6 +797,7 @@ AC_TRY_RUN([ #include #endif #include +int main() { #if defined(TCGETS) || defined(TCGETA) return 0; @@ -804,6 +820,7 @@ AC_TRY_RUN([ #include #endif #include +int main() { #ifdef TIOCGWINSZ return 0; @@ -823,6 +840,7 @@ main() { AC_MSG_CHECKING([for Cray-style ptys]) SETUID=":" AC_TRY_RUN([ +int main(){ #ifdef CRAY return 0; @@ -878,12 +896,13 @@ AC_MSG_CHECKING([for SV-style timezone]) AC_TRY_RUN([ extern char *tzname[2]; extern int daylight; +int main() { int *x = &daylight; char **y = tzname; - exit(0); + return 0; }], AC_DEFINE(HAVE_SV_TIMEZONE) AC_MSG_RESULT(yes), diff --git a/tclconfig/tcl.m4 b/tclconfig/tcl.m4 index 0689cab3da994068..ebe839e5553ba520 100644 --- a/tclconfig/tcl.m4 +++ b/tclconfig/tcl.m4 @@ -2400,7 +2400,7 @@ AC_DEFUN([TEA_TIME_HANDLER], [ AC_TRY_COMPILE([#include ], [extern long timezone; timezone += 1; - exit (0);], + return 0;], tcl_cv_timezone_long=yes, tcl_cv_timezone_long=no)]) if test $tcl_cv_timezone_long = yes ; then AC_DEFINE(HAVE_TIMEZONE_VAR, 1, [Should we use the global timezone variable?]) @@ -2412,7 +2412,7 @@ AC_DEFUN([TEA_TIME_HANDLER], [ AC_TRY_COMPILE([#include ], [extern time_t timezone; timezone += 1; - exit (0);], + return 0;], tcl_cv_timezone_time=yes, tcl_cv_timezone_time=no)]) if test $tcl_cv_timezone_time = yes ; then AC_DEFINE(HAVE_TIMEZONE_VAR, 1, [Should we use the global timezone variable?]) @@ -2452,17 +2452,17 @@ AC_DEFUN([TEA_BUGGY_STRTOD], [ double value; value = strtod(infString, &term); if ((term != infString) && (term[-1] == 0)) { - exit(1); + return 1; } value = strtod(nanString, &term); if ((term != nanString) && (term[-1] == 0)) { - exit(1); + return 1; } value = strtod(spaceString, &term); if (term == (spaceString+1)) { - exit(1); + return 1; } - exit(0); + return 0; }], tcl_cv_strtod_buggy=ok, tcl_cv_strtod_buggy=buggy, tcl_cv_strtod_buggy=buggy)]) if test "$tcl_cv_strtod_buggy" = buggy; then