1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
|
}
break;
case OP_SUPER:
case OP_SUPER_C:
if(!ptr || cl->codes[0]!=OP_SUPER) ParseError("Use of Super in a class with no parent class\n");
AddInst(tokenv);
break;
default:
if(Tokenf(TF_ABNORMAL)) ParseError("Invalid instruction token\n");
if(compat && Tokenf(TF_COMPAT) && Tokenf(TF_EQUAL)) ++tokenv;
AddInstF(tokenv,tokent);
}
} else if(Tokenf(TF_FUNCTION)) {
AddInst2(OP_FUNCTION,tokenv&0x3FFF);
|
>
>
>
>
>
>
>
>
>
>
>
|
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
|
}
break;
case OP_SUPER:
case OP_SUPER_C:
if(!ptr || cl->codes[0]!=OP_SUPER) ParseError("Use of Super in a class with no parent class\n");
AddInst(tokenv);
break;
case OP_LINK:
AddInst(OP_LINK);
FlowPush(OP_IF);
cl->codes[++ptr]=cla;
peep=++ptr;
break;
case OP_RTN:
AddInst(OP_RET);
FlowPop(OP_IF);
cl->codes[flowptr[flowdepth]]=peep=ptr;
break;
default:
if(Tokenf(TF_ABNORMAL)) ParseError("Invalid instruction token\n");
if(compat && Tokenf(TF_COMPAT) && Tokenf(TF_EQUAL)) ++tokenv;
AddInstF(tokenv,tokent);
}
} else if(Tokenf(TF_FUNCTION)) {
AddInst2(OP_FUNCTION,tokenv&0x3FFF);
|