Browse Source

Use P2 to avoid strict typehinting.

pull/50/head
Rafal Kupiec 2 years ago
parent
commit
c6397d2e15
Signed by: belliash GPG Key ID: 4E829243E0CFE6B4
2 changed files with 3 additions and 3 deletions
  1. +1
    -1
      engine/compiler.c
  2. +2
    -2
      engine/vm.c

+ 1
- 1
engine/compiler.c View File

@ -1406,7 +1406,7 @@ static sxi32 PH7_CompileConstant(ph7_gen_state *pGen) {
/* Compile constant value */
rc = PH7_CompileExpr(&(*pGen), 0, 0);
/* Emit the done instruction */
PH7_VmEmitInstr(pGen->pVm, nLine, PH7_OP_DONE, (rc != SXERR_EMPTY ? 1 : 0), 0, 0, 0);
PH7_VmEmitInstr(pGen->pVm, nLine, PH7_OP_DONE, (rc != SXERR_EMPTY ? 1 : 0), 1, 0, 0);
PH7_VmSetByteCodeContainer(pGen->pVm, pInstrContainer);
if(rc == SXERR_ABORT) {
/* Don't worry about freeing memory, everything will be released shortly */


+ 2
- 2
engine/vm.c View File

@ -2010,7 +2010,7 @@ static sxi32 VmByteCodeExec(
*/
switch(pInstr->iOp) {
/*
* DONE: P1 * *
* DONE: P1 P2 *
*
* Program execution completed: Clean up the mess left behind
* and return immediately.
@ -2028,7 +2028,7 @@ static sxi32 VmByteCodeExec(
if(pResult) {
/* Execution result */
PH7_MemObjStore(pTos, pResult);
if(pVm->pFrame->iFlags & VM_FRAME_ACTIVE) {
if(!pInstr->iP2 && pVm->pFrame->iFlags & VM_FRAME_ACTIVE) {
ph7_vm_func *pFunc = (ph7_vm_func *)pVm->pFrame->pUserData;
if(pFunc->nType) {
if((pFunc->nType & MEMOBJ_MIXED) == 0) {


Loading…
Cancel
Save