Ticket #1094 (new todo)

Opened 5 years ago

Last modified 4 years ago

Unify VTABLE_invoke semantics between PMC types

Reported by: whiteknight Owned by:
Priority: normal Milestone:
Component: core Version: 1.6.0
Severity: medium Keywords: pcc
Cc: Language:
Patch status: Platform:

Description

For most subs it simply sets up the environment for invocation, and selects the first opcode instruction of the sub as the next 'opcode_t *' for 'runops'. For NCI subs it actually invokes the function pointer. The disjoint means that NCI subs can't be invoked from C argument lists the same way as all the other subs (because the regular C argument list passing can only happen *after* VTABLE_invoke has been called to set up the environment, but NCI requires the arguments to be passed *before* the call to VTABLE_invoke).

See also the CallingConventionsTasklist

Change History

Changed 5 years ago by chromatic

  • milestone changed from 2.0 to 2.1

Changed 4 years ago by coke

  • milestone 2.2 deleted
Note: See TracTickets for help on using tickets.