bpo-42598: Fix implicit function declarations in configure (GH-23690)

This is invalid in C99 and later and is an error with some compilers
(e.g. clang in Xcode 12), and can thus cause configure checks to
produce incorrect results.
This commit is contained in:
Joshua Root 2020-12-14 07:56:34 +11:00 committed by GitHub
parent 463c7d3d14
commit 674fa0a740
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 16 additions and 12 deletions

View file

@ -0,0 +1,2 @@
Fix implicit function declarations in configure which could have resulted in
incorrect configuration checks. Patch contributed by Joshua Root.

13
configure vendored
View file

@ -11108,10 +11108,10 @@ else
main() { main() {
pthread_attr_t attr; pthread_attr_t attr;
pthread_t id; pthread_t id;
if (pthread_attr_init(&attr)) exit(-1); if (pthread_attr_init(&attr)) return (-1);
if (pthread_attr_setscope(&attr, PTHREAD_SCOPE_SYSTEM)) exit(-1); if (pthread_attr_setscope(&attr, PTHREAD_SCOPE_SYSTEM)) return (-1);
if (pthread_create(&id, &attr, foo, NULL)) exit(-1); if (pthread_create(&id, &attr, foo, NULL)) return (-1);
exit(0); return (0);
} }
_ACEOF _ACEOF
if ac_fn_c_try_run "$LINENO"; then : if ac_fn_c_try_run "$LINENO"; then :
@ -15130,7 +15130,7 @@ else
int main() int main()
{ {
/* Success: exit code 0 */ /* Success: exit code 0 */
exit((((wchar_t) -1) < ((wchar_t) 0)) ? 0 : 1); return ((((wchar_t) -1) < ((wchar_t) 0)) ? 0 : 1);
} }
_ACEOF _ACEOF
@ -15511,7 +15511,7 @@ else
int main() int main()
{ {
exit(((-1)>>3 == -1) ? 0 : 1); return (((-1)>>3 == -1) ? 0 : 1);
} }
_ACEOF _ACEOF
@ -15981,6 +15981,7 @@ else
/* end confdefs.h. */ /* end confdefs.h. */
#include <poll.h> #include <poll.h>
#include <unistd.h>
int main() int main()
{ {

View file

@ -3311,10 +3311,10 @@ if test "$posix_threads" = "yes"; then
main() { main() {
pthread_attr_t attr; pthread_attr_t attr;
pthread_t id; pthread_t id;
if (pthread_attr_init(&attr)) exit(-1); if (pthread_attr_init(&attr)) return (-1);
if (pthread_attr_setscope(&attr, PTHREAD_SCOPE_SYSTEM)) exit(-1); if (pthread_attr_setscope(&attr, PTHREAD_SCOPE_SYSTEM)) return (-1);
if (pthread_create(&id, &attr, foo, NULL)) exit(-1); if (pthread_create(&id, &attr, foo, NULL)) return (-1);
exit(0); return (0);
}]])], }]])],
[ac_cv_pthread_system_supported=yes], [ac_cv_pthread_system_supported=yes],
[ac_cv_pthread_system_supported=no], [ac_cv_pthread_system_supported=no],
@ -4728,7 +4728,7 @@ then
int main() int main()
{ {
/* Success: exit code 0 */ /* Success: exit code 0 */
exit((((wchar_t) -1) < ((wchar_t) 0)) ? 0 : 1); return ((((wchar_t) -1) < ((wchar_t) 0)) ? 0 : 1);
} }
]])], ]])],
[ac_cv_wchar_t_signed=yes], [ac_cv_wchar_t_signed=yes],
@ -4850,7 +4850,7 @@ AC_CACHE_VAL(ac_cv_rshift_extends_sign, [
AC_RUN_IFELSE([AC_LANG_SOURCE([[ AC_RUN_IFELSE([AC_LANG_SOURCE([[
int main() int main()
{ {
exit(((-1)>>3 == -1) ? 0 : 1); return (((-1)>>3 == -1) ? 0 : 1);
} }
]])], ]])],
[ac_cv_rshift_extends_sign=yes], [ac_cv_rshift_extends_sign=yes],
@ -4997,6 +4997,7 @@ AC_MSG_CHECKING(for broken poll())
AC_CACHE_VAL(ac_cv_broken_poll, AC_CACHE_VAL(ac_cv_broken_poll,
AC_RUN_IFELSE([AC_LANG_SOURCE([[ AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <poll.h> #include <poll.h>
#include <unistd.h>
int main() int main()
{ {