[3.13] Fix typos (#123775) (#123866)

Fix typos (#123775)

(cherry picked from commit 9017b95ff2)

Co-authored-by: algonell <algonell@gmail.com>
This commit is contained in:
Victor Stinner 2024-10-07 23:44:31 +02:00 committed by GitHub
parent 2a40dda89d
commit d432fa43b9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
42 changed files with 58 additions and 58 deletions

View File

@ -100,7 +100,7 @@ JNIEXPORT void JNICALL Java_org_python_testbed_PythonTestRunner_redirectStdioToL
}
// --- Python intialization ----------------------------------------------------
// --- Python initialization ---------------------------------------------------
static PyStatus set_config_string(
JNIEnv *env, PyConfig *config, wchar_t **config_str, jstring value

View File

@ -442,7 +442,7 @@ def __setitem__(self, key, value):
# accepts iterable as multiple arguments?
value = t(auto_valued)
except TypeError:
# then pass them in singlely
# then pass them in singly
value = t(*auto_valued)
self._member_names[key] = None
if non_auto_store:

View File

@ -1663,7 +1663,7 @@ ddfma375087 fma 1 12345678 1E-33 -> 12345678.00000001 Inexac
ddfma375088 fma 1 12345678 1E-34 -> 12345678.00000001 Inexact Rounded
ddfma375089 fma 1 12345678 1E-35 -> 12345678.00000001 Inexact Rounded
-- desctructive subtraction (from remainder tests)
-- destructive subtraction (from remainder tests)
-- +++ some of these will be off-by-one remainder vs remainderNear

View File

@ -462,7 +462,7 @@ ddqua520 quantize 1.234 1e359 -> 0E+359 Inexact Rounded
ddqua521 quantize 123.456 1e359 -> 0E+359 Inexact Rounded
ddqua522 quantize 1.234 1e359 -> 0E+359 Inexact Rounded
ddqua523 quantize 123.456 1e359 -> 0E+359 Inexact Rounded
-- next four are "won't fit" overfl
-- next four are "won't fit" overflow
ddqua526 quantize 1.234 1e-299 -> NaN Invalid_operation
ddqua527 quantize 123.456 1e-299 -> NaN Invalid_operation
ddqua528 quantize 1.234 1e-299 -> NaN Invalid_operation

View File

@ -422,7 +422,7 @@ ddrem757 remainder 1 sNaN -> NaN Invalid_operation
ddrem758 remainder 1000 sNaN -> NaN Invalid_operation
ddrem759 remainder Inf -sNaN -> -NaN Invalid_operation
-- propaging NaNs
-- propagating NaNs
ddrem760 remainder NaN1 NaN7 -> NaN1
ddrem761 remainder sNaN2 NaN8 -> NaN2 Invalid_operation
ddrem762 remainder NaN3 sNaN9 -> NaN9 Invalid_operation

View File

@ -450,7 +450,7 @@ ddrmn757 remaindernear 1 sNaN -> NaN Invalid_operation
ddrmn758 remaindernear 1000 sNaN -> NaN Invalid_operation
ddrmn759 remaindernear Inf -sNaN -> -NaN Invalid_operation
-- propaging NaNs
-- propagating NaNs
ddrmn760 remaindernear NaN1 NaN7 -> NaN1
ddrmn761 remaindernear sNaN2 NaN8 -> NaN2 Invalid_operation
ddrmn762 remaindernear NaN3 sNaN9 -> NaN9 Invalid_operation

View File

@ -418,7 +418,7 @@ dqrem757 remainder 1 sNaN -> NaN Invalid_operation
dqrem758 remainder 1000 sNaN -> NaN Invalid_operation
dqrem759 remainder Inf -sNaN -> -NaN Invalid_operation
-- propaging NaNs
-- propagating NaNs
dqrem760 remainder NaN1 NaN7 -> NaN1
dqrem761 remainder sNaN2 NaN8 -> NaN2 Invalid_operation
dqrem762 remainder NaN3 sNaN9 -> NaN9 Invalid_operation

View File

@ -450,7 +450,7 @@ dqrmn757 remaindernear 1 sNaN -> NaN Invalid_operation
dqrmn758 remaindernear 1000 sNaN -> NaN Invalid_operation
dqrmn759 remaindernear Inf -sNaN -> -NaN Invalid_operation
-- propaging NaNs
-- propagating NaNs
dqrmn760 remaindernear NaN1 NaN7 -> NaN1
dqrmn761 remaindernear sNaN2 NaN8 -> NaN2 Invalid_operation
dqrmn762 remaindernear NaN3 sNaN9 -> NaN9 Invalid_operation

View File

@ -28,7 +28,7 @@ rounding: half_even
maxExponent: 384
minexponent: -383
-- basics (examples in specificiation, etc.)
-- basics (examples in specification, etc.)
expx001 exp -Infinity -> 0
expx002 exp -10 -> 0.0000453999298 Inexact Rounded
expx003 exp -1 -> 0.367879441 Inexact Rounded

View File

@ -435,7 +435,7 @@ remx757 remainder 1 sNaN -> NaN Invalid_operation
remx758 remainder 1000 sNaN -> NaN Invalid_operation
remx759 remainder Inf -sNaN -> -NaN Invalid_operation
-- propaging NaNs
-- propagating NaNs
remx760 remainder NaN1 NaN7 -> NaN1
remx761 remainder sNaN2 NaN8 -> NaN2 Invalid_operation
remx762 remainder NaN3 sNaN9 -> NaN9 Invalid_operation

View File

@ -498,7 +498,7 @@ rmnx758 remaindernear 1000 sNaN -> NaN Invalid_operation
rmnx759 remaindernear Inf sNaN -> NaN Invalid_operation
rmnx760 remaindernear NaN sNaN -> NaN Invalid_operation
-- propaging NaNs
-- propagating NaNs
rmnx761 remaindernear NaN1 NaN7 -> NaN1
rmnx762 remaindernear sNaN2 NaN8 -> NaN2 Invalid_operation
rmnx763 remaindernear NaN3 -sNaN9 -> -NaN9 Invalid_operation

View File

@ -523,7 +523,7 @@ def _run_tests(self, selected: TestTuple, tests: TestList | None) -> int:
setup_process()
if (runtests.hunt_refleak is not None) and (not self.num_workers):
# gh-109739: WindowsLoadTracker thread interfers with refleak check
# gh-109739: WindowsLoadTracker thread interferes with refleak check
use_load_tracker = False
else:
# WindowsLoadTracker is only needed on Windows

View File

@ -784,7 +784,7 @@ def get_signal_name(exitcode):
# Special Unicode characters
'\uFFFE'
'\uFFFF'
# Match multiple sequential invalid characters for better effiency
# Match multiple sequential invalid characters for better efficiency
']+')
def _sanitize_xml_replace(regs):

View File

@ -51,7 +51,7 @@ nan
>>> INF / INF
nan
However unambigous operations with inf return inf:
However unambiguous operations with inf return inf:
>>> INF * INF
inf
>>> 1.5 * INF

View File

@ -2061,7 +2061,7 @@ def persistent_id(self, obj):
@support.cpython_only
def test_bad_ext_code(self):
# This should never happen in normal circumstances, because the type
# and the value of the extesion code is checked in copyreg.add_extension().
# and the value of the extension code is checked in copyreg.add_extension().
key = (__name__, 'MyList')
def check(code, exc):
assert key not in copyreg._extension_registry

View File

@ -916,7 +916,7 @@ class C:
C.a
C.a
# destructor shouldn't be able to see inconsisent state
# destructor shouldn't be able to see inconsistent state
C.a = X()
C.a = X()

View File

@ -145,7 +145,7 @@ def test_exit_at_task_unpickle(self):
self._check_crash(BrokenProcessPool, id, ExitAtUnpickle())
def test_error_at_task_unpickle(self):
# gh-109832: Restore stderr overriden by _raise_error_ignore_stderr()
# gh-109832: Restore stderr overridden by _raise_error_ignore_stderr()
self.addCleanup(setattr, sys, 'stderr', sys.stderr)
# Check problem occurring while unpickling a task on workers
@ -183,7 +183,7 @@ def test_error_during_result_pickle_on_worker(self):
self._check_crash(PicklingError, _return_instance, ErrorAtPickle)
def test_error_during_result_unpickle_in_result_handler(self):
# gh-109832: Restore stderr overriden by _raise_error_ignore_stderr()
# gh-109832: Restore stderr overridden by _raise_error_ignore_stderr()
self.addCleanup(setattr, sys, 'stderr', sys.stderr)
# Check problem occurring while unpickling a task in

View File

@ -5328,7 +5328,7 @@ def test_convert_value_lookup_priority(self):
filter=lambda x: x.startswith('CONVERT_TEST_'))
# We don't want the reverse lookup value to vary when there are
# multiple possible names for a given value. It should always
# report the first lexigraphical name in that case.
# report the first lexicographical name in that case.
self.assertEqual(test_type(5).name, 'CONVERT_TEST_NAME_A')
def test_convert_int(self):

