From 6e5a193816e1bdf11f5fb78d620995fd6987ccf8 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Wed, 26 Jan 2022 11:03:49 +0200 Subject: [PATCH] bpo-46513: Remove AC_C_CHAR_UNSIGNED / __CHAR_UNSIGNED__ (GH-30851) --- .../2022-01-25-12-32-37.bpo-46513.mPm9B4.rst | 2 ++ Modules/audioop.c | 7 ---- configure | 33 ------------------- configure.ac | 1 - pyconfig.h.in | 5 --- 5 files changed, 2 insertions(+), 46 deletions(-) create mode 100644 Misc/NEWS.d/next/Build/2022-01-25-12-32-37.bpo-46513.mPm9B4.rst diff --git a/Misc/NEWS.d/next/Build/2022-01-25-12-32-37.bpo-46513.mPm9B4.rst b/Misc/NEWS.d/next/Build/2022-01-25-12-32-37.bpo-46513.mPm9B4.rst new file mode 100644 index 00000000000..b8986ae31a3 --- /dev/null +++ b/Misc/NEWS.d/next/Build/2022-01-25-12-32-37.bpo-46513.mPm9B4.rst @@ -0,0 +1,2 @@ +:program:`configure` no longer uses ``AC_C_CHAR_UNSIGNED`` macro and +``pyconfig.h`` no longer defines reserved symbol ``__CHAR_UNSIGNED__``. diff --git a/Modules/audioop.c b/Modules/audioop.c index 3aeb6f04f13..2a5d805c053 100644 --- a/Modules/audioop.c +++ b/Modules/audioop.c @@ -5,13 +5,6 @@ #include "Python.h" -#if defined(__CHAR_UNSIGNED__) -#if defined(signed) -/* This module currently does not work on systems where only unsigned - characters are available. Take it out of Setup. Sorry. */ -#endif -#endif - static const int maxvals[] = {0, 0x7F, 0x7FFF, 0x7FFFFF, 0x7FFFFFFF}; /* -1 trick is needed on Windows to support -0x80000000 without a warning */ static const int minvals[] = {0, -0x80, -0x8000, -0x800000, -0x7FFFFFFF-1}; diff --git a/configure b/configure index 78e5a099272..22c65e492fb 100755 --- a/configure +++ b/configure @@ -17063,39 +17063,6 @@ fi # checks for compiler characteristics -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether char is unsigned" >&5 -$as_echo_n "checking whether char is unsigned... " >&6; } -if ${ac_cv_c_char_unsigned+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((char) -1) < 0)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_char_unsigned=no -else - ac_cv_c_char_unsigned=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_char_unsigned" >&5 -$as_echo "$ac_cv_c_char_unsigned" >&6; } -if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then - $as_echo "#define __CHAR_UNSIGNED__ 1" >>confdefs.h - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 $as_echo_n "checking for an ANSI C-conforming const... " >&6; } if ${ac_cv_c_const+:} false; then : diff --git a/configure.ac b/configure.ac index a0fbe41c9ec..9bc6e3beecb 100644 --- a/configure.ac +++ b/configure.ac @@ -4699,7 +4699,6 @@ fi # checks for compiler characteristics -AC_C_CHAR_UNSIGNED AC_C_CONST AC_CACHE_CHECK([for working signed char], [ac_cv_working_signed_char_c], [ diff --git a/pyconfig.h.in b/pyconfig.h.in index a779ffadf20..02569c49543 100644 --- a/pyconfig.h.in +++ b/pyconfig.h.in @@ -1728,11 +1728,6 @@ /* Define on FreeBSD to activate all library features */ #undef __BSD_VISIBLE -/* Define to 1 if type `char' is unsigned and you are not using gcc. */ -#ifndef __CHAR_UNSIGNED__ -# undef __CHAR_UNSIGNED__ -#endif - /* Define to 'long' if doesn't define. */ #undef clock_t