diff --git a/rules/ast/ast.go b/rules/ast/ast.go index 2e52aa404..6faf4caf9 100644 --- a/rules/ast/ast.go +++ b/rules/ast/ast.go @@ -540,13 +540,17 @@ func NewFunctionCall(function *Function, args []Node) (Node, error) { func nodesHaveTypes(nodes []Node, exprTypes []ExprType) bool { for _, node := range nodes { + correctType := false for _, exprType := range exprTypes { if node.Type() == exprType { - return true + correctType = true } } + if !correctType { + return false + } } - return false + return true } func NewArithExpr(opType BinOpType, lhs Node, rhs Node) (Node, error) {