diff --git a/artiq/transforms/interleave.py b/artiq/transforms/interleave.py index 90233462e..ab9fbbfee 100644 --- a/artiq/transforms/interleave.py +++ b/artiq/transforms/interleave.py @@ -26,7 +26,7 @@ def _get_duration(stmt): return 0 else: return -1 - elif isinstance(stmt, ast.Call) and isinstance(stmt.func, ast.Name): + elif isinstance(stmt, ast.Call): name = stmt.func.id if name == "delay": try: diff --git a/artiq/transforms/lower_time.py b/artiq/transforms/lower_time.py index f991cf8f6..d24583b39 100644 --- a/artiq/transforms/lower_time.py +++ b/artiq/transforms/lower_time.py @@ -19,7 +19,7 @@ from artiq.language.core import int64 class _TimeLowerer(ast.NodeTransformer): def visit_Call(self, node): - if isinstance(node.func, ast.Name) and node.func.id == "now": + if node.func.id == "now": return ast.copy_location(ast.Name("now", ast.Load()), node) else: self.generic_visit(node) @@ -27,8 +27,7 @@ class _TimeLowerer(ast.NodeTransformer): def visit_Expr(self, node): r = node - if (isinstance(node.value, ast.Call) - and isinstance(node.value.func, ast.Name)): + if isinstance(node.value, ast.Call): funcname = node.value.func.id if funcname == "delay": r = ast.copy_location( diff --git a/artiq/transforms/tools.py b/artiq/transforms/tools.py index 07ce20acd..96228ac9a 100644 --- a/artiq/transforms/tools.py +++ b/artiq/transforms/tools.py @@ -102,7 +102,7 @@ def _is_ref_transparent(dependencies, expr): and _is_ref_transparent(dependencies, expr.right)) elif isinstance(expr, ast.BoolOp): return all(_is_ref_transparent(dependencies, v) for v in expr.values) - elif isinstance(expr, ast.Call) and isinstance(expr.func, ast.Name): + elif isinstance(expr, ast.Call): return (expr.func.id in _replaceable_funcs and all(_is_ref_transparent(dependencies, arg) for arg in expr.args)) else: