|
@@ -392,6 +392,11 @@ static void compileIf(Context* c) {
|
|
|
size_t elseEnd = codePushInstructionI32(c, JUMP, 0);
|
|
size_t elseEnd = codePushInstructionI32(c, JUMP, 0);
|
|
|
codeRewriteI32(c, posIndex, (i32)codeGetWritePosition(c));
|
|
codeRewriteI32(c, posIndex, (i32)codeGetWritePosition(c));
|
|
|
posIndex = elseEnd;
|
|
posIndex = elseEnd;
|
|
|
|
|
+ if(consumeTokenIf(c, TT_IF)) {
|
|
|
|
|
+ compileIf(c);
|
|
|
|
|
+ codeRewriteI32(c, posIndex, (i32)codeGetWritePosition(c));
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
while(!peekToken(c, TT_END)) {
|
|
while(!peekToken(c, TT_END)) {
|
|
|
compileLine(c, tokenizerNext(c->tokenizer));
|
|
compileLine(c, tokenizerNext(c->tokenizer));
|
|
|
}
|
|
}
|