diff --git a/vyper/semantics/analysis/local.py b/vyper/semantics/analysis/local.py index 9abd46a0d6..ee4bdf005d 100644 --- a/vyper/semantics/analysis/local.py +++ b/vyper/semantics/analysis/local.py @@ -431,11 +431,10 @@ def visit_For(self, node): len_ = len(node.iter.elements) self.expr_visitor.visit(node.iter, SArrayT(iter_type, len_)) if isinstance(node.iter, vy_ast.Call) and node.iter.func.id == "range": - for a in node.iter.args: - self.expr_visitor.visit(a, iter_type) - for a in node.iter.keywords: - if a.arg == "bound": - self.expr_visitor.visit(a.value, iter_type) + args = node.iter.args + kwargs = [s.value for s in node.iter.keywords] + for arg in (*args, *kwargs): + self.expr_visitor.visit(arg, iter_type) def visit_If(self, node): validate_expected_type(node.test, BoolT())