Home - Summaries: (main) : (py3.11) : Everything - Nightly builds - Benchmarks - RPython - Builders - About

pypy/module/cpyext/test/test_bytearrayobject.py::AppTestStringObject::()::test_basic

self = <CallInfo when='call' exception: command 'cc' terminated by signal 10>
func = <function <lambda> at 0x000000012ad0f9e8>, when = 'call'

    def __init__(self, func, when):
        #: context of invocation: one of "setup", "call",
        #: "teardown", "memocollect"
        self.when = when
        self.start = time()
        try:
>           self.result = func()

../_pytest/runner.py:150: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

>   return CallInfo(lambda: ihook(item=item, **kwds), when=when)

../_pytest/runner.py:138: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_HookCaller 'pytest_runtest_call'>
kwargs = {'__multicall__': <_MultiCall 0 results, 0 meths, kwargs={'item': <AppTestMethod 'test_basic'>, '__multicall__': <_MultiCall 0 results, 0 meths, kwargs={...}>}>, 'item': <AppTestMethod 'test_basic'>}

    def __call__(self, **kwargs):
        assert not self.is_historic()
>       return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)

../_pytest/vendored_packages/pluggy.py:724: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_pytest.config.PytestPluginManager object at 0x00000001288c9ad0>
hook = <_HookCaller 'pytest_runtest_call'>, methods = []
kwargs = {'__multicall__': <_MultiCall 0 results, 0 meths, kwargs={'item': <AppTestMethod 'test_basic'>, '__multicall__': <_MultiCall 0 results, 0 meths, kwargs={...}>}>, 'item': <AppTestMethod 'test_basic'>}

    def _hookexec(self, hook, methods, kwargs):
        # called from all hookcaller instances.
        # enable_tracing will set its own wrapping function at self._inner_hookexec
>       return self._inner_hookexec(hook, methods, kwargs)

../_pytest/vendored_packages/pluggy.py:338: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

hook = <_HookCaller 'pytest_runtest_call'>, methods = []
kwargs = {'__multicall__': <_MultiCall 0 results, 0 meths, kwargs={'item': <AppTestMethod 'test_basic'>, '__multicall__': <_MultiCall 0 results, 0 meths, kwargs={...}>}>, 'item': <AppTestMethod 'test_basic'>}

    self._inner_hookexec = lambda hook, methods, kwargs: \
>       _MultiCall(methods, kwargs, hook.spec_opts).execute()

../_pytest/vendored_packages/pluggy.py:333: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_MultiCall 0 results, 0 meths, kwargs={'item': <AppTestMethod 'test_basic'>, '__multicall__': <_MultiCall 0 results, 0 meths, kwargs={...}>}>

    def execute(self):
        all_kwargs = self.kwargs
        self.results = results = []
        firstresult = self.specopts.get("firstresult")
    
        while self.hook_impls:
            hook_impl = self.hook_impls.pop()
            args = [all_kwargs[argname] for argname in hook_impl.argnames]
            if hook_impl.hookwrapper:
>               return _wrapped_call(hook_impl.function(*args), self.execute)

../_pytest/vendored_packages/pluggy.py:595: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

wrap_controller = <generator object pytest_runtest_call at 0x000000012aab9bc8>
func = <bound method _MultiCall.execute of <_MultiCall 0 results, 0 meths, kwargs={'i...test_basic'>, '__multicall__': <_MultiCall 0 results, 0 meths, kwargs={...}>}>>

    def _wrapped_call(wrap_controller, func):
        """ Wrap calling to a function with a generator which needs to yield
        exactly once.  The yield point will trigger calling the wrapped function
        and return its _CallOutcome to the yield point.  The generator then needs
        to finish (raise StopIteration) in order for the wrapped call to complete.
        """
        try:
            next(wrap_controller)   # first yield
        except StopIteration:
            _raise_wrapfail(wrap_controller, "did not yield")
        call_outcome = _CallOutcome(func)
        try:
            wrap_controller.send(call_outcome)
            _raise_wrapfail(wrap_controller, "has second yield")
        except StopIteration:
            pass
>       return call_outcome.get_result()

../_pytest/vendored_packages/pluggy.py:253: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_pytest.vendored_packages.pluggy._CallOutcome instance at 0x000000012af40de0>

    def get_result(self):
        if self.excinfo is None:
            return self.result
        else:
            ex = self.excinfo
            if _py3:
                raise ex[1].with_traceback(ex[2])
>           _reraise(*ex)  # noqa

