Haxe - ошибка при попытке сериализации объекта после приведения к родительскому типу
Я пытаюсь сделать это:
var player:Player = new Player(); // class Player extends PlayerCore
var playerCore:PlayerCore = cast (player, PlayerCore);
var playerStr:String = Serializer.run(playerCore);
который компилируется, но выдает ошибку времени выполнения:
compile_server.command: line 3: 4267 Bus error: 10 ../bin/Server/Main
В ролях работает, это не удается на линии сериализатора. Кроме этого Std.is(playerCore, PlayerCore)
а также Std.is(playerCore, Player)
оба верны, я не знаю, ожидаемый ли это результат или нет. Это ошибка Haxe / hxcpp или я что-то не так делаю?
Или, в качестве альтернативы, мне нужно преобразовать объект типа Player в его родительский тип PlayerCore ("убрать из него" функции типа Player) и затем сериализовать его. Есть ли способ сделать это правильно, или мне нужно создать новый объект и скопировать все параметры вручную?
Haxe 3.2.1, hxcpp 3.2.180, mac target