View File

@ -97,7 +97,7 @@ def typed_approx_eq(a, b):
class Symbolic:
"""Simple non-numeric class for testing mixed arithmetic.
It is not Integral, Rational, Real or Complex, and cannot be conveted
It is not Integral, Rational, Real or Complex, and cannot be converted
to int, float or complex. but it supports some arithmetic operations.
"""
def __init__(self, value):

View File

@ -1,5 +1,5 @@
"""Tests monitoring, sys.settrace, and sys.setprofile in a multi-threaded
environmenet to verify things are thread-safe in a free-threaded build"""
environment to verify things are thread-safe in a free-threaded build"""
import sys
import time

View File

@ -745,13 +745,13 @@ def test_comments(self):
}''', 'A complex trick: 2')
self.assertEqual(f'''
{
40 # fourty
40 # forty
+ # plus
2 # two
}''', '\n42')
self.assertEqual(f'''
{
40 # fourty
40 # forty
+ # plus
2 # two
}''', '\n42')

View File

@ -557,7 +557,7 @@ def test_framework_macos(self):
ns.add_known_dir("/Library/Frameworks/Python.framework/Versions/9.8/lib/python9.8/lib-dynload")
ns.add_known_file("/Library/Frameworks/Python.framework/Versions/9.8/lib/python9.8/os.py")
# This is definitely not the stdlib (see discusion in bpo-46890)
# This is definitely not the stdlib (see discussion in bpo-46890)
#ns.add_known_file("/Library/Frameworks/lib/python98.zip")
expected = dict(
@ -605,7 +605,7 @@ def test_alt_framework_macos(self):
ns.add_known_dir("/Library/Frameworks/DebugPython.framework/Versions/9.8/lib/python9.8/lib-dynload")
ns.add_known_xfile("/Library/Frameworks/DebugPython.framework/Versions/9.8/lib/python9.8/os.py")
# This is definitely not the stdlib (see discusion in bpo-46890)
# This is definitely not the stdlib (see discussion in bpo-46890)
#ns.add_known_xfile("/Library/lib/python98.zip")
expected = dict(
executable="/Library/Frameworks/DebugPython.framework/Versions/9.8/bin/python9.8",

View File

@ -3748,16 +3748,16 @@ def test_baseconfig(self):
'adict': {
'd': 'e', 'f': 3 ,
'alpha numeric 1 with spaces' : 5,
'aplha numeric 1 %( - © ©ß¯' : 9,
'alpha numeric 1 %( - © ©ß¯' : 9,
'alpha numeric ] 1 with spaces' : 15,
'aplha ]] numeric 1 %( - © ©ß¯]' : 19,
' aplha [ numeric 1 %( - © ©ß¯] ' : 11,
' aplha ' : 32,
'alpha ]] numeric 1 %( - © ©ß¯]' : 19,
' alpha [ numeric 1 %( - © ©ß¯] ' : 11,
' alpha ' : 32,
'' : 10,
'nest4' : {
'd': 'e', 'f': 3 ,
'alpha numeric 1 with spaces' : 5,
'aplha numeric 1 %( - © ©ß¯' : 9,
'alpha numeric 1 %( - © ©ß¯' : 9,
'' : 10,
'somelist' : ('g', ('h', 'i'), 'j'),
'somedict' : {
@ -3779,14 +3779,14 @@ def test_baseconfig(self):
self.assertEqual(bc.convert('cfg://adict.d'), 'e')
self.assertEqual(bc.convert('cfg://adict[f]'), 3)
self.assertEqual(bc.convert('cfg://adict[alpha numeric 1 with spaces]'), 5)
self.assertEqual(bc.convert('cfg://adict[aplha numeric 1 %( - © ©ß¯]'), 9)
self.assertEqual(bc.convert('cfg://adict[alpha numeric 1 %( - © ©ß¯]'), 9)
self.assertEqual(bc.convert('cfg://adict[]'), 10)
self.assertEqual(bc.convert('cfg://adict.nest4.d'), 'e')
self.assertEqual(bc.convert('cfg://adict.nest4[d]'), 'e')
self.assertEqual(bc.convert('cfg://adict[nest4].d'), 'e')
self.assertEqual(bc.convert('cfg://adict[nest4][f]'), 3)
self.assertEqual(bc.convert('cfg://adict[nest4][alpha numeric 1 with spaces]'), 5)
self.assertEqual(bc.convert('cfg://adict[nest4][aplha numeric 1 %( - © ©ß¯]'), 9)
self.assertEqual(bc.convert('cfg://adict[nest4][alpha numeric 1 %( - © ©ß¯]'), 9)
self.assertEqual(bc.convert('cfg://adict[nest4][]'), 10)
self.assertEqual(bc.convert('cfg://adict[nest4][somelist][0]'), 'g')
self.assertEqual(bc.convert('cfg://adict[nest4][somelist][1][0]'), 'h')
@ -3806,8 +3806,8 @@ def test_baseconfig(self):
self.assertRaises(ValueError, bc.convert, 'cfg://!')
self.assertRaises(KeyError, bc.convert, 'cfg://adict[2]')
self.assertRaises(KeyError, bc.convert, 'cfg://adict[alpha numeric ] 1 with spaces]')
self.assertRaises(ValueError, bc.convert, 'cfg://adict[ aplha ]] numeric 1 %( - © ©ß¯] ]')
self.assertRaises(ValueError, bc.convert, 'cfg://adict[ aplha [ numeric 1 %( - © ©ß¯] ]')
self.assertRaises(ValueError, bc.convert, 'cfg://adict[ alpha ]] numeric 1 %( - © ©ß¯] ]')
self.assertRaises(ValueError, bc.convert, 'cfg://adict[ alpha [ numeric 1 %( - © ©ß¯] ]')
def test_namedtuple(self):
# see bpo-39142

View File

@ -1402,7 +1402,7 @@ def __repr__(self):
return f'Flt({int(self)})'
def baseline_sumprod(p, q):
"""This defines the target behavior including expections and special values.
"""This defines the target behavior including exceptions and special values.
However, it is subject to rounding errors, so float inputs should be exactly
representable with only a few bits.
"""

