From 6f7acad48fd94384f5b1fe0148e2c7f584a6aefd Mon Sep 17 00:00:00 2001 From: Shantanu <12621235+hauntsaninja@users.noreply.github.com> Date: Thu, 6 Jan 2022 12:04:33 -0800 Subject: [PATCH] [CODEGEN] Avoid use of deprecated AST nodes (#418) Co-authored-by: hauntsaninja <> --- python/triton/code_gen.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/python/triton/code_gen.py b/python/triton/code_gen.py index 8622333bf..90018028d 100644 --- a/python/triton/code_gen.py +++ b/python/triton/code_gen.py @@ -305,9 +305,6 @@ class CodeGenerator(ast.NodeVisitor): for stmt in node.orelse: ast.NodeVisitor.generic_visit(self, stmt) - def visit_Str(self, node): - return ast.literal_eval(node) - def visit_Subscript(self, node): assert node.ctx.__class__.__name__ == "Load" lhs = self.visit(node.value) @@ -374,9 +371,6 @@ class CodeGenerator(ast.NodeVisitor): def visit_Index(self, node): return self.visit(node.value) - def visit_NameConstant(self, node): - return node.value - def visit_keyword(self, node): return {node.arg: self.visit(node.value)} @@ -393,8 +387,18 @@ class CodeGenerator(ast.NodeVisitor): return fn(*args, _builder=self.builder, **kws) return fn(*args, **kws) - def visit_Num(self, node): - return node.n + def visit_Constant(self, node): + return node.value + + if sys.version_info < (3, 8): + def visit_NameConstant(self, node): + return node.value + + def visit_Num(self, node): + return node.n + + def visit_Str(self, node): + return ast.literal_eval(node) def visit_Attribute(self, node): lhs = self.visit(node.value)