Skip to content

Conversation

@tobil4sk
Copy link
Member

#12375 and #12377 reintroduced a bug with super.method calls: HaxeFoundation/hxcpp#1150

This provides an alternative solution to the original issues: #12374 #12376 (and I suppose #5502), by marking methods as overrides so that the cppia runtime can ignore them when constructing the vtable, but still access them for resolving super.method calls (as done in #11773). This requires support from the hxcpp side: HaxeFoundation/hxcpp#1273.

This solves the issue while preserving the fix from #11773. I have added a test here for HaxeFoundation/hxcpp#1150 to avoid further regressions.

See also: #12376 (comment)

Rather than omitting method overrides, we now include them but mark them
as overrides to prevent them from being added as separate slots in the
vtable. This keeps vtable indices working correctly while keeping
super.method calls working as they should.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant