Mock Version: 4.1 Mock Version: 4.1 Mock Version: 4.1 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-246087-83428/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=FalseprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Wrote: /builddir/build/SRPMS/python-extension-helpers-1.4.0-1.oc9.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-246087-83428/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=FalseraiseExc=FalseprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.nULXKl + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf extension_helpers-1.4.0 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/extension-helpers-1.4.0.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd extension_helpers-1.4.0 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + export SETUPTOOLS_SCM_PRETEND_VERSION=1.4.0 + SETUPTOOLS_SCM_PRETEND_VERSION=1.4.0 + RPM_EC=0 ++ jobs -p + exit 0 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.lYMPNB + umask 022 + cd /builddir/build/BUILD + cd extension_helpers-1.4.0 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(pip) >= 19' + echo 'python3dist(packaging)' + '[' -f pyproject.toml ']' + echo 'python3dist(toml)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + RPM_TOXENV=py311 + HOSTNAME=rpmbuild + /usr/bin/python3 -s /usr/lib/rpm/OpenCloudOS/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 Import error: No module named 'toml' + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/python-extension-helpers-1.4.0-1.oc9.buildreqs.nosrc.rpm Child return code was: 11 Dynamic buildrequires detected Going to install missing buildrequires. See root.log for details. ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-246087-83428/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=FalseraiseExc=FalseprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.c7FLNU + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf extension_helpers-1.4.0 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/extension-helpers-1.4.0.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd extension_helpers-1.4.0 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + export SETUPTOOLS_SCM_PRETEND_VERSION=1.4.0 + SETUPTOOLS_SCM_PRETEND_VERSION=1.4.0 + RPM_EC=0 ++ jobs -p + exit 0 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.UdPa3X + umask 022 + cd /builddir/build/BUILD + cd extension_helpers-1.4.0 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(pip) >= 19' + echo 'python3dist(packaging)' + '[' -f pyproject.toml ']' + echo 'python3dist(toml)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + RPM_TOXENV=py311 + HOSTNAME=rpmbuild + /usr/bin/python3 -s /usr/lib/rpm/OpenCloudOS/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 Handling setuptools>=43.0.0 from build-system.requires Requirement not satisfied: setuptools>=43.0.0 Handling setuptools_scm>=6.2 from build-system.requires Requirement not satisfied: setuptools_scm>=6.2 Exiting dependency generation pass: build backend + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/python-extension-helpers-1.4.0-1.oc9.buildreqs.nosrc.rpm Child return code was: 11 Dynamic buildrequires detected Going to install missing buildrequires. See root.log for details. ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-246087-83428/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=FalseraiseExc=FalseprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.ryg02P + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf extension_helpers-1.4.0 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/extension-helpers-1.4.0.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd extension_helpers-1.4.0 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + export SETUPTOOLS_SCM_PRETEND_VERSION=1.4.0 + SETUPTOOLS_SCM_PRETEND_VERSION=1.4.0 + RPM_EC=0 ++ jobs -p + exit 0 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.cgRJfb + umask 022 + cd /builddir/build/BUILD + cd extension_helpers-1.4.0 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(pip) >= 19' + echo 'python3dist(packaging)' + '[' -f pyproject.toml ']' + echo 'python3dist(toml)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + RPM_TOXENV=py311 + HOSTNAME=rpmbuild + /usr/bin/python3 -s /usr/lib/rpm/OpenCloudOS/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 Handling setuptools>=43.0.0 from build-system.requires Requirement satisfied: setuptools>=43.0.0 (installed: setuptools 68.0.0) Handling setuptools_scm>=6.2 from build-system.requires Requirement satisfied: setuptools_scm>=6.2 (installed: setuptools_scm 8.0.4) /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) warning: no files found matching 'CHANGES.rst' warning: no files found matching 'ah_bootstrap.py' warning: no previously-included files found matching '*.pyc' warning: no previously-included files found matching '*.o' no previously-included directories found matching 'build' HOOK STDOUT: running egg_info HOOK STDOUT: writing extension_helpers.egg-info/PKG-INFO HOOK STDOUT: writing dependency_links to extension_helpers.egg-info/dependency_links.txt HOOK STDOUT: writing entry points to extension_helpers.egg-info/entry_points.txt HOOK STDOUT: writing requirements to extension_helpers.egg-info/requires.txt HOOK STDOUT: writing top-level names to extension_helpers.egg-info/top_level.txt HOOK STDOUT: reading manifest file 'extension_helpers.egg-info/SOURCES.txt' HOOK STDOUT: reading manifest template 'MANIFEST.in' HOOK STDOUT: adding license file 'LICENSE.rst' HOOK STDOUT: writing manifest file 'extension_helpers.egg-info/SOURCES.txt' Handling wheel from get_requires_for_build_wheel Requirement satisfied: wheel (installed: wheel 0.41.2) /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) warning: no files found matching 'CHANGES.rst' warning: no files found matching 'ah_bootstrap.py' warning: no previously-included files found matching '*.pyc' warning: no previously-included files found matching '*.o' no previously-included directories found matching 'build' Handling setuptools >=64 from wheel metadata: Requires-Dist Requirement satisfied: setuptools >=64 (installed: setuptools 68.0.0) Handling tomli >=1.0.0 ; python_version < "3.11" from wheel metadata: Requires-Dist Ignoring alien requirement: tomli >=1.0.0 ; python_version < "3.11" Handling sphinx ; extra == 'docs' from wheel metadata: Requires-Dist Ignoring alien requirement: sphinx ; extra == 'docs' Handling sphinx-automodapi ; extra == 'docs' from wheel metadata: Requires-Dist Ignoring alien requirement: sphinx-automodapi ; extra == 'docs' Handling wheel ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: wheel ; extra == 'test' Handling pytest ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: pytest ; extra == 'test' Handling pytest-cov ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: pytest-cov ; extra == 'test' Handling cython ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: cython ; extra == 'test' Handling build ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: build ; extra == 'test' + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/python-extension-helpers-1.4.0-1.oc9.buildreqs.nosrc.rpm Child return code was: 11 Dynamic buildrequires detected Going to install missing buildrequires. See root.log for details. ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -ba --noprep --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-246087-83428/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=FalseprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -ba --noprep --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.Jlpro8 + umask 022 + cd /builddir/build/BUILD + cd extension_helpers-1.4.0 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(pip) >= 19' + echo 'python3dist(packaging)' + '[' -f pyproject.toml ']' + echo 'python3dist(toml)' + rm -rfv extension_helpers-1.4.0.dist-info/ removed 'extension_helpers-1.4.0.dist-info/METADATA' removed 'extension_helpers-1.4.0.dist-info/entry_points.txt' removed 'extension_helpers-1.4.0.dist-info/LICENSE.rst' removed 'extension_helpers-1.4.0.dist-info/top_level.txt' removed directory 'extension_helpers-1.4.0.dist-info/' + '[' -f /usr/bin/python3 ']' + RPM_TOXENV=py311 + HOSTNAME=rpmbuild + /usr/bin/python3 -s /usr/lib/rpm/OpenCloudOS/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 Handling setuptools>=43.0.0 from build-system.requires Requirement satisfied: setuptools>=43.0.0 (installed: setuptools 68.0.0) Handling setuptools_scm>=6.2 from build-system.requires Requirement satisfied: setuptools_scm>=6.2 (installed: setuptools_scm 8.0.4) /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) warning: no files found matching 'CHANGES.rst' warning: no files found matching 'ah_bootstrap.py' warning: no previously-included files found matching '*.pyc' warning: no previously-included files found matching '*.o' no previously-included directories found matching 'build' HOOK STDOUT: running egg_info HOOK STDOUT: writing extension_helpers.egg-info/PKG-INFO HOOK STDOUT: writing dependency_links to extension_helpers.egg-info/dependency_links.txt HOOK STDOUT: writing entry points to extension_helpers.egg-info/entry_points.txt HOOK STDOUT: writing requirements to extension_helpers.egg-info/requires.txt HOOK STDOUT: writing top-level names to extension_helpers.egg-info/top_level.txt HOOK STDOUT: reading manifest file 'extension_helpers.egg-info/SOURCES.txt' HOOK STDOUT: reading manifest template 'MANIFEST.in' HOOK STDOUT: adding license file 'LICENSE.rst' HOOK STDOUT: writing manifest file 'extension_helpers.egg-info/SOURCES.txt' Handling wheel from get_requires_for_build_wheel Requirement satisfied: wheel (installed: wheel 0.41.2) /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) warning: no files found matching 'CHANGES.rst' warning: no files found matching 'ah_bootstrap.py' warning: no previously-included files found matching '*.pyc' warning: no previously-included files found matching '*.o' no previously-included directories found matching 'build' Handling setuptools >=64 from wheel metadata: Requires-Dist Requirement satisfied: setuptools >=64 (installed: setuptools 68.0.0) Handling tomli >=1.0.0 ; python_version < "3.11" from wheel metadata: Requires-Dist Ignoring alien requirement: tomli >=1.0.0 ; python_version < "3.11" Handling sphinx ; extra == 'docs' from wheel metadata: Requires-Dist Ignoring alien requirement: sphinx ; extra == 'docs' Handling sphinx-automodapi ; extra == 'docs' from wheel metadata: Requires-Dist Ignoring alien requirement: sphinx-automodapi ; extra == 'docs' Handling wheel ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: wheel ; extra == 'test' Handling pytest ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: pytest ; extra == 'test' Handling pytest-cov ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: pytest-cov ; extra == 'test' Handling cython ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: cython ; extra == 'test' Handling build ; extra == 'test' from wheel metadata: Requires-Dist Ignoring alien requirement: build ; extra == 'test' + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.mHgxmr + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd extension_helpers-1.4.0 + export SETUPTOOLS_SCM_PRETEND_VERSION=1.4.0 + SETUPTOOLS_SCM_PRETEND_VERSION=1.4.0 + mkdir -p /builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1' + TMPDIR=/builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir + /usr/bin/python3 -m pip wheel --wheel-dir /builddir/build/BUILD/extension_helpers-1.4.0/pyproject-wheeldir --no-deps --use-pep517 --no-build-isolation --disable-pip-version-check --no-clean --progress-bar off --verbose . Processing /builddir/build/BUILD/extension_helpers-1.4.0 Preparing metadata (pyproject.toml): started Running command Preparing metadata (pyproject.toml) /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) running dist_info creating /builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info writing /builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info/PKG-INFO writing dependency_links to /builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info/dependency_links.txt writing entry points to /builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info/entry_points.txt writing requirements to /builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info/requires.txt writing top-level names to /builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info/top_level.txt writing manifest file '/builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info/SOURCES.txt' reading manifest file '/builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'CHANGES.rst' warning: no files found matching 'ah_bootstrap.py' warning: no previously-included files found matching '*.pyc' warning: no previously-included files found matching '*.o' no previously-included directories found matching 'build' adding license file 'LICENSE.rst' writing manifest file '/builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers.egg-info/SOURCES.txt' creating '/builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-modern-metadata-jg5zhxag/extension_helpers-1.4.0.dist-info' Preparing metadata (pyproject.toml): finished with status 'done' Building wheels for collected packages: extension-helpers Building wheel for extension-helpers (pyproject.toml): started Running command Building wheel for extension-helpers (pyproject.toml) /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) running bdist_wheel running build running build_py creating build creating build/lib creating build/lib/extension_helpers copying extension_helpers/version.py -> build/lib/extension_helpers copying extension_helpers/_utils.py -> build/lib/extension_helpers copying extension_helpers/__init__.py -> build/lib/extension_helpers copying extension_helpers/_openmp_helpers.py -> build/lib/extension_helpers copying extension_helpers/conftest.py -> build/lib/extension_helpers copying extension_helpers/_setup_helpers.py -> build/lib/extension_helpers creating build/lib/extension_helpers/tests copying extension_helpers/tests/test_utils.py -> build/lib/extension_helpers/tests copying extension_helpers/tests/test_setup_helpers.py -> build/lib/extension_helpers/tests copying extension_helpers/tests/__init__.py -> build/lib/extension_helpers/tests copying extension_helpers/tests/py311_backports.py -> build/lib/extension_helpers/tests copying extension_helpers/tests/test_openmp_helpers.py -> build/lib/extension_helpers/tests creating build/lib/extension_helpers/src copying extension_helpers/src/compiler.c -> build/lib/extension_helpers/src installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64 creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/extension_helpers copying build/lib/extension_helpers/version.py -> build/bdist.linux-x86_64/wheel/extension_helpers copying build/lib/extension_helpers/_utils.py -> build/bdist.linux-x86_64/wheel/extension_helpers copying build/lib/extension_helpers/__init__.py -> build/bdist.linux-x86_64/wheel/extension_helpers creating build/bdist.linux-x86_64/wheel/extension_helpers/src copying build/lib/extension_helpers/src/compiler.c -> build/bdist.linux-x86_64/wheel/extension_helpers/src copying build/lib/extension_helpers/_openmp_helpers.py -> build/bdist.linux-x86_64/wheel/extension_helpers copying build/lib/extension_helpers/conftest.py -> build/bdist.linux-x86_64/wheel/extension_helpers creating build/bdist.linux-x86_64/wheel/extension_helpers/tests copying build/lib/extension_helpers/tests/test_utils.py -> build/bdist.linux-x86_64/wheel/extension_helpers/tests copying build/lib/extension_helpers/tests/test_setup_helpers.py -> build/bdist.linux-x86_64/wheel/extension_helpers/tests copying build/lib/extension_helpers/tests/__init__.py -> build/bdist.linux-x86_64/wheel/extension_helpers/tests copying build/lib/extension_helpers/tests/py311_backports.py -> build/bdist.linux-x86_64/wheel/extension_helpers/tests copying build/lib/extension_helpers/tests/test_openmp_helpers.py -> build/bdist.linux-x86_64/wheel/extension_helpers/tests copying build/lib/extension_helpers/_setup_helpers.py -> build/bdist.linux-x86_64/wheel/extension_helpers running install_egg_info running egg_info writing extension_helpers.egg-info/PKG-INFO writing dependency_links to extension_helpers.egg-info/dependency_links.txt writing entry points to extension_helpers.egg-info/entry_points.txt writing requirements to extension_helpers.egg-info/requires.txt writing top-level names to extension_helpers.egg-info/top_level.txt reading manifest file 'extension_helpers.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'CHANGES.rst' warning: no files found matching 'ah_bootstrap.py' warning: no previously-included files found matching '*.pyc' warning: no previously-included files found matching '*.o' no previously-included directories found matching 'build' adding license file 'LICENSE.rst' writing manifest file 'extension_helpers.egg-info/SOURCES.txt' Copying extension_helpers.egg-info to build/bdist.linux-x86_64/wheel/extension_helpers-1.4.0-py3.11.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/extension_helpers-1.4.0.dist-info/WHEEL creating '/builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir/pip-wheel-zceuwr7v/.tmp-1vm7blk2/extension_helpers-1.4.0-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'extension_helpers/__init__.py' adding 'extension_helpers/_openmp_helpers.py' adding 'extension_helpers/_setup_helpers.py' adding 'extension_helpers/_utils.py' adding 'extension_helpers/conftest.py' adding 'extension_helpers/version.py' adding 'extension_helpers/src/compiler.c' adding 'extension_helpers/tests/__init__.py' adding 'extension_helpers/tests/py311_backports.py' adding 'extension_helpers/tests/test_openmp_helpers.py' adding 'extension_helpers/tests/test_setup_helpers.py' adding 'extension_helpers/tests/test_utils.py' adding 'extension_helpers-1.4.0.dist-info/LICENSE.rst' adding 'extension_helpers-1.4.0.dist-info/METADATA' adding 'extension_helpers-1.4.0.dist-info/WHEEL' adding 'extension_helpers-1.4.0.dist-info/entry_points.txt' adding 'extension_helpers-1.4.0.dist-info/top_level.txt' adding 'extension_helpers-1.4.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Building wheel for extension-helpers (pyproject.toml): finished with status 'done' Created wheel for extension-helpers: filename=extension_helpers-1.4.0-py3-none-any.whl size=26256 sha256=117180cddcf60b9fabf235e75c155e69340009e64be831d66aaf16ceaf7c7038 Stored in directory: /builddir/.cache/pip/wheels/ae/52/60/e18e07f6e421799219e9ba3bd8b64113a89968001a929b0292 Successfully built extension-helpers + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.930d2G + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64 '!=' / ']' + rm -rf /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64 ++ dirname /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64 + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64 + cd extension_helpers-1.4.0 ++ ls /builddir/build/BUILD/extension_helpers-1.4.0/pyproject-wheeldir/extension_helpers-1.4.0-py3-none-any.whl ++ xargs basename --multiple ++ sed -E 's/([^-]+)-([^-]+)-.+\.whl/\1==\2/' + specifier=extension_helpers==1.4.0 + TMPDIR=/builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir + /usr/bin/python3 -m pip install --root /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64 --no-deps --disable-pip-version-check --progress-bar off --verbose --ignore-installed --no-warn-script-location --no-index --no-cache-dir --find-links /builddir/build/BUILD/extension_helpers-1.4.0/pyproject-wheeldir extension_helpers==1.4.0 Using pip 23.3.1 from /usr/lib/python3.11/site-packages/pip (python 3.11) Looking in links: /builddir/build/BUILD/extension_helpers-1.4.0/pyproject-wheeldir Processing ./pyproject-wheeldir/extension_helpers-1.4.0-py3-none-any.whl Installing collected packages: extension_helpers Successfully installed extension_helpers-1.4.0 + '[' -d /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/bin ']' + rm -f /builddir/build/BUILD/pyproject-ghost-distinfo + site_dirs=() + '[' -d /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages ']' + site_dirs+=("/usr/lib/python3.11/site-packages") + '[' /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib64/python3.11/site-packages '!=' /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages ']' + '[' -d /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib64/python3.11/site-packages ']' + for site_dir in ${site_dirs[@]} + for distinfo in /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64$site_dir/*.dist-info + echo '%ghost /usr/lib/python3.11/site-packages/extension_helpers-1.4.0.dist-info' + sed -i s/pip/rpm/ /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages/extension_helpers-1.4.0.dist-info/INSTALLER + PYTHONPATH=/usr/lib/rpm/OpenCloudOS + /usr/bin/python3 -B /usr/lib/rpm/OpenCloudOS/pyproject_preprocess_record.py --buildroot /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64 --record /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages/extension_helpers-1.4.0.dist-info/RECORD --output /builddir/build/BUILD/pyproject-record + rm -fv /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages/extension_helpers-1.4.0.dist-info/RECORD removed '/builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages/extension_helpers-1.4.0.dist-info/RECORD' + rm -fv /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages/extension_helpers-1.4.0.dist-info/REQUESTED removed '/builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages/extension_helpers-1.4.0.dist-info/REQUESTED' + /usr/bin/python3 /usr/lib/rpm/OpenCloudOS/pyproject_save_files.py --output-files /builddir/build/BUILD/pyproject-files --output-modules /builddir/build/BUILD/pyproject-modules --buildroot /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64 --sitelib /usr/lib/python3.11/site-packages --sitearch /usr/lib64/python3.11/site-packages --python-version 3.11 --pyproject-record /builddir/build/BUILD/pyproject-record --prefix /usr extension_helpers + /usr/bin/find-debuginfo -j32 --strict-build-id -m -i --build-id-seed 1.4.0-1.oc9 --unique-debug-suffix -1.4.0-1.oc9.x86_64 --unique-debug-src-base python-extension-helpers-1.4.0-1.oc9.x86_64 -S debugsourcefiles.list /builddir/build/BUILD/extension_helpers-1.4.0 find: 'debug': No such file or directory + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/OpenCloudOS/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/OpenCloudOS/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/OpenCloudOS/brp-mangle-shebangs + /usr/lib/rpm/OpenCloudOS/brp-python-bytecompile '' 1 0 Bytecompiling .py files below /builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11 using python3.11 + /usr/lib/rpm/OpenCloudOS/brp-python-hardlink Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.XkMSla + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd extension_helpers-1.4.0 + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1' + PATH=/builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin + PYTHONPATH=/builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib64/python3.11/site-packages:/builddir/build/BUILDROOT/python-extension-helpers-1.4.0-1.oc9.x86_64/usr/lib/python3.11/site-packages + PYTHONDONTWRITEBYTECODE=1 + PYTEST_ADDOPTS=' --ignore=/builddir/build/BUILD/extension_helpers-1.4.0/.pyproject-builddir' + /usr/bin/pytest -q extension_helpers/tests .............................FFFF....FFFF............ [100%] =================================== FAILURES =================================== _________________ test_limited_api[pyx-cp310-False-setup.cfg] __________________ tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_limited_api_pyx_cp310_Fal0') config = 'setup.cfg', envvar = False, limited_api = 'cp310' extension_type = 'pyx' @pytest.mark.parametrize("config", ("setup.cfg", "pyproject.toml")) @pytest.mark.parametrize("envvar", (False, True)) @pytest.mark.parametrize("limited_api", (None, "cp310")) @pytest.mark.parametrize("extension_type", ("c", "pyx", "both")) def test_limited_api(tmp_path, config, envvar, limited_api, extension_type): if sys.version_info < (3, 11): pytest.skip( "This test requires setuptools>=65.4 which is only available for Python 3.11 and later" ) package = _extension_test_package( tmp_path, extension_type=extension_type, include_numpy=True, include_setup_py=False ) if config == "setup.cfg": setup_cfg = dedent( """\ [metadata] name = helpers_test_package version = 0.1 [options] packages = find: [extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: setup_cfg += f"\n[bdist_wheel]\npy_limited_api={limited_api}" elif envvar: # Make sure if we are using the environment variable that it takes # precedence over this setting (this only works for setup.cfg) setup_cfg += "\n[bdist_wheel]\npy_limited_api=cp35" (package / "setup.cfg").write_text(setup_cfg) # Still require a minimal pyproject.toml file if no setup.py file (package / "pyproject.toml").write_text( dedent( """ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [tool.extension-helpers] use_extension_helpers = true """ ) ) elif config == "pyproject.toml": pyproject_toml = dedent( """\ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [project] name = "helpers_test_package" version = "0.1" [tool.setuptools.packages] find = {namespaces = false} [tool.extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: pyproject_toml += f'\n[tool.distutils.bdist_wheel]\npy-limited-api = "{limited_api}"' (package / "pyproject.toml").write_text(pyproject_toml) env = os.environ.copy() if envvar: if limited_api: env["EXTENSION_HELPERS_PY_LIMITED_API"] = limited_api else: env["EXTENSION_HELPERS_PY_LIMITED_API"] = "" with chdir(package): > subprocess.run( [sys.executable, "-m", "build", "--wheel", "--no-isolation"], env=env, check=True ) extension_helpers/tests/test_setup_helpers.py:562: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ input = None, capture_output = False, timeout = None, check = True popenargs = (['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation'],) kwargs = {'env': {'BASH_FUNC_which%%': '() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --rea...-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection', 'CONFIG_SITE': 'NONE', ...}} process = stdout = None, stderr = None, retcode = 1 def run(*popenargs, input=None, capture_output=False, timeout=None, check=False, **kwargs): """Run command with arguments and return a CompletedProcess instance. The returned instance will have attributes args, returncode, stdout and stderr. By default, stdout and stderr are not captured, and those attributes will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them, or pass capture_output=True to capture both. If check is True and the exit code was non-zero, it raises a CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute, and output & stderr attributes if those streams were captured. If timeout is given, and the process takes too long, a TimeoutExpired exception will be raised. There is an optional argument "input", allowing you to pass bytes or a string to the subprocess's stdin. If you use this argument you may not also use the Popen constructor's "stdin" argument, as it will be used internally. By default, all communication is in bytes, and therefore any "input" should be bytes, and the stdout and stderr will be bytes. If in text mode, any "input" should be a string, and stdout and stderr will be strings decoded according to locale encoding, or by "encoding" if set. Text mode is triggered by setting any of text, encoding, errors or universal_newlines. The other arguments are the same as for the Popen constructor. """ if input is not None: if kwargs.get('stdin') is not None: raise ValueError('stdin and input arguments may not both be used.') kwargs['stdin'] = PIPE if capture_output: if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None: raise ValueError('stdout and stderr arguments may not be used ' 'with capture_output.') kwargs['stdout'] = PIPE kwargs['stderr'] = PIPE with Popen(*popenargs, **kwargs) as process: try: stdout, stderr = process.communicate(input, timeout=timeout) except TimeoutExpired as exc: process.kill() if _mswindows: # Windows accumulates the output in a single blocking # read() call run on child threads, with the timeout # being done in a join() on those threads. communicate() # _after_ kill() is required to collect that and add it # to the exception. exc.stdout, exc.stderr = process.communicate() else: # POSIX _communicate already populated the output so # far into the TimeoutExpired exception. process.wait() raise except: # Including KeyboardInterrupt, communicate handled that. process.kill() # We don't call process.wait() as .__exit__ does that for us. raise retcode = process.poll() if check and retcode: > raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) E subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation']' returned non-zero exit status 1. /usr/lib64/python3.11/subprocess.py:571: CalledProcessError ----------------------------- Captured stdout call ----------------------------- * Getting build dependencies for wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running egg_info creating helpers_test_package.egg-info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' * Building wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/__init__.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/setup_package.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package running build_ext Compiling helpers_test_package/unit02.pyx because it changed. [1/1] Cythonizing helpers_test_package/unit02.pyx building 'helpers_test_package.unit02' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/helpers_test_package gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit02.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit02.o ERROR Backend subprocess exited when trying to invoke build_wheel ----------------------------- Captured stderr call ----------------------------- WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section warning: build_py: byte-compiling is disabled, skipping. /usr/lib64/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-mockbuild/pytest-0/test_limited_api_pyx_cp310_Fal0/test_pkg/helpers_test_package/unit02.pyx tree = Parsing.p_module(s, pxd, full_module_name) helpers_test_package/unit02.c: In function ‘__Pyx_PyCode_New’: helpers_test_package/unit02.c:662:9: warning: implicit declaration of function ‘PyCode_NewWithPosOnlyArgs’ [-Wimplicit-function-declaration] 662 | PyCode_NewWithPosOnlyArgs | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:658:12: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 658 | result = | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyDict_GetItemStr’: helpers_test_package/unit02.c:881:55: warning: implicit declaration of function ‘_PyDict_GetItem_KnownHash’ [-Wimplicit-function-declaration] 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: error: ‘PyASCIIObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: note: each undeclared identifier is reported only once for each function it appears in 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:110: error: expected expression before ‘)’ token 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1256:59: error: unknown type name ‘Py_UNICODE’ 1256 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) | ^~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_Py_UNICODE_strlen’: helpers_test_package/unit02.c:1258:11: error: unknown type name ‘Py_UNICODE’ 1258 | const Py_UNICODE *u_end = u; | ^~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1326:11: error: unknown type name ‘sdigit’ 1326 | typedef sdigit __Pyx_compact_pylong; | ^~~~~~ helpers_test_package/unit02.c:1327:11: error: unknown type name ‘digit’ 1327 | typedef digit __Pyx_compact_upylong; | ^~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_check_single_interpreter’: helpers_test_package/unit02.c:2078:73: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2078 | PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); | ^~ helpers_test_package/unit02.c: In function ‘__pyx_pymod_exec_unit02’: helpers_test_package/unit02.c:869:65: warning: implicit declaration of function ‘_PyDict_NewPresized’ [-Wimplicit-function-declaration] 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:869:63: warning: pointer/integer type mismatch in conditional expression 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_tp_dict_version’: helpers_test_package/unit02.c:2358:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2358 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_object_dict_version’: helpers_test_package/unit02.c:2363:37: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2363 | Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; | ^~ helpers_test_package/unit02.c:2366:81: warning: implicit declaration of function ‘_PyObject_GetDictPtr’; did you mean ‘PyObject_GetAttr’? [-Wimplicit-function-declaration] 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^~~~~~~~~~~~~~~~~~~~ | PyObject_GetAttr helpers_test_package/unit02.c:2366:79: warning: pointer/integer type mismatch in conditional expression 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_object_dict_version_matches’: helpers_test_package/unit02.c:2374:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2374 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesTuple’: helpers_test_package/unit02.c:2385:9: warning: implicit declaration of function ‘PyTuple_GET_SIZE’; did you mean ‘PyTuple_GetSlice’? [-Wimplicit-function-declaration] 2385 | n = PyTuple_GET_SIZE(tuple); | ^~~~~~~~~~~~~~~~ | PyTuple_GetSlice helpers_test_package/unit02.c:2388:25: warning: implicit declaration of function ‘PyTuple_GET_ITEM’; did you mean ‘PyTuple_GetItem’? [-Wimplicit-function-declaration] 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~~~~~~~~~~~~~~~ | PyTuple_GetItem helpers_test_package/unit02.c:2388:22: warning: comparison between pointer and integer 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:2392:57: warning: passing argument 2 of ‘__Pyx_PyErr_GivenExceptionMatches’ makes pointer from integer without a cast [-Wint-conversion] 2392 | if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int helpers_test_package/unit02.c:1680:85: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 1680 | static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); | ~~~~~~~~~~^~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesInState’: helpers_test_package/unit02.c:2405:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2405 | exc_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrRestoreInState’: helpers_test_package/unit02.c:2441:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2441 | tmp_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2442:23: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2442 | tmp_value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2443:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2443 | tmp_tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2444:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2444 | tstate->curexc_type = type; | ^~ helpers_test_package/unit02.c:2445:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2445 | tstate->curexc_value = value; | ^~ helpers_test_package/unit02.c:2446:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2446 | tstate->curexc_traceback = tb; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrFetchInState’: helpers_test_package/unit02.c:2471:19: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2471 | *type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2472:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2472 | *value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2473:17: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2473 | *tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2474:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2474 | tstate->curexc_type = 0; | ^~ helpers_test_package/unit02.c:2475:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2475 | tstate->curexc_value = 0; | ^~ helpers_test_package/unit02.c:2476:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2476 | tstate->curexc_traceback = 0; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr’: helpers_test_package/unit02.c:2485:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2485 | if (likely(tp->tp_getattro)) | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2486:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2486 | return tp->tp_getattro(obj, attr_name); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr_ClearAttributeError’: helpers_test_package/unit02.c:794:39: warning: implicit declaration of function ‘_PyThreadState_UncheckedGet’ [-Wimplicit-function-declaration] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:52: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:50: warning: assignment to ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStrNoError’: helpers_test_package/unit02.c:2506:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2506 | if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2507:16: warning: implicit declaration of function ‘_PyObject_GenericGetAttrWithDict’; did you mean ‘PyObject_GenericGetDict’? [-Wimplicit-function-declaration] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PyObject_GenericGetDict helpers_test_package/unit02.c:2507:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CLineForTraceback’: helpers_test_package/unit02.c:2531:25: warning: assignment to ‘PyObject **’ {aka ‘struct _object **’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2531 | cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1536:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1536 | __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1530:24: warning: variable ‘__pyx_dict_version’ set but not used [-Wunused-but-set-variable] 1530 | static PY_UINT64_T __pyx_dict_version = 0;\ | ^~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from helpers_test_package/unit02.c:2650: /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:49:5: error: unknown type name ‘PyFunctionObject’ 49 | PyFunctionObject *f_func; /* Strong reference */ | ^~~~~~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:61:5: error: unknown type name ‘_Py_CODEUNIT’ 61 | _Py_CODEUNIT *prev_instr; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_Stackbase’: /usr/include/python3.11/internal/pycore_frame.h:73:37: error: invalid use of incomplete typedef ‘PyCodeObject’ 73 | return f->localsplus + f->f_code->co_nlocalsplus; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:103:33: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 103 | _PyInterpreterFrame *frame, PyFunctionObject *func, | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_IsIncomplete’: /usr/include/python3.11/internal/pycore_frame.h:151:25: warning: implicit declaration of function ‘_PyCode_CODE’ [-Wimplicit-function-declaration] 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:151:68: error: invalid use of incomplete typedef ‘PyCodeObject’ 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_HasStackSpace’: /usr/include/python3.11/internal/pycore_frame.h:206:18: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 206 | return tstate->datastack_top != NULL && | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:31: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:57: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_BumpFramePointer’: /usr/include/python3.11/internal/pycore_frame.h:214:65: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 214 | _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; | ^~ /usr/include/python3.11/internal/pycore_frame.h:215:15: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 215 | tstate->datastack_top += size; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:225:38: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 225 | _PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h:230:1: error: unknown type name ‘PyGenObject’ 230 | PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) | ^~~~~~~~~~~ In file included from helpers_test_package/unit02.c:53: /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_GetGenerator’: /usr/include/python3.11/internal/pycore_frame.h:233:37: error: unknown type name ‘PyGenObject’ 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:234:13: error: ‘PyGenObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^~~~~~~~~~~ | PyVarObject /usr/include/python3.11/internal/pycore_frame.h:234:26: error: expected expression before ‘)’ token 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^ /usr/include/python3.11/internal/pycore_frame.h:233:12: warning: unused variable ‘offset_in_gen’ [-Wunused-variable] 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CreateCodeObjectForTraceback’: helpers_test_package/unit02.c:2750:20: warning: implicit declaration of function ‘PyUnicode_AsUTF8’; did you mean ‘PyUnicode_AsUCS4’? [-Wimplicit-function-declaration] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^~~~~~~~~~~~~~~~ | PyUnicode_AsUCS4 helpers_test_package/unit02.c:2750:18: warning: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^ helpers_test_package/unit02.c:2781:15: warning: implicit declaration of function ‘PyCode_NewEmpty’ [-Wimplicit-function-declaration] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2781:13: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^ helpers_test_package/unit02.c: In function ‘__Pyx_AddTraceback’: helpers_test_package/unit02.c:794:39: warning: initialization of ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2796:29: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 2796 | PyThreadState *tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2817:16: warning: implicit declaration of function ‘PyFrame_New’; did you mean ‘PyWrapper_New’? [-Wimplicit-function-declaration] 2817 | py_frame = PyFrame_New( | ^~~~~~~~~~~ | PyWrapper_New helpers_test_package/unit02.c:2817:14: warning: assignment to ‘PyFrameObject *’ {aka ‘struct _frame *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2817 | py_frame = PyFrame_New( | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_From_long’: helpers_test_package/unit02.c:3025:16: warning: implicit declaration of function ‘_PyLong_FromByteArray’ [-Wimplicit-function-declaration] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3025:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3026 | little, !is_unsigned); | ~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_long’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3105:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3105:70: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3107:23: error: unknown type name ‘digit’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3107:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3111:53: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3111 | if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3165:23: error: unknown type name ‘digit’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3165:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3248:23: warning: implicit declaration of function ‘_PyLong_AsByteArray’ [-Wimplicit-function-declaration] 3248 | ret = _PyLong_AsByteArray((PyLongObject *)v, | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_int’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3378:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3378:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3380:23: error: unknown type name ‘digit’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3380:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3384:52: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3384 | if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3438:23: error: unknown type name ‘digit’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3438:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_InBases’: helpers_test_package/unit02.c:814:64: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 814 | #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) | ^~ helpers_test_package/unit02.c:3625:13: note: in expansion of macro ‘__Pyx_PyType_GetSlot’ 3625 | a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_IsSubtype’: helpers_test_package/unit02.c:3634:12: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3634 | mro = a->tp_mro; | ^~ helpers_test_package/unit02.c:3639:42: warning: comparison between pointer and integer 3639 | if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_IsAnySubtype2’: helpers_test_package/unit02.c:3649:14: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3649 | mro = cls->tp_mro; | ^~ helpers_test_package/unit02.c:3654:30: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3654 | PyObject *base = PyTuple_GET_ITEM(mro, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_GivenExceptionMatchesTuple’: helpers_test_package/unit02.c:3699:22: warning: comparison between pointer and integer 3699 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:3703:23: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3703 | PyObject *t = PyTuple_GET_ITEM(tuple, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_AsStringAndSize’: helpers_test_package/unit02.c:3876:19: warning: implicit declaration of function ‘PyByteArray_GET_SIZE’; did you mean ‘PyByteArray_Resize’? [-Wimplicit-function-declaration] 3876 | *length = PyByteArray_GET_SIZE(o); | ^~~~~~~~~~~~~~~~~~~~ | PyByteArray_Resize helpers_test_package/unit02.c:3877:16: warning: implicit declaration of function ‘PyByteArray_AS_STRING’; did you mean ‘PyByteArray_AsString’? [-Wimplicit-function-declaration] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~ | PyByteArray_AsString helpers_test_package/unit02.c:3877:16: warning: returning ‘int’ from a function with return type ‘const char *’ makes pointer from integer without a cast [-Wint-conversion] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLongWrongResultType’: helpers_test_package/unit02.c:1656:39: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 1656 | #define __Pyx_PyType_GetName(tp) ((tp)->tp_name) | ^~ helpers_test_package/unit02.c:3903:39: note: in expansion of macro ‘__Pyx_PyType_GetName’ 3903 | __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLong’: helpers_test_package/unit02.c:3928:3: error: unknown type name ‘PyNumberMethods’ 3928 | PyNumberMethods *m; | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3939:17: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3939 | m = Py_TYPE(x)->tp_as_number; | ^~ helpers_test_package/unit02.c:3950:20: error: request for member ‘nb_int’ in something not a structure or union 3950 | if (likely(m && m->nb_int)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:3952:12: error: request for member ‘nb_int’ in something not a structure or union 3952 | res = m->nb_int(x); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyIndex_AsSsize_t’: helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3991:13: error: unknown type name ‘digit’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3991:29: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3995:45: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3995 | if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { | ^~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 _______________ test_limited_api[pyx-cp310-False-pyproject.toml] _______________ tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_limited_api_pyx_cp310_Fal1') config = 'pyproject.toml', envvar = False, limited_api = 'cp310' extension_type = 'pyx' @pytest.mark.parametrize("config", ("setup.cfg", "pyproject.toml")) @pytest.mark.parametrize("envvar", (False, True)) @pytest.mark.parametrize("limited_api", (None, "cp310")) @pytest.mark.parametrize("extension_type", ("c", "pyx", "both")) def test_limited_api(tmp_path, config, envvar, limited_api, extension_type): if sys.version_info < (3, 11): pytest.skip( "This test requires setuptools>=65.4 which is only available for Python 3.11 and later" ) package = _extension_test_package( tmp_path, extension_type=extension_type, include_numpy=True, include_setup_py=False ) if config == "setup.cfg": setup_cfg = dedent( """\ [metadata] name = helpers_test_package version = 0.1 [options] packages = find: [extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: setup_cfg += f"\n[bdist_wheel]\npy_limited_api={limited_api}" elif envvar: # Make sure if we are using the environment variable that it takes # precedence over this setting (this only works for setup.cfg) setup_cfg += "\n[bdist_wheel]\npy_limited_api=cp35" (package / "setup.cfg").write_text(setup_cfg) # Still require a minimal pyproject.toml file if no setup.py file (package / "pyproject.toml").write_text( dedent( """ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [tool.extension-helpers] use_extension_helpers = true """ ) ) elif config == "pyproject.toml": pyproject_toml = dedent( """\ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [project] name = "helpers_test_package" version = "0.1" [tool.setuptools.packages] find = {namespaces = false} [tool.extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: pyproject_toml += f'\n[tool.distutils.bdist_wheel]\npy-limited-api = "{limited_api}"' (package / "pyproject.toml").write_text(pyproject_toml) env = os.environ.copy() if envvar: if limited_api: env["EXTENSION_HELPERS_PY_LIMITED_API"] = limited_api else: env["EXTENSION_HELPERS_PY_LIMITED_API"] = "" with chdir(package): > subprocess.run( [sys.executable, "-m", "build", "--wheel", "--no-isolation"], env=env, check=True ) extension_helpers/tests/test_setup_helpers.py:562: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ input = None, capture_output = False, timeout = None, check = True popenargs = (['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation'],) kwargs = {'env': {'BASH_FUNC_which%%': '() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --rea...-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection', 'CONFIG_SITE': 'NONE', ...}} process = stdout = None, stderr = None, retcode = 1 def run(*popenargs, input=None, capture_output=False, timeout=None, check=False, **kwargs): """Run command with arguments and return a CompletedProcess instance. The returned instance will have attributes args, returncode, stdout and stderr. By default, stdout and stderr are not captured, and those attributes will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them, or pass capture_output=True to capture both. If check is True and the exit code was non-zero, it raises a CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute, and output & stderr attributes if those streams were captured. If timeout is given, and the process takes too long, a TimeoutExpired exception will be raised. There is an optional argument "input", allowing you to pass bytes or a string to the subprocess's stdin. If you use this argument you may not also use the Popen constructor's "stdin" argument, as it will be used internally. By default, all communication is in bytes, and therefore any "input" should be bytes, and the stdout and stderr will be bytes. If in text mode, any "input" should be a string, and stdout and stderr will be strings decoded according to locale encoding, or by "encoding" if set. Text mode is triggered by setting any of text, encoding, errors or universal_newlines. The other arguments are the same as for the Popen constructor. """ if input is not None: if kwargs.get('stdin') is not None: raise ValueError('stdin and input arguments may not both be used.') kwargs['stdin'] = PIPE if capture_output: if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None: raise ValueError('stdout and stderr arguments may not be used ' 'with capture_output.') kwargs['stdout'] = PIPE kwargs['stderr'] = PIPE with Popen(*popenargs, **kwargs) as process: try: stdout, stderr = process.communicate(input, timeout=timeout) except TimeoutExpired as exc: process.kill() if _mswindows: # Windows accumulates the output in a single blocking # read() call run on child threads, with the timeout # being done in a join() on those threads. communicate() # _after_ kill() is required to collect that and add it # to the exception. exc.stdout, exc.stderr = process.communicate() else: # POSIX _communicate already populated the output so # far into the TimeoutExpired exception. process.wait() raise except: # Including KeyboardInterrupt, communicate handled that. process.kill() # We don't call process.wait() as .__exit__ does that for us. raise retcode = process.poll() if check and retcode: > raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) E subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation']' returned non-zero exit status 1. /usr/lib64/python3.11/subprocess.py:571: CalledProcessError ----------------------------- Captured stdout call ----------------------------- * Getting build dependencies for wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running egg_info creating helpers_test_package.egg-info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' * Building wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/__init__.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/setup_package.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package running egg_info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' copying helpers_test_package/_compiler.c -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/unit02.pyx -> build/lib.linux-x86_64-cpython-311/helpers_test_package running build_ext Compiling helpers_test_package/unit02.pyx because it changed. [1/1] Cythonizing helpers_test_package/unit02.pyx building 'helpers_test_package.unit02' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/helpers_test_package gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit02.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit02.o ERROR Backend subprocess exited when trying to invoke build_wheel ----------------------------- Captured stderr call ----------------------------- WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) warning: build_py: byte-compiling is disabled, skipping. /usr/lib64/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-mockbuild/pytest-0/test_limited_api_pyx_cp310_Fal1/test_pkg/helpers_test_package/unit02.pyx tree = Parsing.p_module(s, pxd, full_module_name) helpers_test_package/unit02.c: In function ‘__Pyx_PyCode_New’: helpers_test_package/unit02.c:662:9: warning: implicit declaration of function ‘PyCode_NewWithPosOnlyArgs’ [-Wimplicit-function-declaration] 662 | PyCode_NewWithPosOnlyArgs | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:658:12: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 658 | result = | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyDict_GetItemStr’: helpers_test_package/unit02.c:881:55: warning: implicit declaration of function ‘_PyDict_GetItem_KnownHash’ [-Wimplicit-function-declaration] 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: error: ‘PyASCIIObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: note: each undeclared identifier is reported only once for each function it appears in 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:110: error: expected expression before ‘)’ token 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1256:59: error: unknown type name ‘Py_UNICODE’ 1256 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) | ^~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_Py_UNICODE_strlen’: helpers_test_package/unit02.c:1258:11: error: unknown type name ‘Py_UNICODE’ 1258 | const Py_UNICODE *u_end = u; | ^~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1326:11: error: unknown type name ‘sdigit’ 1326 | typedef sdigit __Pyx_compact_pylong; | ^~~~~~ helpers_test_package/unit02.c:1327:11: error: unknown type name ‘digit’ 1327 | typedef digit __Pyx_compact_upylong; | ^~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_check_single_interpreter’: helpers_test_package/unit02.c:2078:73: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2078 | PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); | ^~ helpers_test_package/unit02.c: In function ‘__pyx_pymod_exec_unit02’: helpers_test_package/unit02.c:869:65: warning: implicit declaration of function ‘_PyDict_NewPresized’ [-Wimplicit-function-declaration] 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:869:63: warning: pointer/integer type mismatch in conditional expression 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_tp_dict_version’: helpers_test_package/unit02.c:2358:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2358 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_object_dict_version’: helpers_test_package/unit02.c:2363:37: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2363 | Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; | ^~ helpers_test_package/unit02.c:2366:81: warning: implicit declaration of function ‘_PyObject_GetDictPtr’; did you mean ‘PyObject_GetAttr’? [-Wimplicit-function-declaration] 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^~~~~~~~~~~~~~~~~~~~ | PyObject_GetAttr helpers_test_package/unit02.c:2366:79: warning: pointer/integer type mismatch in conditional expression 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_object_dict_version_matches’: helpers_test_package/unit02.c:2374:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2374 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesTuple’: helpers_test_package/unit02.c:2385:9: warning: implicit declaration of function ‘PyTuple_GET_SIZE’; did you mean ‘PyTuple_GetSlice’? [-Wimplicit-function-declaration] 2385 | n = PyTuple_GET_SIZE(tuple); | ^~~~~~~~~~~~~~~~ | PyTuple_GetSlice helpers_test_package/unit02.c:2388:25: warning: implicit declaration of function ‘PyTuple_GET_ITEM’; did you mean ‘PyTuple_GetItem’? [-Wimplicit-function-declaration] 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~~~~~~~~~~~~~~~ | PyTuple_GetItem helpers_test_package/unit02.c:2388:22: warning: comparison between pointer and integer 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:2392:57: warning: passing argument 2 of ‘__Pyx_PyErr_GivenExceptionMatches’ makes pointer from integer without a cast [-Wint-conversion] 2392 | if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int helpers_test_package/unit02.c:1680:85: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 1680 | static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); | ~~~~~~~~~~^~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesInState’: helpers_test_package/unit02.c:2405:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2405 | exc_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrRestoreInState’: helpers_test_package/unit02.c:2441:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2441 | tmp_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2442:23: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2442 | tmp_value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2443:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2443 | tmp_tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2444:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2444 | tstate->curexc_type = type; | ^~ helpers_test_package/unit02.c:2445:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2445 | tstate->curexc_value = value; | ^~ helpers_test_package/unit02.c:2446:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2446 | tstate->curexc_traceback = tb; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrFetchInState’: helpers_test_package/unit02.c:2471:19: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2471 | *type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2472:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2472 | *value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2473:17: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2473 | *tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2474:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2474 | tstate->curexc_type = 0; | ^~ helpers_test_package/unit02.c:2475:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2475 | tstate->curexc_value = 0; | ^~ helpers_test_package/unit02.c:2476:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2476 | tstate->curexc_traceback = 0; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr’: helpers_test_package/unit02.c:2485:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2485 | if (likely(tp->tp_getattro)) | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2486:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2486 | return tp->tp_getattro(obj, attr_name); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr_ClearAttributeError’: helpers_test_package/unit02.c:794:39: warning: implicit declaration of function ‘_PyThreadState_UncheckedGet’ [-Wimplicit-function-declaration] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:52: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:50: warning: assignment to ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStrNoError’: helpers_test_package/unit02.c:2506:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2506 | if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2507:16: warning: implicit declaration of function ‘_PyObject_GenericGetAttrWithDict’; did you mean ‘PyObject_GenericGetDict’? [-Wimplicit-function-declaration] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PyObject_GenericGetDict helpers_test_package/unit02.c:2507:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CLineForTraceback’: helpers_test_package/unit02.c:2531:25: warning: assignment to ‘PyObject **’ {aka ‘struct _object **’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2531 | cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1536:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1536 | __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1530:24: warning: variable ‘__pyx_dict_version’ set but not used [-Wunused-but-set-variable] 1530 | static PY_UINT64_T __pyx_dict_version = 0;\ | ^~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from helpers_test_package/unit02.c:2650: /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:49:5: error: unknown type name ‘PyFunctionObject’ 49 | PyFunctionObject *f_func; /* Strong reference */ | ^~~~~~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:61:5: error: unknown type name ‘_Py_CODEUNIT’ 61 | _Py_CODEUNIT *prev_instr; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_Stackbase’: /usr/include/python3.11/internal/pycore_frame.h:73:37: error: invalid use of incomplete typedef ‘PyCodeObject’ 73 | return f->localsplus + f->f_code->co_nlocalsplus; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:103:33: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 103 | _PyInterpreterFrame *frame, PyFunctionObject *func, | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_IsIncomplete’: /usr/include/python3.11/internal/pycore_frame.h:151:25: warning: implicit declaration of function ‘_PyCode_CODE’ [-Wimplicit-function-declaration] 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:151:68: error: invalid use of incomplete typedef ‘PyCodeObject’ 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_HasStackSpace’: /usr/include/python3.11/internal/pycore_frame.h:206:18: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 206 | return tstate->datastack_top != NULL && | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:31: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:57: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_BumpFramePointer’: /usr/include/python3.11/internal/pycore_frame.h:214:65: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 214 | _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; | ^~ /usr/include/python3.11/internal/pycore_frame.h:215:15: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 215 | tstate->datastack_top += size; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:225:38: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 225 | _PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h:230:1: error: unknown type name ‘PyGenObject’ 230 | PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) | ^~~~~~~~~~~ In file included from helpers_test_package/unit02.c:53: /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_GetGenerator’: /usr/include/python3.11/internal/pycore_frame.h:233:37: error: unknown type name ‘PyGenObject’ 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:234:13: error: ‘PyGenObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^~~~~~~~~~~ | PyVarObject /usr/include/python3.11/internal/pycore_frame.h:234:26: error: expected expression before ‘)’ token 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^ /usr/include/python3.11/internal/pycore_frame.h:233:12: warning: unused variable ‘offset_in_gen’ [-Wunused-variable] 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CreateCodeObjectForTraceback’: helpers_test_package/unit02.c:2750:20: warning: implicit declaration of function ‘PyUnicode_AsUTF8’; did you mean ‘PyUnicode_AsUCS4’? [-Wimplicit-function-declaration] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^~~~~~~~~~~~~~~~ | PyUnicode_AsUCS4 helpers_test_package/unit02.c:2750:18: warning: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^ helpers_test_package/unit02.c:2781:15: warning: implicit declaration of function ‘PyCode_NewEmpty’ [-Wimplicit-function-declaration] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2781:13: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^ helpers_test_package/unit02.c: In function ‘__Pyx_AddTraceback’: helpers_test_package/unit02.c:794:39: warning: initialization of ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2796:29: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 2796 | PyThreadState *tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2817:16: warning: implicit declaration of function ‘PyFrame_New’; did you mean ‘PyWrapper_New’? [-Wimplicit-function-declaration] 2817 | py_frame = PyFrame_New( | ^~~~~~~~~~~ | PyWrapper_New helpers_test_package/unit02.c:2817:14: warning: assignment to ‘PyFrameObject *’ {aka ‘struct _frame *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2817 | py_frame = PyFrame_New( | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_From_long’: helpers_test_package/unit02.c:3025:16: warning: implicit declaration of function ‘_PyLong_FromByteArray’ [-Wimplicit-function-declaration] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3025:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3026 | little, !is_unsigned); | ~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_long’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3105:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3105:70: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3107:23: error: unknown type name ‘digit’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3107:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3111:53: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3111 | if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3165:23: error: unknown type name ‘digit’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3165:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3248:23: warning: implicit declaration of function ‘_PyLong_AsByteArray’ [-Wimplicit-function-declaration] 3248 | ret = _PyLong_AsByteArray((PyLongObject *)v, | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_int’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3378:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3378:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3380:23: error: unknown type name ‘digit’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3380:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3384:52: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3384 | if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3438:23: error: unknown type name ‘digit’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3438:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_InBases’: helpers_test_package/unit02.c:814:64: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 814 | #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) | ^~ helpers_test_package/unit02.c:3625:13: note: in expansion of macro ‘__Pyx_PyType_GetSlot’ 3625 | a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_IsSubtype’: helpers_test_package/unit02.c:3634:12: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3634 | mro = a->tp_mro; | ^~ helpers_test_package/unit02.c:3639:42: warning: comparison between pointer and integer 3639 | if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_IsAnySubtype2’: helpers_test_package/unit02.c:3649:14: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3649 | mro = cls->tp_mro; | ^~ helpers_test_package/unit02.c:3654:30: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3654 | PyObject *base = PyTuple_GET_ITEM(mro, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_GivenExceptionMatchesTuple’: helpers_test_package/unit02.c:3699:22: warning: comparison between pointer and integer 3699 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:3703:23: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3703 | PyObject *t = PyTuple_GET_ITEM(tuple, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_AsStringAndSize’: helpers_test_package/unit02.c:3876:19: warning: implicit declaration of function ‘PyByteArray_GET_SIZE’; did you mean ‘PyByteArray_Resize’? [-Wimplicit-function-declaration] 3876 | *length = PyByteArray_GET_SIZE(o); | ^~~~~~~~~~~~~~~~~~~~ | PyByteArray_Resize helpers_test_package/unit02.c:3877:16: warning: implicit declaration of function ‘PyByteArray_AS_STRING’; did you mean ‘PyByteArray_AsString’? [-Wimplicit-function-declaration] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~ | PyByteArray_AsString helpers_test_package/unit02.c:3877:16: warning: returning ‘int’ from a function with return type ‘const char *’ makes pointer from integer without a cast [-Wint-conversion] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLongWrongResultType’: helpers_test_package/unit02.c:1656:39: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 1656 | #define __Pyx_PyType_GetName(tp) ((tp)->tp_name) | ^~ helpers_test_package/unit02.c:3903:39: note: in expansion of macro ‘__Pyx_PyType_GetName’ 3903 | __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLong’: helpers_test_package/unit02.c:3928:3: error: unknown type name ‘PyNumberMethods’ 3928 | PyNumberMethods *m; | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3939:17: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3939 | m = Py_TYPE(x)->tp_as_number; | ^~ helpers_test_package/unit02.c:3950:20: error: request for member ‘nb_int’ in something not a structure or union 3950 | if (likely(m && m->nb_int)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:3952:12: error: request for member ‘nb_int’ in something not a structure or union 3952 | res = m->nb_int(x); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyIndex_AsSsize_t’: helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3991:13: error: unknown type name ‘digit’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3991:29: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3995:45: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3995 | if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { | ^~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 __________________ test_limited_api[pyx-cp310-True-setup.cfg] __________________ tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_limited_api_pyx_cp310_Tru0') config = 'setup.cfg', envvar = True, limited_api = 'cp310' extension_type = 'pyx' @pytest.mark.parametrize("config", ("setup.cfg", "pyproject.toml")) @pytest.mark.parametrize("envvar", (False, True)) @pytest.mark.parametrize("limited_api", (None, "cp310")) @pytest.mark.parametrize("extension_type", ("c", "pyx", "both")) def test_limited_api(tmp_path, config, envvar, limited_api, extension_type): if sys.version_info < (3, 11): pytest.skip( "This test requires setuptools>=65.4 which is only available for Python 3.11 and later" ) package = _extension_test_package( tmp_path, extension_type=extension_type, include_numpy=True, include_setup_py=False ) if config == "setup.cfg": setup_cfg = dedent( """\ [metadata] name = helpers_test_package version = 0.1 [options] packages = find: [extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: setup_cfg += f"\n[bdist_wheel]\npy_limited_api={limited_api}" elif envvar: # Make sure if we are using the environment variable that it takes # precedence over this setting (this only works for setup.cfg) setup_cfg += "\n[bdist_wheel]\npy_limited_api=cp35" (package / "setup.cfg").write_text(setup_cfg) # Still require a minimal pyproject.toml file if no setup.py file (package / "pyproject.toml").write_text( dedent( """ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [tool.extension-helpers] use_extension_helpers = true """ ) ) elif config == "pyproject.toml": pyproject_toml = dedent( """\ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [project] name = "helpers_test_package" version = "0.1" [tool.setuptools.packages] find = {namespaces = false} [tool.extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: pyproject_toml += f'\n[tool.distutils.bdist_wheel]\npy-limited-api = "{limited_api}"' (package / "pyproject.toml").write_text(pyproject_toml) env = os.environ.copy() if envvar: if limited_api: env["EXTENSION_HELPERS_PY_LIMITED_API"] = limited_api else: env["EXTENSION_HELPERS_PY_LIMITED_API"] = "" with chdir(package): > subprocess.run( [sys.executable, "-m", "build", "--wheel", "--no-isolation"], env=env, check=True ) extension_helpers/tests/test_setup_helpers.py:562: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ input = None, capture_output = False, timeout = None, check = True popenargs = (['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation'],) kwargs = {'env': {'BASH_FUNC_which%%': '() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --rea...-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection', 'CONFIG_SITE': 'NONE', ...}} process = stdout = None, stderr = None, retcode = 1 def run(*popenargs, input=None, capture_output=False, timeout=None, check=False, **kwargs): """Run command with arguments and return a CompletedProcess instance. The returned instance will have attributes args, returncode, stdout and stderr. By default, stdout and stderr are not captured, and those attributes will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them, or pass capture_output=True to capture both. If check is True and the exit code was non-zero, it raises a CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute, and output & stderr attributes if those streams were captured. If timeout is given, and the process takes too long, a TimeoutExpired exception will be raised. There is an optional argument "input", allowing you to pass bytes or a string to the subprocess's stdin. If you use this argument you may not also use the Popen constructor's "stdin" argument, as it will be used internally. By default, all communication is in bytes, and therefore any "input" should be bytes, and the stdout and stderr will be bytes. If in text mode, any "input" should be a string, and stdout and stderr will be strings decoded according to locale encoding, or by "encoding" if set. Text mode is triggered by setting any of text, encoding, errors or universal_newlines. The other arguments are the same as for the Popen constructor. """ if input is not None: if kwargs.get('stdin') is not None: raise ValueError('stdin and input arguments may not both be used.') kwargs['stdin'] = PIPE if capture_output: if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None: raise ValueError('stdout and stderr arguments may not be used ' 'with capture_output.') kwargs['stdout'] = PIPE kwargs['stderr'] = PIPE with Popen(*popenargs, **kwargs) as process: try: stdout, stderr = process.communicate(input, timeout=timeout) except TimeoutExpired as exc: process.kill() if _mswindows: # Windows accumulates the output in a single blocking # read() call run on child threads, with the timeout # being done in a join() on those threads. communicate() # _after_ kill() is required to collect that and add it # to the exception. exc.stdout, exc.stderr = process.communicate() else: # POSIX _communicate already populated the output so # far into the TimeoutExpired exception. process.wait() raise except: # Including KeyboardInterrupt, communicate handled that. process.kill() # We don't call process.wait() as .__exit__ does that for us. raise retcode = process.poll() if check and retcode: > raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) E subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation']' returned non-zero exit status 1. /usr/lib64/python3.11/subprocess.py:571: CalledProcessError ----------------------------- Captured stdout call ----------------------------- * Getting build dependencies for wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running egg_info creating helpers_test_package.egg-info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' * Building wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/__init__.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/setup_package.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package running build_ext Compiling helpers_test_package/unit02.pyx because it changed. [1/1] Cythonizing helpers_test_package/unit02.pyx building 'helpers_test_package.unit02' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/helpers_test_package gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit02.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit02.o ERROR Backend subprocess exited when trying to invoke build_wheel ----------------------------- Captured stderr call ----------------------------- WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section warning: build_py: byte-compiling is disabled, skipping. /usr/lib64/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-mockbuild/pytest-0/test_limited_api_pyx_cp310_Tru0/test_pkg/helpers_test_package/unit02.pyx tree = Parsing.p_module(s, pxd, full_module_name) helpers_test_package/unit02.c: In function ‘__Pyx_PyCode_New’: helpers_test_package/unit02.c:662:9: warning: implicit declaration of function ‘PyCode_NewWithPosOnlyArgs’ [-Wimplicit-function-declaration] 662 | PyCode_NewWithPosOnlyArgs | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:658:12: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 658 | result = | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyDict_GetItemStr’: helpers_test_package/unit02.c:881:55: warning: implicit declaration of function ‘_PyDict_GetItem_KnownHash’ [-Wimplicit-function-declaration] 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: error: ‘PyASCIIObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: note: each undeclared identifier is reported only once for each function it appears in 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:110: error: expected expression before ‘)’ token 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1256:59: error: unknown type name ‘Py_UNICODE’ 1256 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) | ^~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_Py_UNICODE_strlen’: helpers_test_package/unit02.c:1258:11: error: unknown type name ‘Py_UNICODE’ 1258 | const Py_UNICODE *u_end = u; | ^~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1326:11: error: unknown type name ‘sdigit’ 1326 | typedef sdigit __Pyx_compact_pylong; | ^~~~~~ helpers_test_package/unit02.c:1327:11: error: unknown type name ‘digit’ 1327 | typedef digit __Pyx_compact_upylong; | ^~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_check_single_interpreter’: helpers_test_package/unit02.c:2078:73: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2078 | PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); | ^~ helpers_test_package/unit02.c: In function ‘__pyx_pymod_exec_unit02’: helpers_test_package/unit02.c:869:65: warning: implicit declaration of function ‘_PyDict_NewPresized’ [-Wimplicit-function-declaration] 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:869:63: warning: pointer/integer type mismatch in conditional expression 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_tp_dict_version’: helpers_test_package/unit02.c:2358:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2358 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_object_dict_version’: helpers_test_package/unit02.c:2363:37: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2363 | Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; | ^~ helpers_test_package/unit02.c:2366:81: warning: implicit declaration of function ‘_PyObject_GetDictPtr’; did you mean ‘PyObject_GetAttr’? [-Wimplicit-function-declaration] 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^~~~~~~~~~~~~~~~~~~~ | PyObject_GetAttr helpers_test_package/unit02.c:2366:79: warning: pointer/integer type mismatch in conditional expression 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_object_dict_version_matches’: helpers_test_package/unit02.c:2374:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2374 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesTuple’: helpers_test_package/unit02.c:2385:9: warning: implicit declaration of function ‘PyTuple_GET_SIZE’; did you mean ‘PyTuple_GetSlice’? [-Wimplicit-function-declaration] 2385 | n = PyTuple_GET_SIZE(tuple); | ^~~~~~~~~~~~~~~~ | PyTuple_GetSlice helpers_test_package/unit02.c:2388:25: warning: implicit declaration of function ‘PyTuple_GET_ITEM’; did you mean ‘PyTuple_GetItem’? [-Wimplicit-function-declaration] 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~~~~~~~~~~~~~~~ | PyTuple_GetItem helpers_test_package/unit02.c:2388:22: warning: comparison between pointer and integer 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:2392:57: warning: passing argument 2 of ‘__Pyx_PyErr_GivenExceptionMatches’ makes pointer from integer without a cast [-Wint-conversion] 2392 | if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int helpers_test_package/unit02.c:1680:85: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 1680 | static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); | ~~~~~~~~~~^~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesInState’: helpers_test_package/unit02.c:2405:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2405 | exc_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrRestoreInState’: helpers_test_package/unit02.c:2441:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2441 | tmp_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2442:23: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2442 | tmp_value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2443:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2443 | tmp_tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2444:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2444 | tstate->curexc_type = type; | ^~ helpers_test_package/unit02.c:2445:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2445 | tstate->curexc_value = value; | ^~ helpers_test_package/unit02.c:2446:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2446 | tstate->curexc_traceback = tb; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrFetchInState’: helpers_test_package/unit02.c:2471:19: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2471 | *type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2472:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2472 | *value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2473:17: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2473 | *tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2474:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2474 | tstate->curexc_type = 0; | ^~ helpers_test_package/unit02.c:2475:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2475 | tstate->curexc_value = 0; | ^~ helpers_test_package/unit02.c:2476:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2476 | tstate->curexc_traceback = 0; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr’: helpers_test_package/unit02.c:2485:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2485 | if (likely(tp->tp_getattro)) | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2486:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2486 | return tp->tp_getattro(obj, attr_name); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr_ClearAttributeError’: helpers_test_package/unit02.c:794:39: warning: implicit declaration of function ‘_PyThreadState_UncheckedGet’ [-Wimplicit-function-declaration] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:52: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:50: warning: assignment to ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStrNoError’: helpers_test_package/unit02.c:2506:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2506 | if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2507:16: warning: implicit declaration of function ‘_PyObject_GenericGetAttrWithDict’; did you mean ‘PyObject_GenericGetDict’? [-Wimplicit-function-declaration] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PyObject_GenericGetDict helpers_test_package/unit02.c:2507:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CLineForTraceback’: helpers_test_package/unit02.c:2531:25: warning: assignment to ‘PyObject **’ {aka ‘struct _object **’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2531 | cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1536:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1536 | __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1530:24: warning: variable ‘__pyx_dict_version’ set but not used [-Wunused-but-set-variable] 1530 | static PY_UINT64_T __pyx_dict_version = 0;\ | ^~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from helpers_test_package/unit02.c:2650: /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:49:5: error: unknown type name ‘PyFunctionObject’ 49 | PyFunctionObject *f_func; /* Strong reference */ | ^~~~~~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:61:5: error: unknown type name ‘_Py_CODEUNIT’ 61 | _Py_CODEUNIT *prev_instr; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_Stackbase’: /usr/include/python3.11/internal/pycore_frame.h:73:37: error: invalid use of incomplete typedef ‘PyCodeObject’ 73 | return f->localsplus + f->f_code->co_nlocalsplus; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:103:33: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 103 | _PyInterpreterFrame *frame, PyFunctionObject *func, | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_IsIncomplete’: /usr/include/python3.11/internal/pycore_frame.h:151:25: warning: implicit declaration of function ‘_PyCode_CODE’ [-Wimplicit-function-declaration] 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:151:68: error: invalid use of incomplete typedef ‘PyCodeObject’ 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_HasStackSpace’: /usr/include/python3.11/internal/pycore_frame.h:206:18: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 206 | return tstate->datastack_top != NULL && | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:31: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:57: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_BumpFramePointer’: /usr/include/python3.11/internal/pycore_frame.h:214:65: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 214 | _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; | ^~ /usr/include/python3.11/internal/pycore_frame.h:215:15: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 215 | tstate->datastack_top += size; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:225:38: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 225 | _PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h:230:1: error: unknown type name ‘PyGenObject’ 230 | PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) | ^~~~~~~~~~~ In file included from helpers_test_package/unit02.c:53: /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_GetGenerator’: /usr/include/python3.11/internal/pycore_frame.h:233:37: error: unknown type name ‘PyGenObject’ 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:234:13: error: ‘PyGenObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^~~~~~~~~~~ | PyVarObject /usr/include/python3.11/internal/pycore_frame.h:234:26: error: expected expression before ‘)’ token 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^ /usr/include/python3.11/internal/pycore_frame.h:233:12: warning: unused variable ‘offset_in_gen’ [-Wunused-variable] 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CreateCodeObjectForTraceback’: helpers_test_package/unit02.c:2750:20: warning: implicit declaration of function ‘PyUnicode_AsUTF8’; did you mean ‘PyUnicode_AsUCS4’? [-Wimplicit-function-declaration] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^~~~~~~~~~~~~~~~ | PyUnicode_AsUCS4 helpers_test_package/unit02.c:2750:18: warning: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^ helpers_test_package/unit02.c:2781:15: warning: implicit declaration of function ‘PyCode_NewEmpty’ [-Wimplicit-function-declaration] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2781:13: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^ helpers_test_package/unit02.c: In function ‘__Pyx_AddTraceback’: helpers_test_package/unit02.c:794:39: warning: initialization of ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2796:29: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 2796 | PyThreadState *tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2817:16: warning: implicit declaration of function ‘PyFrame_New’; did you mean ‘PyWrapper_New’? [-Wimplicit-function-declaration] 2817 | py_frame = PyFrame_New( | ^~~~~~~~~~~ | PyWrapper_New helpers_test_package/unit02.c:2817:14: warning: assignment to ‘PyFrameObject *’ {aka ‘struct _frame *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2817 | py_frame = PyFrame_New( | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_From_long’: helpers_test_package/unit02.c:3025:16: warning: implicit declaration of function ‘_PyLong_FromByteArray’ [-Wimplicit-function-declaration] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3025:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3026 | little, !is_unsigned); | ~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_long’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3105:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3105:70: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3107:23: error: unknown type name ‘digit’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3107:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3111:53: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3111 | if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3165:23: error: unknown type name ‘digit’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3165:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3248:23: warning: implicit declaration of function ‘_PyLong_AsByteArray’ [-Wimplicit-function-declaration] 3248 | ret = _PyLong_AsByteArray((PyLongObject *)v, | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_int’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3378:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3378:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3380:23: error: unknown type name ‘digit’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3380:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3384:52: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3384 | if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3438:23: error: unknown type name ‘digit’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3438:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_InBases’: helpers_test_package/unit02.c:814:64: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 814 | #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) | ^~ helpers_test_package/unit02.c:3625:13: note: in expansion of macro ‘__Pyx_PyType_GetSlot’ 3625 | a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_IsSubtype’: helpers_test_package/unit02.c:3634:12: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3634 | mro = a->tp_mro; | ^~ helpers_test_package/unit02.c:3639:42: warning: comparison between pointer and integer 3639 | if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_IsAnySubtype2’: helpers_test_package/unit02.c:3649:14: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3649 | mro = cls->tp_mro; | ^~ helpers_test_package/unit02.c:3654:30: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3654 | PyObject *base = PyTuple_GET_ITEM(mro, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_GivenExceptionMatchesTuple’: helpers_test_package/unit02.c:3699:22: warning: comparison between pointer and integer 3699 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:3703:23: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3703 | PyObject *t = PyTuple_GET_ITEM(tuple, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_AsStringAndSize’: helpers_test_package/unit02.c:3876:19: warning: implicit declaration of function ‘PyByteArray_GET_SIZE’; did you mean ‘PyByteArray_Resize’? [-Wimplicit-function-declaration] 3876 | *length = PyByteArray_GET_SIZE(o); | ^~~~~~~~~~~~~~~~~~~~ | PyByteArray_Resize helpers_test_package/unit02.c:3877:16: warning: implicit declaration of function ‘PyByteArray_AS_STRING’; did you mean ‘PyByteArray_AsString’? [-Wimplicit-function-declaration] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~ | PyByteArray_AsString helpers_test_package/unit02.c:3877:16: warning: returning ‘int’ from a function with return type ‘const char *’ makes pointer from integer without a cast [-Wint-conversion] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLongWrongResultType’: helpers_test_package/unit02.c:1656:39: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 1656 | #define __Pyx_PyType_GetName(tp) ((tp)->tp_name) | ^~ helpers_test_package/unit02.c:3903:39: note: in expansion of macro ‘__Pyx_PyType_GetName’ 3903 | __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLong’: helpers_test_package/unit02.c:3928:3: error: unknown type name ‘PyNumberMethods’ 3928 | PyNumberMethods *m; | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3939:17: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3939 | m = Py_TYPE(x)->tp_as_number; | ^~ helpers_test_package/unit02.c:3950:20: error: request for member ‘nb_int’ in something not a structure or union 3950 | if (likely(m && m->nb_int)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:3952:12: error: request for member ‘nb_int’ in something not a structure or union 3952 | res = m->nb_int(x); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyIndex_AsSsize_t’: helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3991:13: error: unknown type name ‘digit’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3991:29: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3995:45: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3995 | if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { | ^~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 _______________ test_limited_api[pyx-cp310-True-pyproject.toml] ________________ tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_limited_api_pyx_cp310_Tru1') config = 'pyproject.toml', envvar = True, limited_api = 'cp310' extension_type = 'pyx' @pytest.mark.parametrize("config", ("setup.cfg", "pyproject.toml")) @pytest.mark.parametrize("envvar", (False, True)) @pytest.mark.parametrize("limited_api", (None, "cp310")) @pytest.mark.parametrize("extension_type", ("c", "pyx", "both")) def test_limited_api(tmp_path, config, envvar, limited_api, extension_type): if sys.version_info < (3, 11): pytest.skip( "This test requires setuptools>=65.4 which is only available for Python 3.11 and later" ) package = _extension_test_package( tmp_path, extension_type=extension_type, include_numpy=True, include_setup_py=False ) if config == "setup.cfg": setup_cfg = dedent( """\ [metadata] name = helpers_test_package version = 0.1 [options] packages = find: [extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: setup_cfg += f"\n[bdist_wheel]\npy_limited_api={limited_api}" elif envvar: # Make sure if we are using the environment variable that it takes # precedence over this setting (this only works for setup.cfg) setup_cfg += "\n[bdist_wheel]\npy_limited_api=cp35" (package / "setup.cfg").write_text(setup_cfg) # Still require a minimal pyproject.toml file if no setup.py file (package / "pyproject.toml").write_text( dedent( """ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [tool.extension-helpers] use_extension_helpers = true """ ) ) elif config == "pyproject.toml": pyproject_toml = dedent( """\ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [project] name = "helpers_test_package" version = "0.1" [tool.setuptools.packages] find = {namespaces = false} [tool.extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: pyproject_toml += f'\n[tool.distutils.bdist_wheel]\npy-limited-api = "{limited_api}"' (package / "pyproject.toml").write_text(pyproject_toml) env = os.environ.copy() if envvar: if limited_api: env["EXTENSION_HELPERS_PY_LIMITED_API"] = limited_api else: env["EXTENSION_HELPERS_PY_LIMITED_API"] = "" with chdir(package): > subprocess.run( [sys.executable, "-m", "build", "--wheel", "--no-isolation"], env=env, check=True ) extension_helpers/tests/test_setup_helpers.py:562: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ input = None, capture_output = False, timeout = None, check = True popenargs = (['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation'],) kwargs = {'env': {'BASH_FUNC_which%%': '() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --rea...-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection', 'CONFIG_SITE': 'NONE', ...}} process = stdout = None, stderr = None, retcode = 1 def run(*popenargs, input=None, capture_output=False, timeout=None, check=False, **kwargs): """Run command with arguments and return a CompletedProcess instance. The returned instance will have attributes args, returncode, stdout and stderr. By default, stdout and stderr are not captured, and those attributes will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them, or pass capture_output=True to capture both. If check is True and the exit code was non-zero, it raises a CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute, and output & stderr attributes if those streams were captured. If timeout is given, and the process takes too long, a TimeoutExpired exception will be raised. There is an optional argument "input", allowing you to pass bytes or a string to the subprocess's stdin. If you use this argument you may not also use the Popen constructor's "stdin" argument, as it will be used internally. By default, all communication is in bytes, and therefore any "input" should be bytes, and the stdout and stderr will be bytes. If in text mode, any "input" should be a string, and stdout and stderr will be strings decoded according to locale encoding, or by "encoding" if set. Text mode is triggered by setting any of text, encoding, errors or universal_newlines. The other arguments are the same as for the Popen constructor. """ if input is not None: if kwargs.get('stdin') is not None: raise ValueError('stdin and input arguments may not both be used.') kwargs['stdin'] = PIPE if capture_output: if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None: raise ValueError('stdout and stderr arguments may not be used ' 'with capture_output.') kwargs['stdout'] = PIPE kwargs['stderr'] = PIPE with Popen(*popenargs, **kwargs) as process: try: stdout, stderr = process.communicate(input, timeout=timeout) except TimeoutExpired as exc: process.kill() if _mswindows: # Windows accumulates the output in a single blocking # read() call run on child threads, with the timeout # being done in a join() on those threads. communicate() # _after_ kill() is required to collect that and add it # to the exception. exc.stdout, exc.stderr = process.communicate() else: # POSIX _communicate already populated the output so # far into the TimeoutExpired exception. process.wait() raise except: # Including KeyboardInterrupt, communicate handled that. process.kill() # We don't call process.wait() as .__exit__ does that for us. raise retcode = process.poll() if check and retcode: > raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) E subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation']' returned non-zero exit status 1. /usr/lib64/python3.11/subprocess.py:571: CalledProcessError ----------------------------- Captured stdout call ----------------------------- * Getting build dependencies for wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running egg_info creating helpers_test_package.egg-info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' * Building wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/__init__.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/setup_package.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package running egg_info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' copying helpers_test_package/_compiler.c -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/unit02.pyx -> build/lib.linux-x86_64-cpython-311/helpers_test_package running build_ext Compiling helpers_test_package/unit02.pyx because it changed. [1/1] Cythonizing helpers_test_package/unit02.pyx building 'helpers_test_package.unit02' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/helpers_test_package gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit02.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit02.o ERROR Backend subprocess exited when trying to invoke build_wheel ----------------------------- Captured stderr call ----------------------------- WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) warning: build_py: byte-compiling is disabled, skipping. /usr/lib64/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-mockbuild/pytest-0/test_limited_api_pyx_cp310_Tru1/test_pkg/helpers_test_package/unit02.pyx tree = Parsing.p_module(s, pxd, full_module_name) helpers_test_package/unit02.c: In function ‘__Pyx_PyCode_New’: helpers_test_package/unit02.c:662:9: warning: implicit declaration of function ‘PyCode_NewWithPosOnlyArgs’ [-Wimplicit-function-declaration] 662 | PyCode_NewWithPosOnlyArgs | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:658:12: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 658 | result = | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyDict_GetItemStr’: helpers_test_package/unit02.c:881:55: warning: implicit declaration of function ‘_PyDict_GetItem_KnownHash’ [-Wimplicit-function-declaration] 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: error: ‘PyASCIIObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: note: each undeclared identifier is reported only once for each function it appears in 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:110: error: expected expression before ‘)’ token 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1256:59: error: unknown type name ‘Py_UNICODE’ 1256 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) | ^~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_Py_UNICODE_strlen’: helpers_test_package/unit02.c:1258:11: error: unknown type name ‘Py_UNICODE’ 1258 | const Py_UNICODE *u_end = u; | ^~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1326:11: error: unknown type name ‘sdigit’ 1326 | typedef sdigit __Pyx_compact_pylong; | ^~~~~~ helpers_test_package/unit02.c:1327:11: error: unknown type name ‘digit’ 1327 | typedef digit __Pyx_compact_upylong; | ^~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_check_single_interpreter’: helpers_test_package/unit02.c:2078:73: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2078 | PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); | ^~ helpers_test_package/unit02.c: In function ‘__pyx_pymod_exec_unit02’: helpers_test_package/unit02.c:869:65: warning: implicit declaration of function ‘_PyDict_NewPresized’ [-Wimplicit-function-declaration] 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:869:63: warning: pointer/integer type mismatch in conditional expression 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_tp_dict_version’: helpers_test_package/unit02.c:2358:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2358 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_object_dict_version’: helpers_test_package/unit02.c:2363:37: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2363 | Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; | ^~ helpers_test_package/unit02.c:2366:81: warning: implicit declaration of function ‘_PyObject_GetDictPtr’; did you mean ‘PyObject_GetAttr’? [-Wimplicit-function-declaration] 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^~~~~~~~~~~~~~~~~~~~ | PyObject_GetAttr helpers_test_package/unit02.c:2366:79: warning: pointer/integer type mismatch in conditional expression 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_object_dict_version_matches’: helpers_test_package/unit02.c:2374:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2374 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesTuple’: helpers_test_package/unit02.c:2385:9: warning: implicit declaration of function ‘PyTuple_GET_SIZE’; did you mean ‘PyTuple_GetSlice’? [-Wimplicit-function-declaration] 2385 | n = PyTuple_GET_SIZE(tuple); | ^~~~~~~~~~~~~~~~ | PyTuple_GetSlice helpers_test_package/unit02.c:2388:25: warning: implicit declaration of function ‘PyTuple_GET_ITEM’; did you mean ‘PyTuple_GetItem’? [-Wimplicit-function-declaration] 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~~~~~~~~~~~~~~~ | PyTuple_GetItem helpers_test_package/unit02.c:2388:22: warning: comparison between pointer and integer 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:2392:57: warning: passing argument 2 of ‘__Pyx_PyErr_GivenExceptionMatches’ makes pointer from integer without a cast [-Wint-conversion] 2392 | if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int helpers_test_package/unit02.c:1680:85: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 1680 | static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); | ~~~~~~~~~~^~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesInState’: helpers_test_package/unit02.c:2405:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2405 | exc_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrRestoreInState’: helpers_test_package/unit02.c:2441:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2441 | tmp_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2442:23: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2442 | tmp_value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2443:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2443 | tmp_tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2444:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2444 | tstate->curexc_type = type; | ^~ helpers_test_package/unit02.c:2445:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2445 | tstate->curexc_value = value; | ^~ helpers_test_package/unit02.c:2446:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2446 | tstate->curexc_traceback = tb; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrFetchInState’: helpers_test_package/unit02.c:2471:19: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2471 | *type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2472:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2472 | *value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2473:17: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2473 | *tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2474:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2474 | tstate->curexc_type = 0; | ^~ helpers_test_package/unit02.c:2475:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2475 | tstate->curexc_value = 0; | ^~ helpers_test_package/unit02.c:2476:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2476 | tstate->curexc_traceback = 0; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr’: helpers_test_package/unit02.c:2485:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2485 | if (likely(tp->tp_getattro)) | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2486:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2486 | return tp->tp_getattro(obj, attr_name); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr_ClearAttributeError’: helpers_test_package/unit02.c:794:39: warning: implicit declaration of function ‘_PyThreadState_UncheckedGet’ [-Wimplicit-function-declaration] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:52: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:50: warning: assignment to ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStrNoError’: helpers_test_package/unit02.c:2506:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2506 | if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2507:16: warning: implicit declaration of function ‘_PyObject_GenericGetAttrWithDict’; did you mean ‘PyObject_GenericGetDict’? [-Wimplicit-function-declaration] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PyObject_GenericGetDict helpers_test_package/unit02.c:2507:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CLineForTraceback’: helpers_test_package/unit02.c:2531:25: warning: assignment to ‘PyObject **’ {aka ‘struct _object **’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2531 | cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1536:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1536 | __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1530:24: warning: variable ‘__pyx_dict_version’ set but not used [-Wunused-but-set-variable] 1530 | static PY_UINT64_T __pyx_dict_version = 0;\ | ^~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from helpers_test_package/unit02.c:2650: /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:49:5: error: unknown type name ‘PyFunctionObject’ 49 | PyFunctionObject *f_func; /* Strong reference */ | ^~~~~~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:61:5: error: unknown type name ‘_Py_CODEUNIT’ 61 | _Py_CODEUNIT *prev_instr; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_Stackbase’: /usr/include/python3.11/internal/pycore_frame.h:73:37: error: invalid use of incomplete typedef ‘PyCodeObject’ 73 | return f->localsplus + f->f_code->co_nlocalsplus; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:103:33: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 103 | _PyInterpreterFrame *frame, PyFunctionObject *func, | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_IsIncomplete’: /usr/include/python3.11/internal/pycore_frame.h:151:25: warning: implicit declaration of function ‘_PyCode_CODE’ [-Wimplicit-function-declaration] 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:151:68: error: invalid use of incomplete typedef ‘PyCodeObject’ 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_HasStackSpace’: /usr/include/python3.11/internal/pycore_frame.h:206:18: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 206 | return tstate->datastack_top != NULL && | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:31: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:57: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_BumpFramePointer’: /usr/include/python3.11/internal/pycore_frame.h:214:65: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 214 | _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; | ^~ /usr/include/python3.11/internal/pycore_frame.h:215:15: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 215 | tstate->datastack_top += size; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:225:38: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 225 | _PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h:230:1: error: unknown type name ‘PyGenObject’ 230 | PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) | ^~~~~~~~~~~ In file included from helpers_test_package/unit02.c:53: /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_GetGenerator’: /usr/include/python3.11/internal/pycore_frame.h:233:37: error: unknown type name ‘PyGenObject’ 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:234:13: error: ‘PyGenObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^~~~~~~~~~~ | PyVarObject /usr/include/python3.11/internal/pycore_frame.h:234:26: error: expected expression before ‘)’ token 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^ /usr/include/python3.11/internal/pycore_frame.h:233:12: warning: unused variable ‘offset_in_gen’ [-Wunused-variable] 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CreateCodeObjectForTraceback’: helpers_test_package/unit02.c:2750:20: warning: implicit declaration of function ‘PyUnicode_AsUTF8’; did you mean ‘PyUnicode_AsUCS4’? [-Wimplicit-function-declaration] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^~~~~~~~~~~~~~~~ | PyUnicode_AsUCS4 helpers_test_package/unit02.c:2750:18: warning: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^ helpers_test_package/unit02.c:2781:15: warning: implicit declaration of function ‘PyCode_NewEmpty’ [-Wimplicit-function-declaration] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2781:13: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^ helpers_test_package/unit02.c: In function ‘__Pyx_AddTraceback’: helpers_test_package/unit02.c:794:39: warning: initialization of ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2796:29: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 2796 | PyThreadState *tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2817:16: warning: implicit declaration of function ‘PyFrame_New’; did you mean ‘PyWrapper_New’? [-Wimplicit-function-declaration] 2817 | py_frame = PyFrame_New( | ^~~~~~~~~~~ | PyWrapper_New helpers_test_package/unit02.c:2817:14: warning: assignment to ‘PyFrameObject *’ {aka ‘struct _frame *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2817 | py_frame = PyFrame_New( | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_From_long’: helpers_test_package/unit02.c:3025:16: warning: implicit declaration of function ‘_PyLong_FromByteArray’ [-Wimplicit-function-declaration] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3025:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3026 | little, !is_unsigned); | ~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_long’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3105:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3105:70: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3107:23: error: unknown type name ‘digit’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3107:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3111:53: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3111 | if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3165:23: error: unknown type name ‘digit’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3165:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3248:23: warning: implicit declaration of function ‘_PyLong_AsByteArray’ [-Wimplicit-function-declaration] 3248 | ret = _PyLong_AsByteArray((PyLongObject *)v, | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_int’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3378:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3378:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3380:23: error: unknown type name ‘digit’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3380:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3384:52: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3384 | if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3438:23: error: unknown type name ‘digit’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3438:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_InBases’: helpers_test_package/unit02.c:814:64: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 814 | #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) | ^~ helpers_test_package/unit02.c:3625:13: note: in expansion of macro ‘__Pyx_PyType_GetSlot’ 3625 | a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_IsSubtype’: helpers_test_package/unit02.c:3634:12: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3634 | mro = a->tp_mro; | ^~ helpers_test_package/unit02.c:3639:42: warning: comparison between pointer and integer 3639 | if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_IsAnySubtype2’: helpers_test_package/unit02.c:3649:14: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3649 | mro = cls->tp_mro; | ^~ helpers_test_package/unit02.c:3654:30: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3654 | PyObject *base = PyTuple_GET_ITEM(mro, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_GivenExceptionMatchesTuple’: helpers_test_package/unit02.c:3699:22: warning: comparison between pointer and integer 3699 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:3703:23: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3703 | PyObject *t = PyTuple_GET_ITEM(tuple, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_AsStringAndSize’: helpers_test_package/unit02.c:3876:19: warning: implicit declaration of function ‘PyByteArray_GET_SIZE’; did you mean ‘PyByteArray_Resize’? [-Wimplicit-function-declaration] 3876 | *length = PyByteArray_GET_SIZE(o); | ^~~~~~~~~~~~~~~~~~~~ | PyByteArray_Resize helpers_test_package/unit02.c:3877:16: warning: implicit declaration of function ‘PyByteArray_AS_STRING’; did you mean ‘PyByteArray_AsString’? [-Wimplicit-function-declaration] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~ | PyByteArray_AsString helpers_test_package/unit02.c:3877:16: warning: returning ‘int’ from a function with return type ‘const char *’ makes pointer from integer without a cast [-Wint-conversion] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLongWrongResultType’: helpers_test_package/unit02.c:1656:39: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 1656 | #define __Pyx_PyType_GetName(tp) ((tp)->tp_name) | ^~ helpers_test_package/unit02.c:3903:39: note: in expansion of macro ‘__Pyx_PyType_GetName’ 3903 | __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLong’: helpers_test_package/unit02.c:3928:3: error: unknown type name ‘PyNumberMethods’ 3928 | PyNumberMethods *m; | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3939:17: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3939 | m = Py_TYPE(x)->tp_as_number; | ^~ helpers_test_package/unit02.c:3950:20: error: request for member ‘nb_int’ in something not a structure or union 3950 | if (likely(m && m->nb_int)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:3952:12: error: request for member ‘nb_int’ in something not a structure or union 3952 | res = m->nb_int(x); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyIndex_AsSsize_t’: helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3991:13: error: unknown type name ‘digit’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3991:29: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3995:45: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3995 | if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { | ^~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 _________________ test_limited_api[both-cp310-False-setup.cfg] _________________ tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_limited_api_both_cp310_Fa0') config = 'setup.cfg', envvar = False, limited_api = 'cp310' extension_type = 'both' @pytest.mark.parametrize("config", ("setup.cfg", "pyproject.toml")) @pytest.mark.parametrize("envvar", (False, True)) @pytest.mark.parametrize("limited_api", (None, "cp310")) @pytest.mark.parametrize("extension_type", ("c", "pyx", "both")) def test_limited_api(tmp_path, config, envvar, limited_api, extension_type): if sys.version_info < (3, 11): pytest.skip( "This test requires setuptools>=65.4 which is only available for Python 3.11 and later" ) package = _extension_test_package( tmp_path, extension_type=extension_type, include_numpy=True, include_setup_py=False ) if config == "setup.cfg": setup_cfg = dedent( """\ [metadata] name = helpers_test_package version = 0.1 [options] packages = find: [extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: setup_cfg += f"\n[bdist_wheel]\npy_limited_api={limited_api}" elif envvar: # Make sure if we are using the environment variable that it takes # precedence over this setting (this only works for setup.cfg) setup_cfg += "\n[bdist_wheel]\npy_limited_api=cp35" (package / "setup.cfg").write_text(setup_cfg) # Still require a minimal pyproject.toml file if no setup.py file (package / "pyproject.toml").write_text( dedent( """ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [tool.extension-helpers] use_extension_helpers = true """ ) ) elif config == "pyproject.toml": pyproject_toml = dedent( """\ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [project] name = "helpers_test_package" version = "0.1" [tool.setuptools.packages] find = {namespaces = false} [tool.extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: pyproject_toml += f'\n[tool.distutils.bdist_wheel]\npy-limited-api = "{limited_api}"' (package / "pyproject.toml").write_text(pyproject_toml) env = os.environ.copy() if envvar: if limited_api: env["EXTENSION_HELPERS_PY_LIMITED_API"] = limited_api else: env["EXTENSION_HELPERS_PY_LIMITED_API"] = "" with chdir(package): > subprocess.run( [sys.executable, "-m", "build", "--wheel", "--no-isolation"], env=env, check=True ) extension_helpers/tests/test_setup_helpers.py:562: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ input = None, capture_output = False, timeout = None, check = True popenargs = (['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation'],) kwargs = {'env': {'BASH_FUNC_which%%': '() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --rea...-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection', 'CONFIG_SITE': 'NONE', ...}} process = stdout = None, stderr = None, retcode = 1 def run(*popenargs, input=None, capture_output=False, timeout=None, check=False, **kwargs): """Run command with arguments and return a CompletedProcess instance. The returned instance will have attributes args, returncode, stdout and stderr. By default, stdout and stderr are not captured, and those attributes will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them, or pass capture_output=True to capture both. If check is True and the exit code was non-zero, it raises a CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute, and output & stderr attributes if those streams were captured. If timeout is given, and the process takes too long, a TimeoutExpired exception will be raised. There is an optional argument "input", allowing you to pass bytes or a string to the subprocess's stdin. If you use this argument you may not also use the Popen constructor's "stdin" argument, as it will be used internally. By default, all communication is in bytes, and therefore any "input" should be bytes, and the stdout and stderr will be bytes. If in text mode, any "input" should be a string, and stdout and stderr will be strings decoded according to locale encoding, or by "encoding" if set. Text mode is triggered by setting any of text, encoding, errors or universal_newlines. The other arguments are the same as for the Popen constructor. """ if input is not None: if kwargs.get('stdin') is not None: raise ValueError('stdin and input arguments may not both be used.') kwargs['stdin'] = PIPE if capture_output: if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None: raise ValueError('stdout and stderr arguments may not be used ' 'with capture_output.') kwargs['stdout'] = PIPE kwargs['stderr'] = PIPE with Popen(*popenargs, **kwargs) as process: try: stdout, stderr = process.communicate(input, timeout=timeout) except TimeoutExpired as exc: process.kill() if _mswindows: # Windows accumulates the output in a single blocking # read() call run on child threads, with the timeout # being done in a join() on those threads. communicate() # _after_ kill() is required to collect that and add it # to the exception. exc.stdout, exc.stderr = process.communicate() else: # POSIX _communicate already populated the output so # far into the TimeoutExpired exception. process.wait() raise except: # Including KeyboardInterrupt, communicate handled that. process.kill() # We don't call process.wait() as .__exit__ does that for us. raise retcode = process.poll() if check and retcode: > raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) E subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation']' returned non-zero exit status 1. /usr/lib64/python3.11/subprocess.py:571: CalledProcessError ----------------------------- Captured stdout call ----------------------------- * Getting build dependencies for wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running egg_info creating helpers_test_package.egg-info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' * Building wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/__init__.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/setup_package.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package running build_ext building 'helpers_test_package.unit01' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/helpers_test_package gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit01.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit01.o gcc -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection build/temp.linux-x86_64-cpython-311/helpers_test_package/unit01.o -L/usr/lib64 -o build/lib.linux-x86_64-cpython-311/helpers_test_package/unit01.abi3.so Compiling helpers_test_package/unit02.pyx because it changed. [1/1] Cythonizing helpers_test_package/unit02.pyx building 'helpers_test_package.unit02' extension gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit02.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit02.o ERROR Backend subprocess exited when trying to invoke build_wheel ----------------------------- Captured stderr call ----------------------------- WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section warning: build_py: byte-compiling is disabled, skipping. /usr/lib64/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-mockbuild/pytest-0/test_limited_api_both_cp310_Fa0/test_pkg/helpers_test_package/unit02.pyx tree = Parsing.p_module(s, pxd, full_module_name) helpers_test_package/unit02.c: In function ‘__Pyx_PyCode_New’: helpers_test_package/unit02.c:662:9: warning: implicit declaration of function ‘PyCode_NewWithPosOnlyArgs’ [-Wimplicit-function-declaration] 662 | PyCode_NewWithPosOnlyArgs | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:658:12: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 658 | result = | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyDict_GetItemStr’: helpers_test_package/unit02.c:881:55: warning: implicit declaration of function ‘_PyDict_GetItem_KnownHash’ [-Wimplicit-function-declaration] 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: error: ‘PyASCIIObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: note: each undeclared identifier is reported only once for each function it appears in 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:110: error: expected expression before ‘)’ token 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1256:59: error: unknown type name ‘Py_UNICODE’ 1256 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) | ^~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_Py_UNICODE_strlen’: helpers_test_package/unit02.c:1258:11: error: unknown type name ‘Py_UNICODE’ 1258 | const Py_UNICODE *u_end = u; | ^~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1326:11: error: unknown type name ‘sdigit’ 1326 | typedef sdigit __Pyx_compact_pylong; | ^~~~~~ helpers_test_package/unit02.c:1327:11: error: unknown type name ‘digit’ 1327 | typedef digit __Pyx_compact_upylong; | ^~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_check_single_interpreter’: helpers_test_package/unit02.c:2078:73: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2078 | PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); | ^~ helpers_test_package/unit02.c: In function ‘__pyx_pymod_exec_unit02’: helpers_test_package/unit02.c:869:65: warning: implicit declaration of function ‘_PyDict_NewPresized’ [-Wimplicit-function-declaration] 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:869:63: warning: pointer/integer type mismatch in conditional expression 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_tp_dict_version’: helpers_test_package/unit02.c:2358:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2358 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_object_dict_version’: helpers_test_package/unit02.c:2363:37: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2363 | Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; | ^~ helpers_test_package/unit02.c:2366:81: warning: implicit declaration of function ‘_PyObject_GetDictPtr’; did you mean ‘PyObject_GetAttr’? [-Wimplicit-function-declaration] 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^~~~~~~~~~~~~~~~~~~~ | PyObject_GetAttr helpers_test_package/unit02.c:2366:79: warning: pointer/integer type mismatch in conditional expression 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_object_dict_version_matches’: helpers_test_package/unit02.c:2374:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2374 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesTuple’: helpers_test_package/unit02.c:2385:9: warning: implicit declaration of function ‘PyTuple_GET_SIZE’; did you mean ‘PyTuple_GetSlice’? [-Wimplicit-function-declaration] 2385 | n = PyTuple_GET_SIZE(tuple); | ^~~~~~~~~~~~~~~~ | PyTuple_GetSlice helpers_test_package/unit02.c:2388:25: warning: implicit declaration of function ‘PyTuple_GET_ITEM’; did you mean ‘PyTuple_GetItem’? [-Wimplicit-function-declaration] 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~~~~~~~~~~~~~~~ | PyTuple_GetItem helpers_test_package/unit02.c:2388:22: warning: comparison between pointer and integer 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:2392:57: warning: passing argument 2 of ‘__Pyx_PyErr_GivenExceptionMatches’ makes pointer from integer without a cast [-Wint-conversion] 2392 | if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int helpers_test_package/unit02.c:1680:85: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 1680 | static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); | ~~~~~~~~~~^~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesInState’: helpers_test_package/unit02.c:2405:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2405 | exc_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrRestoreInState’: helpers_test_package/unit02.c:2441:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2441 | tmp_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2442:23: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2442 | tmp_value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2443:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2443 | tmp_tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2444:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2444 | tstate->curexc_type = type; | ^~ helpers_test_package/unit02.c:2445:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2445 | tstate->curexc_value = value; | ^~ helpers_test_package/unit02.c:2446:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2446 | tstate->curexc_traceback = tb; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrFetchInState’: helpers_test_package/unit02.c:2471:19: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2471 | *type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2472:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2472 | *value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2473:17: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2473 | *tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2474:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2474 | tstate->curexc_type = 0; | ^~ helpers_test_package/unit02.c:2475:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2475 | tstate->curexc_value = 0; | ^~ helpers_test_package/unit02.c:2476:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2476 | tstate->curexc_traceback = 0; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr’: helpers_test_package/unit02.c:2485:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2485 | if (likely(tp->tp_getattro)) | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2486:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2486 | return tp->tp_getattro(obj, attr_name); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr_ClearAttributeError’: helpers_test_package/unit02.c:794:39: warning: implicit declaration of function ‘_PyThreadState_UncheckedGet’ [-Wimplicit-function-declaration] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:52: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:50: warning: assignment to ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStrNoError’: helpers_test_package/unit02.c:2506:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2506 | if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2507:16: warning: implicit declaration of function ‘_PyObject_GenericGetAttrWithDict’; did you mean ‘PyObject_GenericGetDict’? [-Wimplicit-function-declaration] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PyObject_GenericGetDict helpers_test_package/unit02.c:2507:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CLineForTraceback’: helpers_test_package/unit02.c:2531:25: warning: assignment to ‘PyObject **’ {aka ‘struct _object **’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2531 | cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1536:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1536 | __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1530:24: warning: variable ‘__pyx_dict_version’ set but not used [-Wunused-but-set-variable] 1530 | static PY_UINT64_T __pyx_dict_version = 0;\ | ^~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from helpers_test_package/unit02.c:2650: /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:49:5: error: unknown type name ‘PyFunctionObject’ 49 | PyFunctionObject *f_func; /* Strong reference */ | ^~~~~~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:61:5: error: unknown type name ‘_Py_CODEUNIT’ 61 | _Py_CODEUNIT *prev_instr; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_Stackbase’: /usr/include/python3.11/internal/pycore_frame.h:73:37: error: invalid use of incomplete typedef ‘PyCodeObject’ 73 | return f->localsplus + f->f_code->co_nlocalsplus; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:103:33: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 103 | _PyInterpreterFrame *frame, PyFunctionObject *func, | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_IsIncomplete’: /usr/include/python3.11/internal/pycore_frame.h:151:25: warning: implicit declaration of function ‘_PyCode_CODE’ [-Wimplicit-function-declaration] 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:151:68: error: invalid use of incomplete typedef ‘PyCodeObject’ 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_HasStackSpace’: /usr/include/python3.11/internal/pycore_frame.h:206:18: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 206 | return tstate->datastack_top != NULL && | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:31: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:57: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_BumpFramePointer’: /usr/include/python3.11/internal/pycore_frame.h:214:65: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 214 | _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; | ^~ /usr/include/python3.11/internal/pycore_frame.h:215:15: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 215 | tstate->datastack_top += size; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:225:38: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 225 | _PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h:230:1: error: unknown type name ‘PyGenObject’ 230 | PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) | ^~~~~~~~~~~ In file included from helpers_test_package/unit02.c:53: /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_GetGenerator’: /usr/include/python3.11/internal/pycore_frame.h:233:37: error: unknown type name ‘PyGenObject’ 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:234:13: error: ‘PyGenObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^~~~~~~~~~~ | PyVarObject /usr/include/python3.11/internal/pycore_frame.h:234:26: error: expected expression before ‘)’ token 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^ /usr/include/python3.11/internal/pycore_frame.h:233:12: warning: unused variable ‘offset_in_gen’ [-Wunused-variable] 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CreateCodeObjectForTraceback’: helpers_test_package/unit02.c:2750:20: warning: implicit declaration of function ‘PyUnicode_AsUTF8’; did you mean ‘PyUnicode_AsUCS4’? [-Wimplicit-function-declaration] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^~~~~~~~~~~~~~~~ | PyUnicode_AsUCS4 helpers_test_package/unit02.c:2750:18: warning: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^ helpers_test_package/unit02.c:2781:15: warning: implicit declaration of function ‘PyCode_NewEmpty’ [-Wimplicit-function-declaration] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2781:13: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^ helpers_test_package/unit02.c: In function ‘__Pyx_AddTraceback’: helpers_test_package/unit02.c:794:39: warning: initialization of ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2796:29: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 2796 | PyThreadState *tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2817:16: warning: implicit declaration of function ‘PyFrame_New’; did you mean ‘PyWrapper_New’? [-Wimplicit-function-declaration] 2817 | py_frame = PyFrame_New( | ^~~~~~~~~~~ | PyWrapper_New helpers_test_package/unit02.c:2817:14: warning: assignment to ‘PyFrameObject *’ {aka ‘struct _frame *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2817 | py_frame = PyFrame_New( | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_From_long’: helpers_test_package/unit02.c:3025:16: warning: implicit declaration of function ‘_PyLong_FromByteArray’ [-Wimplicit-function-declaration] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3025:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3026 | little, !is_unsigned); | ~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_long’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3105:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3105:70: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3107:23: error: unknown type name ‘digit’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3107:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3111:53: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3111 | if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3165:23: error: unknown type name ‘digit’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3165:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3248:23: warning: implicit declaration of function ‘_PyLong_AsByteArray’ [-Wimplicit-function-declaration] 3248 | ret = _PyLong_AsByteArray((PyLongObject *)v, | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_int’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3378:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3378:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3380:23: error: unknown type name ‘digit’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3380:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3384:52: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3384 | if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3438:23: error: unknown type name ‘digit’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3438:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_InBases’: helpers_test_package/unit02.c:814:64: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 814 | #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) | ^~ helpers_test_package/unit02.c:3625:13: note: in expansion of macro ‘__Pyx_PyType_GetSlot’ 3625 | a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_IsSubtype’: helpers_test_package/unit02.c:3634:12: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3634 | mro = a->tp_mro; | ^~ helpers_test_package/unit02.c:3639:42: warning: comparison between pointer and integer 3639 | if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_IsAnySubtype2’: helpers_test_package/unit02.c:3649:14: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3649 | mro = cls->tp_mro; | ^~ helpers_test_package/unit02.c:3654:30: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3654 | PyObject *base = PyTuple_GET_ITEM(mro, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_GivenExceptionMatchesTuple’: helpers_test_package/unit02.c:3699:22: warning: comparison between pointer and integer 3699 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:3703:23: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3703 | PyObject *t = PyTuple_GET_ITEM(tuple, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_AsStringAndSize’: helpers_test_package/unit02.c:3876:19: warning: implicit declaration of function ‘PyByteArray_GET_SIZE’; did you mean ‘PyByteArray_Resize’? [-Wimplicit-function-declaration] 3876 | *length = PyByteArray_GET_SIZE(o); | ^~~~~~~~~~~~~~~~~~~~ | PyByteArray_Resize helpers_test_package/unit02.c:3877:16: warning: implicit declaration of function ‘PyByteArray_AS_STRING’; did you mean ‘PyByteArray_AsString’? [-Wimplicit-function-declaration] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~ | PyByteArray_AsString helpers_test_package/unit02.c:3877:16: warning: returning ‘int’ from a function with return type ‘const char *’ makes pointer from integer without a cast [-Wint-conversion] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLongWrongResultType’: helpers_test_package/unit02.c:1656:39: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 1656 | #define __Pyx_PyType_GetName(tp) ((tp)->tp_name) | ^~ helpers_test_package/unit02.c:3903:39: note: in expansion of macro ‘__Pyx_PyType_GetName’ 3903 | __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLong’: helpers_test_package/unit02.c:3928:3: error: unknown type name ‘PyNumberMethods’ 3928 | PyNumberMethods *m; | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3939:17: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3939 | m = Py_TYPE(x)->tp_as_number; | ^~ helpers_test_package/unit02.c:3950:20: error: request for member ‘nb_int’ in something not a structure or union 3950 | if (likely(m && m->nb_int)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:3952:12: error: request for member ‘nb_int’ in something not a structure or union 3952 | res = m->nb_int(x); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyIndex_AsSsize_t’: helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3991:13: error: unknown type name ‘digit’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3991:29: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3995:45: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3995 | if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { | ^~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 ______________ test_limited_api[both-cp310-False-pyproject.toml] _______________ tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_limited_api_both_cp310_Fa1') config = 'pyproject.toml', envvar = False, limited_api = 'cp310' extension_type = 'both' @pytest.mark.parametrize("config", ("setup.cfg", "pyproject.toml")) @pytest.mark.parametrize("envvar", (False, True)) @pytest.mark.parametrize("limited_api", (None, "cp310")) @pytest.mark.parametrize("extension_type", ("c", "pyx", "both")) def test_limited_api(tmp_path, config, envvar, limited_api, extension_type): if sys.version_info < (3, 11): pytest.skip( "This test requires setuptools>=65.4 which is only available for Python 3.11 and later" ) package = _extension_test_package( tmp_path, extension_type=extension_type, include_numpy=True, include_setup_py=False ) if config == "setup.cfg": setup_cfg = dedent( """\ [metadata] name = helpers_test_package version = 0.1 [options] packages = find: [extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: setup_cfg += f"\n[bdist_wheel]\npy_limited_api={limited_api}" elif envvar: # Make sure if we are using the environment variable that it takes # precedence over this setting (this only works for setup.cfg) setup_cfg += "\n[bdist_wheel]\npy_limited_api=cp35" (package / "setup.cfg").write_text(setup_cfg) # Still require a minimal pyproject.toml file if no setup.py file (package / "pyproject.toml").write_text( dedent( """ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [tool.extension-helpers] use_extension_helpers = true """ ) ) elif config == "pyproject.toml": pyproject_toml = dedent( """\ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [project] name = "helpers_test_package" version = "0.1" [tool.setuptools.packages] find = {namespaces = false} [tool.extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: pyproject_toml += f'\n[tool.distutils.bdist_wheel]\npy-limited-api = "{limited_api}"' (package / "pyproject.toml").write_text(pyproject_toml) env = os.environ.copy() if envvar: if limited_api: env["EXTENSION_HELPERS_PY_LIMITED_API"] = limited_api else: env["EXTENSION_HELPERS_PY_LIMITED_API"] = "" with chdir(package): > subprocess.run( [sys.executable, "-m", "build", "--wheel", "--no-isolation"], env=env, check=True ) extension_helpers/tests/test_setup_helpers.py:562: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ input = None, capture_output = False, timeout = None, check = True popenargs = (['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation'],) kwargs = {'env': {'BASH_FUNC_which%%': '() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --rea...-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection', 'CONFIG_SITE': 'NONE', ...}} process = stdout = None, stderr = None, retcode = 1 def run(*popenargs, input=None, capture_output=False, timeout=None, check=False, **kwargs): """Run command with arguments and return a CompletedProcess instance. The returned instance will have attributes args, returncode, stdout and stderr. By default, stdout and stderr are not captured, and those attributes will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them, or pass capture_output=True to capture both. If check is True and the exit code was non-zero, it raises a CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute, and output & stderr attributes if those streams were captured. If timeout is given, and the process takes too long, a TimeoutExpired exception will be raised. There is an optional argument "input", allowing you to pass bytes or a string to the subprocess's stdin. If you use this argument you may not also use the Popen constructor's "stdin" argument, as it will be used internally. By default, all communication is in bytes, and therefore any "input" should be bytes, and the stdout and stderr will be bytes. If in text mode, any "input" should be a string, and stdout and stderr will be strings decoded according to locale encoding, or by "encoding" if set. Text mode is triggered by setting any of text, encoding, errors or universal_newlines. The other arguments are the same as for the Popen constructor. """ if input is not None: if kwargs.get('stdin') is not None: raise ValueError('stdin and input arguments may not both be used.') kwargs['stdin'] = PIPE if capture_output: if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None: raise ValueError('stdout and stderr arguments may not be used ' 'with capture_output.') kwargs['stdout'] = PIPE kwargs['stderr'] = PIPE with Popen(*popenargs, **kwargs) as process: try: stdout, stderr = process.communicate(input, timeout=timeout) except TimeoutExpired as exc: process.kill() if _mswindows: # Windows accumulates the output in a single blocking # read() call run on child threads, with the timeout # being done in a join() on those threads. communicate() # _after_ kill() is required to collect that and add it # to the exception. exc.stdout, exc.stderr = process.communicate() else: # POSIX _communicate already populated the output so # far into the TimeoutExpired exception. process.wait() raise except: # Including KeyboardInterrupt, communicate handled that. process.kill() # We don't call process.wait() as .__exit__ does that for us. raise retcode = process.poll() if check and retcode: > raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) E subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation']' returned non-zero exit status 1. /usr/lib64/python3.11/subprocess.py:571: CalledProcessError ----------------------------- Captured stdout call ----------------------------- * Getting build dependencies for wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running egg_info creating helpers_test_package.egg-info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' * Building wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/__init__.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/setup_package.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package running egg_info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' copying helpers_test_package/_compiler.c -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/unit01.c -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/unit02.pyx -> build/lib.linux-x86_64-cpython-311/helpers_test_package running build_ext building 'helpers_test_package.unit01' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/helpers_test_package gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit01.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit01.o gcc -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection build/temp.linux-x86_64-cpython-311/helpers_test_package/unit01.o -L/usr/lib64 -o build/lib.linux-x86_64-cpython-311/helpers_test_package/unit01.abi3.so Compiling helpers_test_package/unit02.pyx because it changed. [1/1] Cythonizing helpers_test_package/unit02.pyx building 'helpers_test_package.unit02' extension gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit02.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit02.o ERROR Backend subprocess exited when trying to invoke build_wheel ----------------------------- Captured stderr call ----------------------------- WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) warning: build_py: byte-compiling is disabled, skipping. /usr/lib64/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-mockbuild/pytest-0/test_limited_api_both_cp310_Fa1/test_pkg/helpers_test_package/unit02.pyx tree = Parsing.p_module(s, pxd, full_module_name) helpers_test_package/unit02.c: In function ‘__Pyx_PyCode_New’: helpers_test_package/unit02.c:662:9: warning: implicit declaration of function ‘PyCode_NewWithPosOnlyArgs’ [-Wimplicit-function-declaration] 662 | PyCode_NewWithPosOnlyArgs | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:658:12: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 658 | result = | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyDict_GetItemStr’: helpers_test_package/unit02.c:881:55: warning: implicit declaration of function ‘_PyDict_GetItem_KnownHash’ [-Wimplicit-function-declaration] 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: error: ‘PyASCIIObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: note: each undeclared identifier is reported only once for each function it appears in 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:110: error: expected expression before ‘)’ token 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1256:59: error: unknown type name ‘Py_UNICODE’ 1256 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) | ^~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_Py_UNICODE_strlen’: helpers_test_package/unit02.c:1258:11: error: unknown type name ‘Py_UNICODE’ 1258 | const Py_UNICODE *u_end = u; | ^~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1326:11: error: unknown type name ‘sdigit’ 1326 | typedef sdigit __Pyx_compact_pylong; | ^~~~~~ helpers_test_package/unit02.c:1327:11: error: unknown type name ‘digit’ 1327 | typedef digit __Pyx_compact_upylong; | ^~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_check_single_interpreter’: helpers_test_package/unit02.c:2078:73: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2078 | PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); | ^~ helpers_test_package/unit02.c: In function ‘__pyx_pymod_exec_unit02’: helpers_test_package/unit02.c:869:65: warning: implicit declaration of function ‘_PyDict_NewPresized’ [-Wimplicit-function-declaration] 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:869:63: warning: pointer/integer type mismatch in conditional expression 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_tp_dict_version’: helpers_test_package/unit02.c:2358:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2358 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_object_dict_version’: helpers_test_package/unit02.c:2363:37: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2363 | Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; | ^~ helpers_test_package/unit02.c:2366:81: warning: implicit declaration of function ‘_PyObject_GetDictPtr’; did you mean ‘PyObject_GetAttr’? [-Wimplicit-function-declaration] 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^~~~~~~~~~~~~~~~~~~~ | PyObject_GetAttr helpers_test_package/unit02.c:2366:79: warning: pointer/integer type mismatch in conditional expression 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_object_dict_version_matches’: helpers_test_package/unit02.c:2374:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2374 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesTuple’: helpers_test_package/unit02.c:2385:9: warning: implicit declaration of function ‘PyTuple_GET_SIZE’; did you mean ‘PyTuple_GetSlice’? [-Wimplicit-function-declaration] 2385 | n = PyTuple_GET_SIZE(tuple); | ^~~~~~~~~~~~~~~~ | PyTuple_GetSlice helpers_test_package/unit02.c:2388:25: warning: implicit declaration of function ‘PyTuple_GET_ITEM’; did you mean ‘PyTuple_GetItem’? [-Wimplicit-function-declaration] 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~~~~~~~~~~~~~~~ | PyTuple_GetItem helpers_test_package/unit02.c:2388:22: warning: comparison between pointer and integer 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:2392:57: warning: passing argument 2 of ‘__Pyx_PyErr_GivenExceptionMatches’ makes pointer from integer without a cast [-Wint-conversion] 2392 | if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int helpers_test_package/unit02.c:1680:85: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 1680 | static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); | ~~~~~~~~~~^~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesInState’: helpers_test_package/unit02.c:2405:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2405 | exc_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrRestoreInState’: helpers_test_package/unit02.c:2441:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2441 | tmp_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2442:23: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2442 | tmp_value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2443:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2443 | tmp_tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2444:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2444 | tstate->curexc_type = type; | ^~ helpers_test_package/unit02.c:2445:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2445 | tstate->curexc_value = value; | ^~ helpers_test_package/unit02.c:2446:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2446 | tstate->curexc_traceback = tb; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrFetchInState’: helpers_test_package/unit02.c:2471:19: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2471 | *type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2472:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2472 | *value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2473:17: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2473 | *tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2474:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2474 | tstate->curexc_type = 0; | ^~ helpers_test_package/unit02.c:2475:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2475 | tstate->curexc_value = 0; | ^~ helpers_test_package/unit02.c:2476:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2476 | tstate->curexc_traceback = 0; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr’: helpers_test_package/unit02.c:2485:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2485 | if (likely(tp->tp_getattro)) | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2486:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2486 | return tp->tp_getattro(obj, attr_name); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr_ClearAttributeError’: helpers_test_package/unit02.c:794:39: warning: implicit declaration of function ‘_PyThreadState_UncheckedGet’ [-Wimplicit-function-declaration] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:52: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:50: warning: assignment to ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStrNoError’: helpers_test_package/unit02.c:2506:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2506 | if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2507:16: warning: implicit declaration of function ‘_PyObject_GenericGetAttrWithDict’; did you mean ‘PyObject_GenericGetDict’? [-Wimplicit-function-declaration] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PyObject_GenericGetDict helpers_test_package/unit02.c:2507:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CLineForTraceback’: helpers_test_package/unit02.c:2531:25: warning: assignment to ‘PyObject **’ {aka ‘struct _object **’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2531 | cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1536:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1536 | __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1530:24: warning: variable ‘__pyx_dict_version’ set but not used [-Wunused-but-set-variable] 1530 | static PY_UINT64_T __pyx_dict_version = 0;\ | ^~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from helpers_test_package/unit02.c:2650: /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:49:5: error: unknown type name ‘PyFunctionObject’ 49 | PyFunctionObject *f_func; /* Strong reference */ | ^~~~~~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:61:5: error: unknown type name ‘_Py_CODEUNIT’ 61 | _Py_CODEUNIT *prev_instr; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_Stackbase’: /usr/include/python3.11/internal/pycore_frame.h:73:37: error: invalid use of incomplete typedef ‘PyCodeObject’ 73 | return f->localsplus + f->f_code->co_nlocalsplus; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:103:33: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 103 | _PyInterpreterFrame *frame, PyFunctionObject *func, | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_IsIncomplete’: /usr/include/python3.11/internal/pycore_frame.h:151:25: warning: implicit declaration of function ‘_PyCode_CODE’ [-Wimplicit-function-declaration] 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:151:68: error: invalid use of incomplete typedef ‘PyCodeObject’ 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_HasStackSpace’: /usr/include/python3.11/internal/pycore_frame.h:206:18: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 206 | return tstate->datastack_top != NULL && | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:31: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:57: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_BumpFramePointer’: /usr/include/python3.11/internal/pycore_frame.h:214:65: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 214 | _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; | ^~ /usr/include/python3.11/internal/pycore_frame.h:215:15: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 215 | tstate->datastack_top += size; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:225:38: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 225 | _PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h:230:1: error: unknown type name ‘PyGenObject’ 230 | PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) | ^~~~~~~~~~~ In file included from helpers_test_package/unit02.c:53: /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_GetGenerator’: /usr/include/python3.11/internal/pycore_frame.h:233:37: error: unknown type name ‘PyGenObject’ 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:234:13: error: ‘PyGenObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^~~~~~~~~~~ | PyVarObject /usr/include/python3.11/internal/pycore_frame.h:234:26: error: expected expression before ‘)’ token 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^ /usr/include/python3.11/internal/pycore_frame.h:233:12: warning: unused variable ‘offset_in_gen’ [-Wunused-variable] 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CreateCodeObjectForTraceback’: helpers_test_package/unit02.c:2750:20: warning: implicit declaration of function ‘PyUnicode_AsUTF8’; did you mean ‘PyUnicode_AsUCS4’? [-Wimplicit-function-declaration] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^~~~~~~~~~~~~~~~ | PyUnicode_AsUCS4 helpers_test_package/unit02.c:2750:18: warning: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^ helpers_test_package/unit02.c:2781:15: warning: implicit declaration of function ‘PyCode_NewEmpty’ [-Wimplicit-function-declaration] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2781:13: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^ helpers_test_package/unit02.c: In function ‘__Pyx_AddTraceback’: helpers_test_package/unit02.c:794:39: warning: initialization of ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2796:29: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 2796 | PyThreadState *tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2817:16: warning: implicit declaration of function ‘PyFrame_New’; did you mean ‘PyWrapper_New’? [-Wimplicit-function-declaration] 2817 | py_frame = PyFrame_New( | ^~~~~~~~~~~ | PyWrapper_New helpers_test_package/unit02.c:2817:14: warning: assignment to ‘PyFrameObject *’ {aka ‘struct _frame *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2817 | py_frame = PyFrame_New( | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_From_long’: helpers_test_package/unit02.c:3025:16: warning: implicit declaration of function ‘_PyLong_FromByteArray’ [-Wimplicit-function-declaration] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3025:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3026 | little, !is_unsigned); | ~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_long’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3105:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3105:70: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3107:23: error: unknown type name ‘digit’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3107:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3111:53: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3111 | if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3165:23: error: unknown type name ‘digit’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3165:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3248:23: warning: implicit declaration of function ‘_PyLong_AsByteArray’ [-Wimplicit-function-declaration] 3248 | ret = _PyLong_AsByteArray((PyLongObject *)v, | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_int’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3378:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3378:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3380:23: error: unknown type name ‘digit’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3380:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3384:52: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3384 | if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3438:23: error: unknown type name ‘digit’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3438:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_InBases’: helpers_test_package/unit02.c:814:64: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 814 | #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) | ^~ helpers_test_package/unit02.c:3625:13: note: in expansion of macro ‘__Pyx_PyType_GetSlot’ 3625 | a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_IsSubtype’: helpers_test_package/unit02.c:3634:12: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3634 | mro = a->tp_mro; | ^~ helpers_test_package/unit02.c:3639:42: warning: comparison between pointer and integer 3639 | if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_IsAnySubtype2’: helpers_test_package/unit02.c:3649:14: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3649 | mro = cls->tp_mro; | ^~ helpers_test_package/unit02.c:3654:30: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3654 | PyObject *base = PyTuple_GET_ITEM(mro, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_GivenExceptionMatchesTuple’: helpers_test_package/unit02.c:3699:22: warning: comparison between pointer and integer 3699 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:3703:23: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3703 | PyObject *t = PyTuple_GET_ITEM(tuple, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_AsStringAndSize’: helpers_test_package/unit02.c:3876:19: warning: implicit declaration of function ‘PyByteArray_GET_SIZE’; did you mean ‘PyByteArray_Resize’? [-Wimplicit-function-declaration] 3876 | *length = PyByteArray_GET_SIZE(o); | ^~~~~~~~~~~~~~~~~~~~ | PyByteArray_Resize helpers_test_package/unit02.c:3877:16: warning: implicit declaration of function ‘PyByteArray_AS_STRING’; did you mean ‘PyByteArray_AsString’? [-Wimplicit-function-declaration] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~ | PyByteArray_AsString helpers_test_package/unit02.c:3877:16: warning: returning ‘int’ from a function with return type ‘const char *’ makes pointer from integer without a cast [-Wint-conversion] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLongWrongResultType’: helpers_test_package/unit02.c:1656:39: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 1656 | #define __Pyx_PyType_GetName(tp) ((tp)->tp_name) | ^~ helpers_test_package/unit02.c:3903:39: note: in expansion of macro ‘__Pyx_PyType_GetName’ 3903 | __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLong’: helpers_test_package/unit02.c:3928:3: error: unknown type name ‘PyNumberMethods’ 3928 | PyNumberMethods *m; | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3939:17: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3939 | m = Py_TYPE(x)->tp_as_number; | ^~ helpers_test_package/unit02.c:3950:20: error: request for member ‘nb_int’ in something not a structure or union 3950 | if (likely(m && m->nb_int)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:3952:12: error: request for member ‘nb_int’ in something not a structure or union 3952 | res = m->nb_int(x); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyIndex_AsSsize_t’: helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3991:13: error: unknown type name ‘digit’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3991:29: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3995:45: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3995 | if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { | ^~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 _________________ test_limited_api[both-cp310-True-setup.cfg] __________________ tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_limited_api_both_cp310_Tr0') config = 'setup.cfg', envvar = True, limited_api = 'cp310' extension_type = 'both' @pytest.mark.parametrize("config", ("setup.cfg", "pyproject.toml")) @pytest.mark.parametrize("envvar", (False, True)) @pytest.mark.parametrize("limited_api", (None, "cp310")) @pytest.mark.parametrize("extension_type", ("c", "pyx", "both")) def test_limited_api(tmp_path, config, envvar, limited_api, extension_type): if sys.version_info < (3, 11): pytest.skip( "This test requires setuptools>=65.4 which is only available for Python 3.11 and later" ) package = _extension_test_package( tmp_path, extension_type=extension_type, include_numpy=True, include_setup_py=False ) if config == "setup.cfg": setup_cfg = dedent( """\ [metadata] name = helpers_test_package version = 0.1 [options] packages = find: [extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: setup_cfg += f"\n[bdist_wheel]\npy_limited_api={limited_api}" elif envvar: # Make sure if we are using the environment variable that it takes # precedence over this setting (this only works for setup.cfg) setup_cfg += "\n[bdist_wheel]\npy_limited_api=cp35" (package / "setup.cfg").write_text(setup_cfg) # Still require a minimal pyproject.toml file if no setup.py file (package / "pyproject.toml").write_text( dedent( """ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [tool.extension-helpers] use_extension_helpers = true """ ) ) elif config == "pyproject.toml": pyproject_toml = dedent( """\ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [project] name = "helpers_test_package" version = "0.1" [tool.setuptools.packages] find = {namespaces = false} [tool.extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: pyproject_toml += f'\n[tool.distutils.bdist_wheel]\npy-limited-api = "{limited_api}"' (package / "pyproject.toml").write_text(pyproject_toml) env = os.environ.copy() if envvar: if limited_api: env["EXTENSION_HELPERS_PY_LIMITED_API"] = limited_api else: env["EXTENSION_HELPERS_PY_LIMITED_API"] = "" with chdir(package): > subprocess.run( [sys.executable, "-m", "build", "--wheel", "--no-isolation"], env=env, check=True ) extension_helpers/tests/test_setup_helpers.py:562: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ input = None, capture_output = False, timeout = None, check = True popenargs = (['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation'],) kwargs = {'env': {'BASH_FUNC_which%%': '() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --rea...-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection', 'CONFIG_SITE': 'NONE', ...}} process = stdout = None, stderr = None, retcode = 1 def run(*popenargs, input=None, capture_output=False, timeout=None, check=False, **kwargs): """Run command with arguments and return a CompletedProcess instance. The returned instance will have attributes args, returncode, stdout and stderr. By default, stdout and stderr are not captured, and those attributes will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them, or pass capture_output=True to capture both. If check is True and the exit code was non-zero, it raises a CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute, and output & stderr attributes if those streams were captured. If timeout is given, and the process takes too long, a TimeoutExpired exception will be raised. There is an optional argument "input", allowing you to pass bytes or a string to the subprocess's stdin. If you use this argument you may not also use the Popen constructor's "stdin" argument, as it will be used internally. By default, all communication is in bytes, and therefore any "input" should be bytes, and the stdout and stderr will be bytes. If in text mode, any "input" should be a string, and stdout and stderr will be strings decoded according to locale encoding, or by "encoding" if set. Text mode is triggered by setting any of text, encoding, errors or universal_newlines. The other arguments are the same as for the Popen constructor. """ if input is not None: if kwargs.get('stdin') is not None: raise ValueError('stdin and input arguments may not both be used.') kwargs['stdin'] = PIPE if capture_output: if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None: raise ValueError('stdout and stderr arguments may not be used ' 'with capture_output.') kwargs['stdout'] = PIPE kwargs['stderr'] = PIPE with Popen(*popenargs, **kwargs) as process: try: stdout, stderr = process.communicate(input, timeout=timeout) except TimeoutExpired as exc: process.kill() if _mswindows: # Windows accumulates the output in a single blocking # read() call run on child threads, with the timeout # being done in a join() on those threads. communicate() # _after_ kill() is required to collect that and add it # to the exception. exc.stdout, exc.stderr = process.communicate() else: # POSIX _communicate already populated the output so # far into the TimeoutExpired exception. process.wait() raise except: # Including KeyboardInterrupt, communicate handled that. process.kill() # We don't call process.wait() as .__exit__ does that for us. raise retcode = process.poll() if check and retcode: > raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) E subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation']' returned non-zero exit status 1. /usr/lib64/python3.11/subprocess.py:571: CalledProcessError ----------------------------- Captured stdout call ----------------------------- * Getting build dependencies for wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running egg_info creating helpers_test_package.egg-info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' * Building wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/__init__.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/setup_package.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package running build_ext building 'helpers_test_package.unit01' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/helpers_test_package gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit01.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit01.o gcc -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection build/temp.linux-x86_64-cpython-311/helpers_test_package/unit01.o -L/usr/lib64 -o build/lib.linux-x86_64-cpython-311/helpers_test_package/unit01.abi3.so Compiling helpers_test_package/unit02.pyx because it changed. [1/1] Cythonizing helpers_test_package/unit02.pyx building 'helpers_test_package.unit02' extension gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit02.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit02.o ERROR Backend subprocess exited when trying to invoke build_wheel ----------------------------- Captured stderr call ----------------------------- WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section warning: build_py: byte-compiling is disabled, skipping. /usr/lib64/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-mockbuild/pytest-0/test_limited_api_both_cp310_Tr0/test_pkg/helpers_test_package/unit02.pyx tree = Parsing.p_module(s, pxd, full_module_name) helpers_test_package/unit02.c: In function ‘__Pyx_PyCode_New’: helpers_test_package/unit02.c:662:9: warning: implicit declaration of function ‘PyCode_NewWithPosOnlyArgs’ [-Wimplicit-function-declaration] 662 | PyCode_NewWithPosOnlyArgs | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:658:12: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 658 | result = | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyDict_GetItemStr’: helpers_test_package/unit02.c:881:55: warning: implicit declaration of function ‘_PyDict_GetItem_KnownHash’ [-Wimplicit-function-declaration] 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: error: ‘PyASCIIObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: note: each undeclared identifier is reported only once for each function it appears in 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:110: error: expected expression before ‘)’ token 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1256:59: error: unknown type name ‘Py_UNICODE’ 1256 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) | ^~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_Py_UNICODE_strlen’: helpers_test_package/unit02.c:1258:11: error: unknown type name ‘Py_UNICODE’ 1258 | const Py_UNICODE *u_end = u; | ^~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1326:11: error: unknown type name ‘sdigit’ 1326 | typedef sdigit __Pyx_compact_pylong; | ^~~~~~ helpers_test_package/unit02.c:1327:11: error: unknown type name ‘digit’ 1327 | typedef digit __Pyx_compact_upylong; | ^~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_check_single_interpreter’: helpers_test_package/unit02.c:2078:73: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2078 | PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); | ^~ helpers_test_package/unit02.c: In function ‘__pyx_pymod_exec_unit02’: helpers_test_package/unit02.c:869:65: warning: implicit declaration of function ‘_PyDict_NewPresized’ [-Wimplicit-function-declaration] 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:869:63: warning: pointer/integer type mismatch in conditional expression 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_tp_dict_version’: helpers_test_package/unit02.c:2358:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2358 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_object_dict_version’: helpers_test_package/unit02.c:2363:37: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2363 | Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; | ^~ helpers_test_package/unit02.c:2366:81: warning: implicit declaration of function ‘_PyObject_GetDictPtr’; did you mean ‘PyObject_GetAttr’? [-Wimplicit-function-declaration] 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^~~~~~~~~~~~~~~~~~~~ | PyObject_GetAttr helpers_test_package/unit02.c:2366:79: warning: pointer/integer type mismatch in conditional expression 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_object_dict_version_matches’: helpers_test_package/unit02.c:2374:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2374 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesTuple’: helpers_test_package/unit02.c:2385:9: warning: implicit declaration of function ‘PyTuple_GET_SIZE’; did you mean ‘PyTuple_GetSlice’? [-Wimplicit-function-declaration] 2385 | n = PyTuple_GET_SIZE(tuple); | ^~~~~~~~~~~~~~~~ | PyTuple_GetSlice helpers_test_package/unit02.c:2388:25: warning: implicit declaration of function ‘PyTuple_GET_ITEM’; did you mean ‘PyTuple_GetItem’? [-Wimplicit-function-declaration] 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~~~~~~~~~~~~~~~ | PyTuple_GetItem helpers_test_package/unit02.c:2388:22: warning: comparison between pointer and integer 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:2392:57: warning: passing argument 2 of ‘__Pyx_PyErr_GivenExceptionMatches’ makes pointer from integer without a cast [-Wint-conversion] 2392 | if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int helpers_test_package/unit02.c:1680:85: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 1680 | static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); | ~~~~~~~~~~^~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesInState’: helpers_test_package/unit02.c:2405:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2405 | exc_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrRestoreInState’: helpers_test_package/unit02.c:2441:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2441 | tmp_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2442:23: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2442 | tmp_value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2443:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2443 | tmp_tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2444:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2444 | tstate->curexc_type = type; | ^~ helpers_test_package/unit02.c:2445:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2445 | tstate->curexc_value = value; | ^~ helpers_test_package/unit02.c:2446:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2446 | tstate->curexc_traceback = tb; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrFetchInState’: helpers_test_package/unit02.c:2471:19: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2471 | *type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2472:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2472 | *value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2473:17: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2473 | *tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2474:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2474 | tstate->curexc_type = 0; | ^~ helpers_test_package/unit02.c:2475:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2475 | tstate->curexc_value = 0; | ^~ helpers_test_package/unit02.c:2476:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2476 | tstate->curexc_traceback = 0; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr’: helpers_test_package/unit02.c:2485:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2485 | if (likely(tp->tp_getattro)) | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2486:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2486 | return tp->tp_getattro(obj, attr_name); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr_ClearAttributeError’: helpers_test_package/unit02.c:794:39: warning: implicit declaration of function ‘_PyThreadState_UncheckedGet’ [-Wimplicit-function-declaration] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:52: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:50: warning: assignment to ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStrNoError’: helpers_test_package/unit02.c:2506:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2506 | if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2507:16: warning: implicit declaration of function ‘_PyObject_GenericGetAttrWithDict’; did you mean ‘PyObject_GenericGetDict’? [-Wimplicit-function-declaration] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PyObject_GenericGetDict helpers_test_package/unit02.c:2507:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CLineForTraceback’: helpers_test_package/unit02.c:2531:25: warning: assignment to ‘PyObject **’ {aka ‘struct _object **’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2531 | cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1536:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1536 | __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1530:24: warning: variable ‘__pyx_dict_version’ set but not used [-Wunused-but-set-variable] 1530 | static PY_UINT64_T __pyx_dict_version = 0;\ | ^~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from helpers_test_package/unit02.c:2650: /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:49:5: error: unknown type name ‘PyFunctionObject’ 49 | PyFunctionObject *f_func; /* Strong reference */ | ^~~~~~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:61:5: error: unknown type name ‘_Py_CODEUNIT’ 61 | _Py_CODEUNIT *prev_instr; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_Stackbase’: /usr/include/python3.11/internal/pycore_frame.h:73:37: error: invalid use of incomplete typedef ‘PyCodeObject’ 73 | return f->localsplus + f->f_code->co_nlocalsplus; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:103:33: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 103 | _PyInterpreterFrame *frame, PyFunctionObject *func, | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_IsIncomplete’: /usr/include/python3.11/internal/pycore_frame.h:151:25: warning: implicit declaration of function ‘_PyCode_CODE’ [-Wimplicit-function-declaration] 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:151:68: error: invalid use of incomplete typedef ‘PyCodeObject’ 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_HasStackSpace’: /usr/include/python3.11/internal/pycore_frame.h:206:18: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 206 | return tstate->datastack_top != NULL && | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:31: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:57: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_BumpFramePointer’: /usr/include/python3.11/internal/pycore_frame.h:214:65: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 214 | _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; | ^~ /usr/include/python3.11/internal/pycore_frame.h:215:15: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 215 | tstate->datastack_top += size; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:225:38: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 225 | _PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h:230:1: error: unknown type name ‘PyGenObject’ 230 | PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) | ^~~~~~~~~~~ In file included from helpers_test_package/unit02.c:53: /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_GetGenerator’: /usr/include/python3.11/internal/pycore_frame.h:233:37: error: unknown type name ‘PyGenObject’ 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:234:13: error: ‘PyGenObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^~~~~~~~~~~ | PyVarObject /usr/include/python3.11/internal/pycore_frame.h:234:26: error: expected expression before ‘)’ token 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^ /usr/include/python3.11/internal/pycore_frame.h:233:12: warning: unused variable ‘offset_in_gen’ [-Wunused-variable] 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CreateCodeObjectForTraceback’: helpers_test_package/unit02.c:2750:20: warning: implicit declaration of function ‘PyUnicode_AsUTF8’; did you mean ‘PyUnicode_AsUCS4’? [-Wimplicit-function-declaration] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^~~~~~~~~~~~~~~~ | PyUnicode_AsUCS4 helpers_test_package/unit02.c:2750:18: warning: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^ helpers_test_package/unit02.c:2781:15: warning: implicit declaration of function ‘PyCode_NewEmpty’ [-Wimplicit-function-declaration] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2781:13: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^ helpers_test_package/unit02.c: In function ‘__Pyx_AddTraceback’: helpers_test_package/unit02.c:794:39: warning: initialization of ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2796:29: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 2796 | PyThreadState *tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2817:16: warning: implicit declaration of function ‘PyFrame_New’; did you mean ‘PyWrapper_New’? [-Wimplicit-function-declaration] 2817 | py_frame = PyFrame_New( | ^~~~~~~~~~~ | PyWrapper_New helpers_test_package/unit02.c:2817:14: warning: assignment to ‘PyFrameObject *’ {aka ‘struct _frame *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2817 | py_frame = PyFrame_New( | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_From_long’: helpers_test_package/unit02.c:3025:16: warning: implicit declaration of function ‘_PyLong_FromByteArray’ [-Wimplicit-function-declaration] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3025:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3026 | little, !is_unsigned); | ~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_long’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3105:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3105:70: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3107:23: error: unknown type name ‘digit’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3107:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3111:53: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3111 | if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3165:23: error: unknown type name ‘digit’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3165:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3248:23: warning: implicit declaration of function ‘_PyLong_AsByteArray’ [-Wimplicit-function-declaration] 3248 | ret = _PyLong_AsByteArray((PyLongObject *)v, | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_int’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3378:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3378:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3380:23: error: unknown type name ‘digit’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3380:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3384:52: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3384 | if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3438:23: error: unknown type name ‘digit’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3438:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_InBases’: helpers_test_package/unit02.c:814:64: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 814 | #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) | ^~ helpers_test_package/unit02.c:3625:13: note: in expansion of macro ‘__Pyx_PyType_GetSlot’ 3625 | a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_IsSubtype’: helpers_test_package/unit02.c:3634:12: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3634 | mro = a->tp_mro; | ^~ helpers_test_package/unit02.c:3639:42: warning: comparison between pointer and integer 3639 | if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_IsAnySubtype2’: helpers_test_package/unit02.c:3649:14: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3649 | mro = cls->tp_mro; | ^~ helpers_test_package/unit02.c:3654:30: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3654 | PyObject *base = PyTuple_GET_ITEM(mro, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_GivenExceptionMatchesTuple’: helpers_test_package/unit02.c:3699:22: warning: comparison between pointer and integer 3699 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:3703:23: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3703 | PyObject *t = PyTuple_GET_ITEM(tuple, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_AsStringAndSize’: helpers_test_package/unit02.c:3876:19: warning: implicit declaration of function ‘PyByteArray_GET_SIZE’; did you mean ‘PyByteArray_Resize’? [-Wimplicit-function-declaration] 3876 | *length = PyByteArray_GET_SIZE(o); | ^~~~~~~~~~~~~~~~~~~~ | PyByteArray_Resize helpers_test_package/unit02.c:3877:16: warning: implicit declaration of function ‘PyByteArray_AS_STRING’; did you mean ‘PyByteArray_AsString’? [-Wimplicit-function-declaration] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~ | PyByteArray_AsString helpers_test_package/unit02.c:3877:16: warning: returning ‘int’ from a function with return type ‘const char *’ makes pointer from integer without a cast [-Wint-conversion] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLongWrongResultType’: helpers_test_package/unit02.c:1656:39: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 1656 | #define __Pyx_PyType_GetName(tp) ((tp)->tp_name) | ^~ helpers_test_package/unit02.c:3903:39: note: in expansion of macro ‘__Pyx_PyType_GetName’ 3903 | __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLong’: helpers_test_package/unit02.c:3928:3: error: unknown type name ‘PyNumberMethods’ 3928 | PyNumberMethods *m; | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3939:17: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3939 | m = Py_TYPE(x)->tp_as_number; | ^~ helpers_test_package/unit02.c:3950:20: error: request for member ‘nb_int’ in something not a structure or union 3950 | if (likely(m && m->nb_int)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:3952:12: error: request for member ‘nb_int’ in something not a structure or union 3952 | res = m->nb_int(x); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyIndex_AsSsize_t’: helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3991:13: error: unknown type name ‘digit’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3991:29: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3995:45: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3995 | if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { | ^~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 _______________ test_limited_api[both-cp310-True-pyproject.toml] _______________ tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_limited_api_both_cp310_Tr1') config = 'pyproject.toml', envvar = True, limited_api = 'cp310' extension_type = 'both' @pytest.mark.parametrize("config", ("setup.cfg", "pyproject.toml")) @pytest.mark.parametrize("envvar", (False, True)) @pytest.mark.parametrize("limited_api", (None, "cp310")) @pytest.mark.parametrize("extension_type", ("c", "pyx", "both")) def test_limited_api(tmp_path, config, envvar, limited_api, extension_type): if sys.version_info < (3, 11): pytest.skip( "This test requires setuptools>=65.4 which is only available for Python 3.11 and later" ) package = _extension_test_package( tmp_path, extension_type=extension_type, include_numpy=True, include_setup_py=False ) if config == "setup.cfg": setup_cfg = dedent( """\ [metadata] name = helpers_test_package version = 0.1 [options] packages = find: [extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: setup_cfg += f"\n[bdist_wheel]\npy_limited_api={limited_api}" elif envvar: # Make sure if we are using the environment variable that it takes # precedence over this setting (this only works for setup.cfg) setup_cfg += "\n[bdist_wheel]\npy_limited_api=cp35" (package / "setup.cfg").write_text(setup_cfg) # Still require a minimal pyproject.toml file if no setup.py file (package / "pyproject.toml").write_text( dedent( """ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [tool.extension-helpers] use_extension_helpers = true """ ) ) elif config == "pyproject.toml": pyproject_toml = dedent( """\ [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = 'setuptools.build_meta' [project] name = "helpers_test_package" version = "0.1" [tool.setuptools.packages] find = {namespaces = false} [tool.extension-helpers] use_extension_helpers = true """ ) if limited_api and not envvar: pyproject_toml += f'\n[tool.distutils.bdist_wheel]\npy-limited-api = "{limited_api}"' (package / "pyproject.toml").write_text(pyproject_toml) env = os.environ.copy() if envvar: if limited_api: env["EXTENSION_HELPERS_PY_LIMITED_API"] = limited_api else: env["EXTENSION_HELPERS_PY_LIMITED_API"] = "" with chdir(package): > subprocess.run( [sys.executable, "-m", "build", "--wheel", "--no-isolation"], env=env, check=True ) extension_helpers/tests/test_setup_helpers.py:562: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ input = None, capture_output = False, timeout = None, check = True popenargs = (['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation'],) kwargs = {'env': {'BASH_FUNC_which%%': '() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --rea...-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection', 'CONFIG_SITE': 'NONE', ...}} process = stdout = None, stderr = None, retcode = 1 def run(*popenargs, input=None, capture_output=False, timeout=None, check=False, **kwargs): """Run command with arguments and return a CompletedProcess instance. The returned instance will have attributes args, returncode, stdout and stderr. By default, stdout and stderr are not captured, and those attributes will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them, or pass capture_output=True to capture both. If check is True and the exit code was non-zero, it raises a CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute, and output & stderr attributes if those streams were captured. If timeout is given, and the process takes too long, a TimeoutExpired exception will be raised. There is an optional argument "input", allowing you to pass bytes or a string to the subprocess's stdin. If you use this argument you may not also use the Popen constructor's "stdin" argument, as it will be used internally. By default, all communication is in bytes, and therefore any "input" should be bytes, and the stdout and stderr will be bytes. If in text mode, any "input" should be a string, and stdout and stderr will be strings decoded according to locale encoding, or by "encoding" if set. Text mode is triggered by setting any of text, encoding, errors or universal_newlines. The other arguments are the same as for the Popen constructor. """ if input is not None: if kwargs.get('stdin') is not None: raise ValueError('stdin and input arguments may not both be used.') kwargs['stdin'] = PIPE if capture_output: if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None: raise ValueError('stdout and stderr arguments may not be used ' 'with capture_output.') kwargs['stdout'] = PIPE kwargs['stderr'] = PIPE with Popen(*popenargs, **kwargs) as process: try: stdout, stderr = process.communicate(input, timeout=timeout) except TimeoutExpired as exc: process.kill() if _mswindows: # Windows accumulates the output in a single blocking # read() call run on child threads, with the timeout # being done in a join() on those threads. communicate() # _after_ kill() is required to collect that and add it # to the exception. exc.stdout, exc.stderr = process.communicate() else: # POSIX _communicate already populated the output so # far into the TimeoutExpired exception. process.wait() raise except: # Including KeyboardInterrupt, communicate handled that. process.kill() # We don't call process.wait() as .__exit__ does that for us. raise retcode = process.poll() if check and retcode: > raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) E subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'build', '--wheel', '--no-isolation']' returned non-zero exit status 1. /usr/lib64/python3.11/subprocess.py:571: CalledProcessError ----------------------------- Captured stdout call ----------------------------- * Getting build dependencies for wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running egg_info creating helpers_test_package.egg-info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' * Building wheel... Targeting PEP 384 limited API supporting Python >= (3, 10) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/__init__.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/setup_package.py -> build/lib.linux-x86_64-cpython-311/helpers_test_package running egg_info writing helpers_test_package.egg-info/PKG-INFO writing dependency_links to helpers_test_package.egg-info/dependency_links.txt writing top-level names to helpers_test_package.egg-info/top_level.txt reading manifest file 'helpers_test_package.egg-info/SOURCES.txt' writing manifest file 'helpers_test_package.egg-info/SOURCES.txt' copying helpers_test_package/_compiler.c -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/unit01.c -> build/lib.linux-x86_64-cpython-311/helpers_test_package copying helpers_test_package/unit02.pyx -> build/lib.linux-x86_64-cpython-311/helpers_test_package running build_ext building 'helpers_test_package.unit01' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/helpers_test_package gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit01.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit01.o gcc -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection build/temp.linux-x86_64-cpython-311/helpers_test_package/unit01.o -L/usr/lib64 -o build/lib.linux-x86_64-cpython-311/helpers_test_package/unit01.abi3.so Compiling helpers_test_package/unit02.pyx because it changed. [1/1] Cythonizing helpers_test_package/unit02.pyx building 'helpers_test_package.unit02' extension gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DPy_LIMITED_API=0x030A0000 -Inumpy -I/usr/include/python3.11 -c helpers_test_package/unit02.c -o build/temp.linux-x86_64-cpython-311/helpers_test_package/unit02.o ERROR Backend subprocess exited when trying to invoke build_wheel ----------------------------- Captured stderr call ----------------------------- WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section /usr/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:66: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*. config = read_configuration(filepath, True, ignore_option_errors, dist) warning: build_py: byte-compiling is disabled, skipping. /usr/lib64/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-mockbuild/pytest-0/test_limited_api_both_cp310_Tr1/test_pkg/helpers_test_package/unit02.pyx tree = Parsing.p_module(s, pxd, full_module_name) helpers_test_package/unit02.c: In function ‘__Pyx_PyCode_New’: helpers_test_package/unit02.c:662:9: warning: implicit declaration of function ‘PyCode_NewWithPosOnlyArgs’ [-Wimplicit-function-declaration] 662 | PyCode_NewWithPosOnlyArgs | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:658:12: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 658 | result = | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyDict_GetItemStr’: helpers_test_package/unit02.c:881:55: warning: implicit declaration of function ‘_PyDict_GetItem_KnownHash’ [-Wimplicit-function-declaration] 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: error: ‘PyASCIIObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:95: note: each undeclared identifier is reported only once for each function it appears in 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^~~~~~~~~~~~~ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:881:110: error: expected expression before ‘)’ token 881 | #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) | ^ helpers_test_package/unit02.c:883:21: note: in expansion of macro ‘__Pyx_PyDict_GetItemStrWithError’ 883 | PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1256:59: error: unknown type name ‘Py_UNICODE’ 1256 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) | ^~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_Py_UNICODE_strlen’: helpers_test_package/unit02.c:1258:11: error: unknown type name ‘Py_UNICODE’ 1258 | const Py_UNICODE *u_end = u; | ^~~~~~~~~~ helpers_test_package/unit02.c: At top level: helpers_test_package/unit02.c:1326:11: error: unknown type name ‘sdigit’ 1326 | typedef sdigit __Pyx_compact_pylong; | ^~~~~~ helpers_test_package/unit02.c:1327:11: error: unknown type name ‘digit’ 1327 | typedef digit __Pyx_compact_upylong; | ^~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_check_single_interpreter’: helpers_test_package/unit02.c:2078:73: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2078 | PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); | ^~ helpers_test_package/unit02.c: In function ‘__pyx_pymod_exec_unit02’: helpers_test_package/unit02.c:869:65: warning: implicit declaration of function ‘_PyDict_NewPresized’ [-Wimplicit-function-declaration] 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:869:63: warning: pointer/integer type mismatch in conditional expression 869 | #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) | ^ helpers_test_package/unit02.c:2282:15: note: in expansion of macro ‘__Pyx_PyDict_NewPresized’ 2282 | __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_tp_dict_version’: helpers_test_package/unit02.c:2358:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2358 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2359:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2359 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_get_object_dict_version’: helpers_test_package/unit02.c:2363:37: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2363 | Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; | ^~ helpers_test_package/unit02.c:2366:81: warning: implicit declaration of function ‘_PyObject_GetDictPtr’; did you mean ‘PyObject_GetAttr’? [-Wimplicit-function-declaration] 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^~~~~~~~~~~~~~~~~~~~ | PyObject_GetAttr helpers_test_package/unit02.c:2366:79: warning: pointer/integer type mismatch in conditional expression 2366 | dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:2371:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2371 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_object_dict_version_matches’: helpers_test_package/unit02.c:2374:34: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2374 | PyObject *dict = Py_TYPE(obj)->tp_dict; | ^~ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1414:43: note: in definition of macro ‘unlikely’ 1414 | #define unlikely(x) __builtin_expect(!!(x), 0) | ^ helpers_test_package/unit02.c:2375:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 2375 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesTuple’: helpers_test_package/unit02.c:2385:9: warning: implicit declaration of function ‘PyTuple_GET_SIZE’; did you mean ‘PyTuple_GetSlice’? [-Wimplicit-function-declaration] 2385 | n = PyTuple_GET_SIZE(tuple); | ^~~~~~~~~~~~~~~~ | PyTuple_GetSlice helpers_test_package/unit02.c:2388:25: warning: implicit declaration of function ‘PyTuple_GET_ITEM’; did you mean ‘PyTuple_GetItem’? [-Wimplicit-function-declaration] 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~~~~~~~~~~~~~~~ | PyTuple_GetItem helpers_test_package/unit02.c:2388:22: warning: comparison between pointer and integer 2388 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:2392:57: warning: passing argument 2 of ‘__Pyx_PyErr_GivenExceptionMatches’ makes pointer from integer without a cast [-Wint-conversion] 2392 | if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int helpers_test_package/unit02.c:1680:85: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 1680 | static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); | ~~~~~~~~~~^~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_ExceptionMatchesInState’: helpers_test_package/unit02.c:2405:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2405 | exc_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrRestoreInState’: helpers_test_package/unit02.c:2441:22: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2441 | tmp_type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2442:23: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2442 | tmp_value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2443:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2443 | tmp_tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2444:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2444 | tstate->curexc_type = type; | ^~ helpers_test_package/unit02.c:2445:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2445 | tstate->curexc_value = value; | ^~ helpers_test_package/unit02.c:2446:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2446 | tstate->curexc_traceback = tb; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_ErrFetchInState’: helpers_test_package/unit02.c:2471:19: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2471 | *type = tstate->curexc_type; | ^~ helpers_test_package/unit02.c:2472:20: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2472 | *value = tstate->curexc_value; | ^~ helpers_test_package/unit02.c:2473:17: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2473 | *tb = tstate->curexc_traceback; | ^~ helpers_test_package/unit02.c:2474:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2474 | tstate->curexc_type = 0; | ^~ helpers_test_package/unit02.c:2475:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2475 | tstate->curexc_value = 0; | ^~ helpers_test_package/unit02.c:2476:11: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 2476 | tstate->curexc_traceback = 0; | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr’: helpers_test_package/unit02.c:2485:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2485 | if (likely(tp->tp_getattro)) | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2486:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2486 | return tp->tp_getattro(obj, attr_name); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStr_ClearAttributeError’: helpers_test_package/unit02.c:794:39: warning: implicit declaration of function ‘_PyThreadState_UncheckedGet’ [-Wimplicit-function-declaration] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:52: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1559:50: warning: assignment to ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 1559 | #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; | ^ helpers_test_package/unit02.c:2498:5: note: in expansion of macro ‘__Pyx_PyThreadState_assign’ 2498 | __Pyx_PyThreadState_assign | ^~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_GetAttrStrNoError’: helpers_test_package/unit02.c:2506:18: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 2506 | if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:2507:16: warning: implicit declaration of function ‘_PyObject_GenericGetAttrWithDict’; did you mean ‘PyObject_GenericGetDict’? [-Wimplicit-function-declaration] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PyObject_GenericGetDict helpers_test_package/unit02.c:2507:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2507 | return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CLineForTraceback’: helpers_test_package/unit02.c:2531:25: warning: assignment to ‘PyObject **’ {aka ‘struct _object **’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2531 | cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); | ^ helpers_test_package/unit02.c:1525:42: error: ‘PyDictObject’ undeclared (first use in this function); did you mean ‘PyIntObject’? 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:1532:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1532 | if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1525:55: error: expected expression before ‘)’ token 1525 | #define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) | ^ helpers_test_package/unit02.c:1536:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’ 1536 | __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ | ^~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1530:24: warning: variable ‘__pyx_dict_version’ set but not used [-Wunused-but-set-variable] 1530 | static PY_UINT64_T __pyx_dict_version = 0;\ | ^~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2533:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’ 2533 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from helpers_test_package/unit02.c:2650: /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:49:5: error: unknown type name ‘PyFunctionObject’ 49 | PyFunctionObject *f_func; /* Strong reference */ | ^~~~~~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:61:5: error: unknown type name ‘_Py_CODEUNIT’ 61 | _Py_CODEUNIT *prev_instr; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_Stackbase’: /usr/include/python3.11/internal/pycore_frame.h:73:37: error: invalid use of incomplete typedef ‘PyCodeObject’ 73 | return f->localsplus + f->f_code->co_nlocalsplus; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:103:33: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 103 | _PyInterpreterFrame *frame, PyFunctionObject *func, | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_IsIncomplete’: /usr/include/python3.11/internal/pycore_frame.h:151:25: warning: implicit declaration of function ‘_PyCode_CODE’ [-Wimplicit-function-declaration] 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:151:68: error: invalid use of incomplete typedef ‘PyCodeObject’ 151 | frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_HasStackSpace’: /usr/include/python3.11/internal/pycore_frame.h:206:18: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 206 | return tstate->datastack_top != NULL && | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:31: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h:207:57: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 207 | size < (size_t)(tstate->datastack_limit - tstate->datastack_top); | ^~ /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyThreadState_BumpFramePointer’: /usr/include/python3.11/internal/pycore_frame.h:214:65: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 214 | _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; | ^~ /usr/include/python3.11/internal/pycore_frame.h:215:15: error: invalid use of incomplete typedef ‘PyThreadState’ {aka ‘struct _ts’} 215 | tstate->datastack_top += size; | ^~ /usr/include/python3.11/internal/pycore_frame.h: At top level: /usr/include/python3.11/internal/pycore_frame.h:225:38: error: unknown type name ‘PyFunctionObject’; did you mean ‘PyCFunction_Check’? 225 | _PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); | ^~~~~~~~~~~~~~~~ | PyCFunction_Check /usr/include/python3.11/internal/pycore_frame.h:230:1: error: unknown type name ‘PyGenObject’ 230 | PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) | ^~~~~~~~~~~ In file included from helpers_test_package/unit02.c:53: /usr/include/python3.11/internal/pycore_frame.h: In function ‘_PyFrame_GetGenerator’: /usr/include/python3.11/internal/pycore_frame.h:233:37: error: unknown type name ‘PyGenObject’ 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~ /usr/include/python3.11/internal/pycore_frame.h:234:13: error: ‘PyGenObject’ undeclared (first use in this function); did you mean ‘PyVarObject’? 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^~~~~~~~~~~ | PyVarObject /usr/include/python3.11/internal/pycore_frame.h:234:26: error: expected expression before ‘)’ token 234 | return (PyGenObject *)(((char *)frame) - offset_in_gen); | ^ /usr/include/python3.11/internal/pycore_frame.h:233:12: warning: unused variable ‘offset_in_gen’ [-Wunused-variable] 233 | size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); | ^~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_CreateCodeObjectForTraceback’: helpers_test_package/unit02.c:2750:20: warning: implicit declaration of function ‘PyUnicode_AsUTF8’; did you mean ‘PyUnicode_AsUCS4’? [-Wimplicit-function-declaration] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^~~~~~~~~~~~~~~~ | PyUnicode_AsUCS4 helpers_test_package/unit02.c:2750:18: warning: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2750 | funcname = PyUnicode_AsUTF8(py_funcname); | ^ helpers_test_package/unit02.c:2781:15: warning: implicit declaration of function ‘PyCode_NewEmpty’ [-Wimplicit-function-declaration] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2781:13: warning: assignment to ‘PyCodeObject *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2781 | py_code = PyCode_NewEmpty(filename, funcname, py_line); | ^ helpers_test_package/unit02.c: In function ‘__Pyx_AddTraceback’: helpers_test_package/unit02.c:794:39: warning: initialization of ‘PyThreadState *’ {aka ‘struct _ts *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 794 | #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2796:29: note: in expansion of macro ‘__Pyx_PyThreadState_Current’ 2796 | PyThreadState *tstate = __Pyx_PyThreadState_Current; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:2817:16: warning: implicit declaration of function ‘PyFrame_New’; did you mean ‘PyWrapper_New’? [-Wimplicit-function-declaration] 2817 | py_frame = PyFrame_New( | ^~~~~~~~~~~ | PyWrapper_New helpers_test_package/unit02.c:2817:14: warning: assignment to ‘PyFrameObject *’ {aka ‘struct _frame *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2817 | py_frame = PyFrame_New( | ^ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_From_long’: helpers_test_package/unit02.c:3025:16: warning: implicit declaration of function ‘_PyLong_FromByteArray’ [-Wimplicit-function-declaration] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3025:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 3025 | return _PyLong_FromByteArray(bytes, sizeof(long), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3026 | little, !is_unsigned); | ~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_long’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3105:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3105:70: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3105 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3107:23: error: unknown type name ‘digit’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3107:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3107 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3111:53: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3111 | if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3163:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3163:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3163 | __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3165:23: error: unknown type name ‘digit’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3165:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3165 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3248:23: warning: implicit declaration of function ‘_PyLong_AsByteArray’ [-Wimplicit-function-declaration] 3248 | ret = _PyLong_AsByteArray((PyLongObject *)v, | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyInt_As_int’: helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3378:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1320:74: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 1320 | #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3378:69: note: in expansion of macro ‘__Pyx_PyLong_CompactValueUnsigned’ 3378 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3380:23: error: unknown type name ‘digit’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3380:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3380 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3384:52: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3384 | if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { | ^~~~~~~~~~~~ helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3060:27: note: in definition of macro ‘__PYX__VERIFY_RETURN_INT’ 3060 | func_type value = func_value;\ | ^~~~~~~~~~ helpers_test_package/unit02.c:3436:17: note: in expansion of macro ‘__PYX_VERIFY_RETURN_INT’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3436:68: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3436 | __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3438:23: error: unknown type name ‘digit’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3438:39: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3438 | const digit* digits = __Pyx_PyLong_Digits(x); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_InBases’: helpers_test_package/unit02.c:814:64: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 814 | #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) | ^~ helpers_test_package/unit02.c:3625:13: note: in expansion of macro ‘__Pyx_PyType_GetSlot’ 3625 | a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_IsSubtype’: helpers_test_package/unit02.c:3634:12: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3634 | mro = a->tp_mro; | ^~ helpers_test_package/unit02.c:3639:42: warning: comparison between pointer and integer 3639 | if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_IsAnySubtype2’: helpers_test_package/unit02.c:3649:14: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3649 | mro = cls->tp_mro; | ^~ helpers_test_package/unit02.c:3654:30: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3654 | PyObject *base = PyTuple_GET_ITEM(mro, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyErr_GivenExceptionMatchesTuple’: helpers_test_package/unit02.c:3699:22: warning: comparison between pointer and integer 3699 | if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1; | ^~ helpers_test_package/unit02.c:3703:23: warning: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 3703 | PyObject *t = PyTuple_GET_ITEM(tuple, i); | ^~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyObject_AsStringAndSize’: helpers_test_package/unit02.c:3876:19: warning: implicit declaration of function ‘PyByteArray_GET_SIZE’; did you mean ‘PyByteArray_Resize’? [-Wimplicit-function-declaration] 3876 | *length = PyByteArray_GET_SIZE(o); | ^~~~~~~~~~~~~~~~~~~~ | PyByteArray_Resize helpers_test_package/unit02.c:3877:16: warning: implicit declaration of function ‘PyByteArray_AS_STRING’; did you mean ‘PyByteArray_AsString’? [-Wimplicit-function-declaration] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~ | PyByteArray_AsString helpers_test_package/unit02.c:3877:16: warning: returning ‘int’ from a function with return type ‘const char *’ makes pointer from integer without a cast [-Wint-conversion] 3877 | return PyByteArray_AS_STRING(o); | ^~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLongWrongResultType’: helpers_test_package/unit02.c:1656:39: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 1656 | #define __Pyx_PyType_GetName(tp) ((tp)->tp_name) | ^~ helpers_test_package/unit02.c:3903:39: note: in expansion of macro ‘__Pyx_PyType_GetName’ 3903 | __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); | ^~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c: In function ‘__Pyx_PyNumber_IntOrLong’: helpers_test_package/unit02.c:3928:3: error: unknown type name ‘PyNumberMethods’ 3928 | PyNumberMethods *m; | ^~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3939:17: error: invalid use of incomplete typedef ‘PyTypeObject’ {aka ‘struct _typeobject’} 3939 | m = Py_TYPE(x)->tp_as_number; | ^~ helpers_test_package/unit02.c:3950:20: error: request for member ‘nb_int’ in something not a structure or union 3950 | if (likely(m && m->nb_int)) { | ^~ helpers_test_package/unit02.c:1413:43: note: in definition of macro ‘likely’ 1413 | #define likely(x) __builtin_expect(!!(x), 1) | ^ helpers_test_package/unit02.c:3952:12: error: request for member ‘nb_int’ in something not a structure or union 3952 | res = m->nb_int(x); | ^~ helpers_test_package/unit02.c: In function ‘__Pyx_PyIndex_AsSsize_t’: helpers_test_package/unit02.c:1325:31: error: ‘sdigit’ undeclared (first use in this function); did you mean ‘isdigit’? 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^~~~~~ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:1325:39: error: expected ‘:’ before numeric constant 1325 | ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) | ^ helpers_test_package/unit02.c:3989:16: note: in expansion of macro ‘__Pyx_PyLong_CompactValue’ 3989 | return __Pyx_PyLong_CompactValue(b); | ^~~~~~~~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3991:13: error: unknown type name ‘digit’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~ helpers_test_package/unit02.c:1332:54: error: invalid use of incomplete typedef ‘PyLongObject’ {aka ‘struct _longobject’} 1332 | #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) | ^~ helpers_test_package/unit02.c:3991:29: note: in expansion of macro ‘__Pyx_PyLong_Digits’ 3991 | const digit* digits = __Pyx_PyLong_Digits(b); | ^~~~~~~~~~~~~~~~~~~ helpers_test_package/unit02.c:3995:45: error: ‘PyLong_SHIFT’ undeclared (first use in this function) 3995 | if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { | ^~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 =========================== short test summary info ============================ FAILED extension_helpers/tests/test_setup_helpers.py::test_limited_api[pyx-cp310-False-setup.cfg] FAILED extension_helpers/tests/test_setup_helpers.py::test_limited_api[pyx-cp310-False-pyproject.toml] FAILED extension_helpers/tests/test_setup_helpers.py::test_limited_api[pyx-cp310-True-setup.cfg] FAILED extension_helpers/tests/test_setup_helpers.py::test_limited_api[pyx-cp310-True-pyproject.toml] FAILED extension_helpers/tests/test_setup_helpers.py::test_limited_api[both-cp310-False-setup.cfg] FAILED extension_helpers/tests/test_setup_helpers.py::test_limited_api[both-cp310-False-pyproject.toml] FAILED extension_helpers/tests/test_setup_helpers.py::test_limited_api[both-cp310-True-setup.cfg] FAILED extension_helpers/tests/test_setup_helpers.py::test_limited_api[both-cp310-True-pyproject.toml] 8 failed, 45 passed in 445.05s (0:07:25) RPM build errors: error: Bad exit status from /var/tmp/rpm-tmp.XkMSla (%check) Bad exit status from /var/tmp/rpm-tmp.XkMSla (%check) Child return code was: 1 EXCEPTION: [Error('Command failed: \n # bash --login -c /usr/bin/rpmbuild -ba --noprep --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec\n', 1)] Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/mockbuild/trace_decorator.py", line 93, in trace result = func(*args, **kw) File "/usr/lib/python3.6/site-packages/mockbuild/util.py", line 597, in do_with_status raise exception.Error("Command failed: \n # %s\n%s" % (command, output), child.returncode) mockbuild.exception.Error: Command failed: # bash --login -c /usr/bin/rpmbuild -ba --noprep --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-extension-helpers.spec