сбой встроенного cython .exe при вызове super () .__ init __ () - PullRequest
0 голосов
/ 17 мая 2019
  1. Установить env: vcvars64.bat
  2. Создать файл: out.pyx:
#cython: language_level=3
def foo():
    class A:
        pass
    class B(A):
        def __init__(self):
            super().__init__()
    return 42
foo()
  1. Cythonize: cython --embed out.pyx
  2. Компиляция: cl.exe /nologo /Ox /MD /W3 /GS- /Zi -I"c:\Program Files\Python37\include" /Tcout.c /link /OUT:"out.exe" /SUBSYSTEM:CONSOLE /MACHINE:X64 /LIBPATH:"c:\Program Files\Python37\libs"
  3. Отладка: devenv /debugexe out.exe
  4. Запустите exe

Это приводит к сбою в операторе return на моей машине с python 3.7.2 и cython 0.29.7. Странно, когда я удаляю вызов super().__init__(), он работает нормально.

...