../_pytest/vendored_packages/pluggy.py:279: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_pytest.vendored_packages.pluggy._CallOutcome instance at 0x000000012af40de0>
func = <bound method _MultiCall.execute of <_MultiCall 0 results, 0 meths, kwargs={'i...test_basic'>, '__multicall__': <_MultiCall 0 results, 0 meths, kwargs={...}>}>>

    def __init__(self, func):
        try:
>           self.result = func()

../_pytest/vendored_packages/pluggy.py:264: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_MultiCall 0 results, 0 meths, kwargs={'item': <AppTestMethod 'test_basic'>, '__multicall__': <_MultiCall 0 results, 0 meths, kwargs={...}>}>

    def execute(self):
        all_kwargs = self.kwargs
        self.results = results = []
        firstresult = self.specopts.get("firstresult")
    
        while self.hook_impls:
            hook_impl = self.hook_impls.pop()
            args = [all_kwargs[argname] for argname in hook_impl.argnames]
            if hook_impl.hookwrapper:
                return _wrapped_call(hook_impl.function(*args), self.execute)
>           res = hook_impl.function(*args)

../_pytest/vendored_packages/pluggy.py:596: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

item = <AppTestMethod 'test_basic'>

    def pytest_runtest_call(item):
        try:
>           item.runtest()

../_pytest/runner.py:91: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <AppTestMethod 'test_basic'>

    def runtest(self):
        target = self.obj
        if self.config.option.runappdirect:
>           return target()

tool/pytest/apptest.py:84: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <pypy.module.cpyext.test.test_bytearrayobject.AppTestStringObject object at 0x0000000119621fa0>

    def test_basic(self):
        module = self.import_extension('foo', [
            ("get_hello1", "METH_NOARGS",
             """
                     return PyByteArray_FromStringAndSize(
                         "Hello world<should not be included>", 11);
                 """),
            ("get_hello2", "METH_NOARGS",
             """
                     return PyByteArray_FromStringAndSize("Hello world", 12);
                 """),
            ("test_Size", "METH_NOARGS",
             """
                     PyObject* s = PyByteArray_FromStringAndSize("Hello world", 12);
                     int result = 0;
    
                     if(PyByteArray_Size(s) == 12) {
                         result = 1;
                     }
                     Py_DECREF(s);
                     return PyBool_FromLong(result);
                 """),
             ("test_is_bytearray", "METH_VARARGS",
             """
                    return PyBool_FromLong(PyByteArray_Check(PyTuple_GetItem(args, 0)));
>                """)], prologue='#include <stdlib.h>')

module/cpyext/test/test_bytearrayobject.py:30: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <pypy.module.cpyext.test.test_bytearrayobject.AppTestStringObject object at 0x0000000119621fa0>
modname = 'foo'
functions = [('get_hello1', 'METH_NOARGS', '\n                 return PyByteArray_FromStringAndSize(\n                     "Hello ...ETH_VARARGS', '\n                return PyBool_FromLong(PyByteArray_Check(PyTuple_GetItem(args, 0)));\n             ')]
prologue = '#include <stdlib.h>', include_dirs = None, more_init = ''
PY_SSIZE_T_CLEAN = False

    def w_import_extension(self, modname, functions, prologue="",
        include_dirs=None, more_init="", PY_SSIZE_T_CLEAN=False):
        from extbuild import get_sys_info_app
        sys_info = get_sys_info_app(self.udir)
        return sys_info.import_extension(
            modname, functions, prologue=prologue,
            include_dirs=include_dirs, more_init=more_init,
>           PY_SSIZE_T_CLEAN=PY_SSIZE_T_CLEAN)

module/cpyext/test/test_cpyext.py:259: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <extbuild.ExtensionCompiler object at 0x0000000119621e50>
modname = 'foo'
functions = [('get_hello1', 'METH_NOARGS', '\n                 return PyByteArray_FromStringAndSize(\n                     "Hello ...ETH_VARARGS', '\n                return PyBool_FromLong(PyByteArray_Check(PyTuple_GetItem(args, 0)));\n             ')]
prologue = '#include <stdlib.h>', include_dirs = None, more_init = ''
PY_SSIZE_T_CLEAN = False

    def import_extension(self, modname, functions, prologue="",
            include_dirs=None, more_init="", PY_SSIZE_T_CLEAN=False):
        body = prologue + make_methods(functions, modname)
        init = """Py_InitModule("%s", methods);
                   """ % (modname,)
        if more_init:
            init += """#define INITERROR return
                        """
            init += more_init
        return self.import_module(
            name=modname, init=init, body=body, include_dirs=include_dirs,
>           PY_SSIZE_T_CLEAN=PY_SSIZE_T_CLEAN)

