|
@@ -427,7 +427,11 @@ static void cIf() {
|
|
cAddOperation(OP_GOTO);
|
|
cAddOperation(OP_GOTO);
|
|
int elseP = cReserveInt();
|
|
int elseP = cReserveInt();
|
|
cSetInt(ifP, code->length);
|
|
cSetInt(ifP, code->length);
|
|
- cConsumeBody();
|
|
|
|
|
|
+ if(cConsumeTokenIf(T_IF)) {
|
|
|
|
+ cIf();
|
|
|
|
+ } else {
|
|
|
|
+ cConsumeBody();
|
|
|
|
+ }
|
|
cSetInt(elseP, code->length);
|
|
cSetInt(elseP, code->length);
|
|
}
|
|
}
|
|
}
|
|
}
|