8000 [conversions] Fix literal `None`s in converted `exec`s · python/typed_ast@8ecd3d0 · GitHub
[go: up one dir, main page]

Skip to content
This repository was archived by the owner on Jul 5, 2023. It is now read-only.

Commit 8ecd3d0

Browse files
committed
[conversions] Fix literal Nones in converted execs
1 parent b8f6562 commit 8ecd3d0

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

typed_ast/conversions.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,15 @@ def visit_Raise(self, n):
132132
return ret
133133

134134
def visit_Exec(self, n):
135+
new_globals = self.maybe_visit(n.globals)
136+
if new_globals is None:
137+
new_globals = ast35.Name("None", ast35.Load(), lineno=-1, col_offset=-1)
138+
new_locals = self.maybe_visit(n.locals)
139+
if new_locals is None:
140+
new_locals = ast35.Name("None", ast35.Load(), lineno=-1, col_offset=-1)
141+
135142
return ast35.Expr(ast35.Call(ast35.Name("exec", ast35.Load(), lineno=n.lineno, col_offset=-1),
136-
[self.visit(n.body), self.maybe_visit(n.globals), self.maybe_visit(n.locals)],
143+
[self.visit(n.body), new_globals, new_locals],
137144
[],
138145
lineno=n.lineno, col_offset=-1))
139146

0 commit comments

Comments
 (0)
0