Implement &&

This commit is contained in:
otya128 committed 2016-12-31 09:45:27 +09:00
1 parent 17b5ba0f49
commit e6d0a49c24
2 files changed
+57

No files matched your search

+10
View File
@@ -502,6 +502,16 @@ class Compiler
case NodeType.BinaryOperator:
{
auto binop = cast(BinaryOperator)exp;
if(binop.operator == TokenType.LogicalAnd)
{
compileExpression(binop.item1, sc);
auto jmp = new LogicalAnd();
genCode(jmp);
compileExpression(binop.item2, sc);
genCode(new ConvertBool());
jmp.addr = cast(int)code.length;
break;
}
compileExpression(binop.item1, sc);
compileExpression(binop.item2, sc);
if(binop.operator == TokenType.LBracket)