View File

@ -64,7 +64,7 @@ class TestConsoleIO(unittest.TestCase):
# CREATE_NEW_CONSOLE creates a "popup" window.
@requires_resource('gui')
def run_in_separated_process(self, code):
# Run test in a seprated process to avoid stdin conflicts.
# Run test in a separated process to avoid stdin conflicts.
# See: gh-110147
cmd = [sys.executable, '-c', code]
subprocess.run(cmd, check=True, capture_output=True,

View File

@ -1271,7 +1271,7 @@ def test_sched_priority(self):
self.assertIsInstance(lo, int)
self.assertIsInstance(hi, int)
self.assertGreaterEqual(hi, lo)
# Apple plaforms return 15 without checking the argument.
# Apple platforms return 15 without checking the argument.
if not is_apple:
self.assertRaises(OSError, posix.sched_get_priority_min, -23)
self.assertRaises(OSError, posix.sched_get_priority_max, -23)

View File

@ -438,7 +438,7 @@ def getter3(self):
self.assertEqual(p2.__doc__, "doc-A")
# Case-3: with no user-provided doc new getter doc
# takes precendence
# takes precedence
p = property(getter2, None, None, None)
p2 = p.getter(getter3)

View File

@ -486,7 +486,7 @@ def _shutdown_get(self, immediate):
else:
thrds = (
# on shutdown(immediate=False)
# one of these threads shoud raise Shutdown
# one of these threads should raise Shutdown
(self._get, (q, go, results)),
(self._get, (q, go, results)),
(self._get, (q, go, results)),

View File

@ -1670,7 +1670,7 @@ def test_getaddrinfo_int_port_overflow(self):
try:
socket.getaddrinfo(None, ULONG_MAX + 1, type=socket.SOCK_STREAM)
except OverflowError:
# Platforms differ as to what values consitute a getaddrinfo() error
# Platforms differ as to what values constitute a getaddrinfo() error
# return. Some fail for LONG_MAX+1, others ULONG_MAX+1, and Windows
# silently accepts such huge "port" aka "service" numeric values.
self.fail("Either no error or socket.gaierror expected.")

View File

@ -131,7 +131,7 @@ def test_eval_str_invalid_escape(self):
self.assertEqual(exc.lineno, 1)
self.assertEqual(exc.offset, 1)
# Check that the warning is raised ony once if there are syntax errors
# Check that the warning is raised only once if there are syntax errors
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter('always', category=SyntaxWarning)

View File

@ -1116,7 +1116,7 @@ def test_force_zip64(self):
# Because this is hard to verify by parsing the data as a zip, the raw
# bytes are checked to ensure that they line up with the zip spec.
# The spec for this can be found at: https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT
# The relevent sections for this test are:
# The relevant sections for this test are:
# - 4.3.7 for local file header
# - 4.5.3 for zip64 extra field
@ -1187,7 +1187,7 @@ def test_unseekable_zip_known_filesize(self):
# in as a zip, this test looks at the raw bytes created to ensure that
# the correct data has been generated.
# The spec for this can be found at: https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT
# The relevent sections for this test are:
# The relevant sections for this test are:
# - 4.3.7 for local file header
# - 4.3.9 for the data descriptor
# - 4.5.3 for zip64 extra field

View File

@ -802,7 +802,7 @@ def testZip64LargeFile(self):
"to run"
)
# N.B.: We do alot of gymnastics below in the ZIP_STORED case to save
# N.B.: We do a lot of gymnastics below in the ZIP_STORED case to save
# and reconstruct a sparse zip on systems that support sparse files.
# Instead of creating a ~8GB zip file mainly consisting of null bytes
# for every run of the test, we create the zip once and save off the

View File

@ -7,7 +7,7 @@
Sorts a shelf of 10 blocks using insertion
sort, selection sort and quicksort.
Shelfs are implemented using builtin lists.
Shelves are implemented using builtin lists.
Blocks are turtles with shape "square", but
stretched to rectangles by shapesize()

View File

@ -962,7 +962,7 @@ $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK): \
$(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(PYTHONFRAMEWORKDIR)/$(PYTHONFRAMEWORK)
$(LN) -fsn Versions/Current/Resources $(PYTHONFRAMEWORKDIR)/Resources
# This rule is for iOS, which requires an annoyingly just slighly different
# This rule is for iOS, which requires an annoyingly just slightly different
# format for frameworks to macOS. It *doesn't* use a versioned framework, and
# the Info.plist must be in the root of the framework.
$(PYTHONFRAMEWORKDIR)/$(PYTHONFRAMEWORK): \

View File

@ -74,7 +74,7 @@ PyObject *PyLong_FromSsize_t(Py_ssize_t ival)
/* tainted sinks
*
* Coverity considers argv, environ, read() data etc as tained.
* Coverity considers argv, environ, read() data etc as tainted.
*/
PyObject *PyErr_SetFromErrnoWithFilename(PyObject *exc, const char *filename)

View File

@ -314,8 +314,8 @@ thread_run(void *boot_raw)
// gh-108987: If _thread.start_new_thread() is called before or while
// Python is being finalized, thread_run() can called *after*.
// _PyRuntimeState_SetFinalizing() is called. At this point, all Python
// threads must exit, except of the thread calling Py_Finalize() whch holds
// the GIL and must not exit.
// threads must exit, except of the thread calling Py_Finalize() which
// holds the GIL and must not exit.
//
// At this stage, tstate can be a dangling pointer (point to freed memory),
// it's ok to call _PyThreadState_MustExit() with a dangling pointer.

View File

@ -72,7 +72,7 @@ bool _mi_bitmap_try_find_claim_field(mi_bitmap_t bitmap, size_t idx, const size_
// For now, `count` can be at most MI_BITMAP_FIELD_BITS and will never cross fields.
bool _mi_bitmap_try_find_from_claim(mi_bitmap_t bitmap, const size_t bitmap_fields, const size_t start_field_idx, const size_t count, mi_bitmap_index_t* bitmap_idx);
// Like _mi_bitmap_try_find_from_claim but with an extra predicate that must be fullfilled
// Like _mi_bitmap_try_find_from_claim but with an extra predicate that must be fulfilled
typedef bool (mi_cdecl *mi_bitmap_pred_fun_t)(mi_bitmap_index_t bitmap_idx, void* pred_arg);
bool _mi_bitmap_try_find_from_claim_pred(mi_bitmap_t bitmap, const size_t bitmap_fields, const size_t start_field_idx, const size_t count, mi_bitmap_pred_fun_t pred_fun, void* pred_arg, mi_bitmap_index_t* bitmap_idx);

View File

@ -560,7 +560,7 @@ void mi_process_init(void) mi_attr_noexcept {
_mi_verbose_message("secure level: %d\n", MI_SECURE);
_mi_verbose_message("mem tracking: %s\n", MI_TRACK_TOOL);
#if MI_TSAN
_mi_verbose_message("thread santizer enabled\n");
_mi_verbose_message("thread sanitizer enabled\n");
#endif
mi_thread_init();

View File

@ -84,7 +84,7 @@ static mi_segment_t* _mi_segment_of(const void* p) {
// TODO: maintain max/min allocated range for efficiency for more efficient rejection of invalid pointers?
// search downwards for the first segment in case it is an interior pointer
// could be slow but searches in MI_INTPTR_SIZE * MI_SEGMENT_SIZE (512MiB) steps trough
// could be slow but searches in MI_INTPTR_SIZE * MI_SEGMENT_SIZE (512MiB) steps through
// valid huge objects
// note: we could maintain a lowest index to speed up the path for invalid pointers?
size_t lobitidx;

View File

@ -149,7 +149,7 @@ def _iter_top_include_lines(lines, topfile, cwd,
raw):
partial = 0 # depth
files = [topfile]
# We start at 1 in case there are source lines (including blank onces)
# We start at 1 in case there are source lines (including blank ones)
# before the first marker line. Also, we already verified in
# _parse_marker_line() that the preprocessor reported lno as 1.
lno = 1

2
configure generated vendored
View File

@ -23758,7 +23758,7 @@ else
# While Python doesn't currently have full support for these platforms
# (see e.g., issue 1762561), we can at least make sure that float <-> string
# conversions work.
# FLOAT_WORDS_BIGENDIAN doesnt actually detect this case, but if it's not big
# FLOAT_WORDS_BIGENDIAN doesn't actually detect this case, but if it's not big
# or little, then it must be this?
printf "%s\n" "#define DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 1" >>confdefs.h

View File

@ -1650,7 +1650,7 @@ then
AS_VAR_IF([host_cpu], [wasm64], [AS_VAR_APPEND([HOSTRUNNER], [" --experimental-wasm-memory64"])])
],
dnl TODO: support other WASI runtimes
dnl wasmtime starts the proces with "/" as CWD. For OOT builds add the
dnl wasmtime starts the process with "/" as CWD. For OOT builds add the
dnl directory containing _sysconfigdata to PYTHONPATH.
[WASI/*], [HOSTRUNNER='wasmtime run --wasm max-wasm-stack=8388608 --wasi preview2 --env PYTHONPATH=/$(shell realpath --relative-to $(abs_srcdir) $(abs_builddir))/$(shell cat pybuilddir.txt):/Lib --dir $(srcdir)::/'],
[HOSTRUNNER='']
@ -3513,7 +3513,7 @@ then
LDCXXSHARED='$(CXX) -Wl,-G,-Bexport';;
WASI*)
AS_VAR_IF([enable_wasm_dynamic_linking], [yes], [
dnl not iplemented yet
dnl not implemented yet
]);;
CYGWIN*)
LDSHARED="gcc -shared -Wl,--enable-auto-image-base"
@ -3686,7 +3686,7 @@ esac
AC_MSG_RESULT([$SHLIBS])
dnl perf trampoline is Linux specific and requires an arch-specific
dnl trampoline in asssembly.
dnl trampoline in assembly.
AC_MSG_CHECKING([perf trampoline])
AS_CASE([$PLATFORM_TRIPLET],
[x86_64-linux-gnu], [perf_trampoline=yes],
@ -5869,7 +5869,7 @@ else
# While Python doesn't currently have full support for these platforms
# (see e.g., issue 1762561), we can at least make sure that float <-> string
# conversions work.
# FLOAT_WORDS_BIGENDIAN doesnt actually detect this case, but if it's not big
# FLOAT_WORDS_BIGENDIAN doesn't actually detect this case, but if it's not big
# or little, then it must be this?
AC_DEFINE([DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754], [1],
[Define if C doubles are 64-bit IEEE 754 binary format, stored