Возможно, это не ответ, но я сделал несколько проверок, начиная с вашего примера. Например, на первый взгляд все выглядит так, как будто два ваших класса немного отличаются:
>>> [print(item) for item in dir(a) if item not in dir(b)]
[]
>>> [print(item) for item in dir(b) if item not in dir(a)]
__dict__
__module__
__weakref__
[None, None, None]
так что похоже, что наследование действительно что-то добавляет, хотя на первый взгляд вы просто копируете старый класс.
Итак, давайте посмотрим, как выглядит исходный класс из здесь :
Welp, это реализовано в C. но ошибка, похоже, указывает на строку 2954
:
double *other_coords;
Это поставило меня в тупик, но я бы подал это как проблему на github или подождал, пока не будет выпущено исправление, упомянутое в комментарии