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

rlib/test/test_clibffi.py::TestCLibffi::()::test_struct_by_val

self = <rpython.rlib.test.test_clibffi.TestCLibffi object at 0x0000023bb920db08>

    def test_struct_by_val(self):
        from rpython.translator.tool.cbuild import ExternalCompilationInfo
        from rpython.translator.platform import platform
        from rpython.tool.udir import udir
    
        c_file = udir.ensure("test_libffi", dir=1).join("xlib.c")
        c_file.write(py.code.Source('''
            #include "src/precommondefs.h"
            #include <stdlib.h>
            #include <stdio.h>
    
            struct x_y {
                Signed x;
                Signed y;
            };
    
            RPY_EXPORTED
            Signed sum_x_y(struct x_y s) {
                return s.x + s.y;
            }
    
            Signed sum_x_y_p(struct x_y *p) {
                return p->x + p->y;
            }
    
            '''))
        eci = ExternalCompilationInfo(include_dirs=[cdir])
        lib_name = str(platform.compile([c_file], eci, 'x1', standalone=False))
    
>       lib = CDLL(lib_name)

rlib\test\test_clibffi.py:273: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rlib\clibffi.py:702: in __init__
    self.lib = dlopen(libname, mode)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

name = 'd:\\systemtemp\\pytest\\usession-main-805\\test_libffi\\x1.dll'
mode = -1

    def dlopen(name, mode=-1):
        # mode is unused on windows, but a consistant signature
        if not name:
            raise DLOpenError("cannot use None")
        with rffi.scoped_utf82wcharp(name, codepoints_in_utf8(name)) as buf:
            res = rwin32.LoadLibraryW(buf)
        if not res:
            err = rwin32.GetLastError_saved()
            ustr, lgt = rwin32.FormatErrorW(err)
>           raise DLOpenError(ustr)
E           DLOpenError: 'Teseiidmdl ol o efud\xf2\xa0\x80\x8d\x00\xee\x97\xa4\xc8\xbbLCLPDT=:UesmtiApaa'

rlib\rdynload.py:242: DLOpenError
builder: rpython-win-x86-64 build #399
test: rlib/test/test_clibffi/py/TestCLibffi/()/test_struct_by_val