tool/cpyext/extbuild.py:94: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <extbuild.ExtensionCompiler object at 0x0000000119621e50>, name = 'foo'
init = 'Py_InitModule("foo", methods);\n               '
body = '#include <stdlib.h>\n        static PyObject* foo_get_hello1(PyObject *self, PyObject *args)\n        {\n        \n  ...e, METH_NOARGS},\n{"test_is_bytearray", (PyCFunction)foo_test_is_bytearray, METH_VARARGS},\n    { NULL }\n    };\n    '
filename = None, include_dirs = None, PY_SSIZE_T_CLEAN = False

    def import_module(self, name, init=None, body='', filename=None,
            include_dirs=None, PY_SSIZE_T_CLEAN=False):
        """
            init specifies the overall template of the module.
    
            if init is None, the module source will be loaded from a file in this
            test directory, give a name given by the filename parameter.
    
            if filename is None, the module name will be used to construct the
            filename.
            """
        if init is not None:
            code = make_source(name, init, body, PY_SSIZE_T_CLEAN)
            kwds = dict(source_strings=[code])
        else:
            assert not PY_SSIZE_T_CLEAN
            if filename is None:
                filename = name
            filename = HERE / (filename + ".c")
            kwds = dict(source_files=[filename])
        mod = self.compile_extension_module(
>           name, include_dirs=include_dirs, **kwds)

tool/cpyext/extbuild.py:80: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <extbuild.ExtensionCompiler object at 0x0000000119621e50>, name = 'foo'
include_dirs = []
source_files = [local('/tmp/buildbot-arm64/usession-main-3215/foo-8/source_0.c')]
source_strings = ['\n    \n    #include <Python.h>\n    /* fix for cpython 2.7 Python.h if running tests with -A\n        since pypy co...};\n    \n\n    PyMODINIT_FUNC\n    initfoo(void) {\n    Py_InitModule("foo", methods);\n               \n    }\n    ']

    def compile_extension_module(self, name, include_dirs=None,
            source_files=None, source_strings=None):
        """
            Build an extension module and return the filename of the resulting
            native code file.
    
            name is the name of the module, possibly including dots if it is a
            module inside a package.
            """
        include_dirs = include_dirs or []
        modname = name.split('.')[-1]
        dirname = self.get_builddir(name=modname)
        if source_strings:
            assert not source_files
            files = convert_sources_to_files(source_strings, dirname)
            source_files = files
        soname = c_compile(source_files, outputfilename=str(dirname / modname),
            compile_extra=self.compile_extra,
            link_extra=self.link_extra,
            include_dirs=self.include_extra + include_dirs,
>           libraries=self.extra_libs)

tool/cpyext/extbuild.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

cfilenames = [local('/tmp/buildbot-arm64/usession-main-3215/foo-8/source_0.c')]
outputfilename = local('/tmp/buildbot-arm64/usession-main-3215/foo-8/foo.so')
compile_extra = [], link_extra = []
include_dirs = ['/Users/matti/build-worker-arm64/pypy-c-jit-macos-arm64/build/include']
libraries = [], library_dirs = []

    def c_compile(cfilenames, outputfilename,
            compile_extra=None, link_extra=None,
            include_dirs=None, libraries=None, library_dirs=None):
        compile_extra = compile_extra or []
        link_extra = link_extra or []
        include_dirs = include_dirs or []
        libraries = libraries or []
        library_dirs = library_dirs or []
        if sys.platform == 'win32':
            link_extra = link_extra + ['/DEBUG']  # generate .pdb file
        if sys.platform == 'darwin':
            # support Fink & Darwinports
            for s in ('/sw/', '/opt/local/'):
                if (s + 'include' not in include_dirs
                        and os.path.exists(s + 'include')):
                    include_dirs.append(s + 'include')
                if s + 'lib' not in library_dirs and os.path.exists(s + 'lib'):
                    library_dirs.append(s + 'lib')
    
        outputfilename = py.path.local(outputfilename).new(ext=so_ext)
        saved_environ = os.environ.copy()
        try:
            _build(
                cfilenames, outputfilename,
                compile_extra, link_extra,
>               include_dirs, libraries, library_dirs)

tool/cpyext/extbuild.py:191: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

cfilenames = [local('/tmp/buildbot-arm64/usession-main-3215/foo-8/source_0.c')]
outputfilename = local('/tmp/buildbot-arm64/usession-main-3215/foo-8/foo.so')
compile_extra = [], link_extra = []
include_dirs = ['/Users/matti/build-worker-arm64/pypy-c-jit-macos-arm64/build/include']
libraries = [], library_dirs = []

    def _build(cfilenames, outputfilename, compile_extra, link_extra,
            include_dirs, libraries, library_dirs):
        try:
            # monkeypatch distutils for some versions of msvc compiler
            import setuptools
        except ImportError:
            # XXX if this fails and is required,
            #     we must call pypy -mensurepip after translation
            pass
        from distutils.ccompiler import new_compiler
        from distutils import sysconfig
    
        # XXX for Darwin running old versions of CPython 2.7.x
        sysconfig.get_config_vars()
    
        compiler = new_compiler(force=1)
        sysconfig.customize_compiler(compiler)  # XXX
        objects = []
        for cfile in cfilenames:
            cfile = py.path.local(cfile)
            old = cfile.dirpath().chdir()
            try:
                res = compiler.compile([cfile.basename],
>                   include_dirs=include_dirs, extra_preargs=compile_extra)

