-
-
Notifications
You must be signed in to change notification settings - Fork 682
Open
Description
This issue is similar to #12374, except that it is a regression introduced in 4.3.7 and nightly versions. It is a side effect of: 0af66ab/#11773.
Host
// Host.hx
function main() {
cpp.cppia.Host.runFile('bin/script.cppia');
}
// HostChild.hx
class HostParent {
public function new() {}
public function methodA() {
trace("HostParent.methodA()");
}
}
class HostChild extends HostParent {
public override function methodA() {
trace("HostChild.methodA()");
}
public function methodB() {
trace("HostChild.methodB()");
}
public function methodC() {
trace("HostChild.methodC()");
}
}
-main Host
HostChild
--cpp bin
-D scriptable
-D dll_export=bin/export_classes.info
Script
// Script.hx
class ScriptChild extends HostChild {
override function methodB() {
trace('ScriptChild.methodB()');
}
}
function main() {
final child = new ScriptChild();
child.methodA();
child.methodB();
child.methodC();
}
-main Script
--cppia bin/script.cppia
-D dll_import=bin/export_classes.info
# avoid haxe nightly bug: #12208
--macro addGlobalMetadata("haxe.macro.Expr.Error", "@:keep")
Output
Expected output:
HostChild.hx:12: HostChild.methodA()
Script.hx:4: ScriptChild.methodB()
HostChild.hx:20: HostChild.methodC()
Actual output:
HostChild.hx:12: HostChild.methodA()
Script.hx:4: ScriptChild.methodB()
Script.hx:4: ScriptChild.methodB()
Metadata
Metadata
Assignees
Labels
No labels