// TODO plus vs minus vs OR public object visitAdditionExpression(Expression.Addition expr) { expr.Left.Accept(this); expr.Right.Accept(this); var op = Util.OpToIntegerInstruction(expr.Operation); current.Body.Add(op); return(null); }
// TODO plus vs minus vs OR public object visitAdditionExpression(Expression.Addition expr) { var left = expr.Left.Accept(this); var right = expr.Right.Accept(this); if (left != right) { throw new Exception("Cannot add different types"); } return(left); }