tool/cpyext/extbuild.py:223: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <distutils.unixccompiler.UnixCCompiler instance at 0x000000012af40d60>
sources = ['source_0.c'], output_dir = None, macros = []
include_dirs = ['/Users/matti/build-worker-arm64/pypy-c-jit-macos-arm64/build/include']
debug = 0, extra_preargs = [], extra_postargs = [], depends = None

    def compile(self, sources, output_dir=None, macros=None,
                include_dirs=None, debug=0, extra_preargs=None,
                extra_postargs=None, depends=None):
        """Compile one or more source files.
    
            'sources' must be a list of filenames, most likely C/C++
            files, but in reality anything that can be handled by a
            particular compiler and compiler class (eg. MSVCCompiler can
            handle resource files in 'sources').  Return a list of object
            filenames, one per source filename in 'sources'.  Depending on
            the implementation, not all source files will necessarily be
            compiled, but all corresponding object filenames will be
            returned.
    
            If 'output_dir' is given, object files will be put under it, while
            retaining their original path component.  That is, "foo/bar.c"
            normally compiles to "foo/bar.o" (for a Unix implementation); if
            'output_dir' is "build", then it would compile to
            "build/foo/bar.o".
    
            'macros', if given, must be a list of macro definitions.  A macro
            definition is either a (name, value) 2-tuple or a (name,) 1-tuple.
            The former defines a macro; if the value is None, the macro is
            defined without an explicit value.  The 1-tuple case undefines a
            macro.  Later definitions/redefinitions/ undefinitions take
            precedence.
    
            'include_dirs', if given, must be a list of strings, the
            directories to add to the default include file search path for this
            compilation only.
    
            'debug' is a boolean; if true, the compiler will be instructed to
            output debug symbols in (or alongside) the object file(s).
    
            'extra_preargs' and 'extra_postargs' are implementation- dependent.
            On platforms that have the notion of a command-line (e.g. Unix,
            DOS/Windows), they are most likely lists of strings: extra
            command-line arguments to prepand/append to the compiler command
            line.  On other platforms, consult the implementation class
            documentation.  In any event, they are intended as an escape hatch
            for those occasions when the abstract compiler framework doesn't
            cut the mustard.
    
            'depends', if given, is a list of filenames that all targets
            depend on.  If a source file is older than any file in
            depends, then the source file will be recompiled.  This
            supports dependency tracking, but only at a coarse
            granularity.
    
            Raises CompileError on failure.
            """
        # A concrete compiler class can either override this method
        # entirely or implement _compile().
    
        macros, objects, extra_postargs, pp_opts, build = \
                self._setup_compile(output_dir, macros, include_dirs, sources,
                                    depends, extra_postargs)
        cc_args = self._get_cc_args(pp_opts, debug, extra_preargs)
    
        for obj in objects:
            try:
                src, ext = build[obj]
            except KeyError:
                continue
>           self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)

../lib-python/2.7/distutils/ccompiler.py:574: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <distutils.unixccompiler.UnixCCompiler instance at 0x000000012af40d60>
obj = 'source_0.o', src = 'source_0.c', ext = '.c'
cc_args = ['-I/Users/matti/build-worker-arm64/pypy-c-jit-macos-arm64/build/include', '-c']
extra_postargs = []
pp_opts = ['-I/Users/matti/build-worker-arm64/pypy-c-jit-macos-arm64/build/include']

    def _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts):
        compiler_so = self.compiler_so
        if sys.platform == 'darwin':
            compiler_so = _osx_support.compiler_fixup(compiler_so,
                                                    cc_args + extra_postargs)
        try:
            self.spawn(compiler_so + cc_args + [src, '-o', obj] +
                       extra_postargs)
        except DistutilsExecError, msg:
>           raise CompileError, msg
E           CompileError: command 'cc' terminated by signal 10

../lib-python/2.7/distutils/unixccompiler.py:139: CompileError
builder: pypy-c-jit-macos-arm64 build #1300+
test: pypy/module/cpyext/test/test_bytearrayobject.py::AppTestStringObject::()::test_basic