about summary refs log tree commit diff stats
path: root/miasm2/analysis/expression_range.py
diff options
context:
space:
mode:
Diffstat (limited to 'miasm2/analysis/expression_range.py')
-rw-r--r--miasm2/analysis/expression_range.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/miasm2/analysis/expression_range.py b/miasm2/analysis/expression_range.py
index f09a18d0..8f498549 100644
--- a/miasm2/analysis/expression_range.py
+++ b/miasm2/analysis/expression_range.py
@@ -1,5 +1,8 @@
 """Naive range analysis for expression"""
 
+from future.builtins import zip
+from functools import reduce
+
 from miasm2.analysis.modularintervals import ModularIntervals
 
 _op_range_handler = {
@@ -44,9 +47,11 @@ def expr_range(expr):
         # Otherwise, overapproximate (ie. full range interval)
         if expr.op in _op_range_handler:
             sub_ranges = [expr_range(arg) for arg in expr.args]
-            return reduce(_op_range_handler[expr.op],
-                          (sub_range for sub_range in sub_ranges[1:]),
-                          sub_ranges[0])
+            return reduce(
+                _op_range_handler[expr.op],
+                (sub_range for sub_range in sub_ranges[1:]),
+                sub_ranges[0]
+            )
         elif expr.op == "-":
             assert len(expr.args) == 1
             return - expr_range(expr.args[0])