diff --git a/codegen.c b/codegen.c index 4899073..27b0b6c 100644 --- a/codegen.c +++ b/codegen.c @@ -1749,6 +1749,10 @@ int codegen_set_flag_for_operator(const char *op) { flag |= EXPRESSION_LOGICAL_AND; } + else if (S_EQ(op, "||")) + { + flag |= EXPRESSION_LOGICAL_OR; + } else if (S_EQ(op, "<<")) { flag |= EXPRESSION_IS_BITSHIFT_LEFT; diff --git a/helper.c b/helper.c index 7e9eb43..fc7ba99 100644 --- a/helper.c +++ b/helper.c @@ -364,7 +364,7 @@ void datatype_decrement_pointer(struct datatype* dtype) long arithmetic(struct compile_process* compiler, long left_operand, long right_operand, const char* op, bool* success) { *success = true; - int result = 0; + long result = 0; if (S_EQ(op, "*")) { result = left_operand * right_operand;