Невозможно определить функцию Cython без ошибок ⇐ Python

Программы на Python
Anonymous
Невозможно определить функцию Cython без ошибок

Сообщение Anonymous »

Это фрагмент кода, который я выполнил и который выдал ошибку при компиляции с помощью cython
def __cinit__(self, bitboards = BITBOARDS, board_data = boarddata):
memcpy(self.bitboards, bitboards, 768)
self.board_data = board_data

Ошибка:
def __cinit__(self, bitboards = BITBOARDS, board_data = boarddata):
memcpy(self.bitboards, bitboards, 768)
^
------------------------------------------------------------

brains.pyx:723:25: Cannot convert Python object to 'const void *'

Я не могу понять причину этой ошибки. Все упомянутые глобальные переменные были инициализированы. self.bitboard и self.board_data также были инициализированы, но не назначены.
Минимальный воспроизводимый пример:
ошибка компилятора выдается при компиляции следующего кода (та же ошибка, что и выше)
cimport cython
from libc.string cimport memcpy

ctypedef (unsigned long long) U64

cdef U64[2] a = [0, 0]
cdef class test:
cdef U64[2] b
def __cinit__(self, param1 = a):
memcpy(self.b, param1, sizeof(param1))

c = test()


Подробнее здесь: https://stackoverflow.com/questions/790 ... out-errors

Вернуться в «Python»