gh-84461: Fix ctypes and test_ctypes on Emscripten (#94142)

- c_longlong and c_longdouble need experimental WASM bigint.
- Skip tests that need threading
- Define ``CTYPES_MAX_ARGCOUNT`` for Emscripten. libffi-emscripten 2022-06-23 supports up to 1000 args.
This commit is contained in:
Christian Heimes 2022-06-24 12:40:43 +02:00 committed by GitHub
parent ab077d1e17
commit 8625802d85
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 26 additions and 9 deletions

View file

@ -141,6 +141,7 @@ from test.support import (cpython_only,
check_impl_detail, requires_debug_ranges,
gc_collect)
from test.support.script_helper import assert_python_ok
from test.support import threading_helper
from opcode import opmap
COPY_FREE_VARS = opmap['COPY_FREE_VARS']
@ -723,6 +724,7 @@ if check_impl_detail(cpython=True) and ctypes is not None:
self.assertEqual(extra.value, 300)
del f
@threading_helper.requires_working_threading()
def test_free_different_thread(self):
# Freeing a code object on a different thread then
# where the co_extra was set should be safe.