From d94a70b5241f89dd25512c1ace232936c5fa9da2 Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Thu, 7 Aug 2014 03:02:40 +0200 Subject: [PATCH] fix a logic issue in the flow_analysis.Status.__and__ --- jedi/evaluate/flow_analysis.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jedi/evaluate/flow_analysis.py b/jedi/evaluate/flow_analysis.py index eb816e21..ce4c21df 100644 --- a/jedi/evaluate/flow_analysis.py +++ b/jedi/evaluate/flow_analysis.py @@ -11,7 +11,7 @@ class Status(object): def __and__(self, other): if UNSURE in (self, other): - return other + return UNSURE else: return REACHABLE if self._value and other._value else UNREACHABLE @@ -34,6 +34,8 @@ def break_check(evaluator, base_scope, element_scope): reachable = Status.lookup_table[values.pop()] else: return UNSURE + elif element_scope.command == 'try': + reachable = UNSURE if base_scope != element_scope and base_scope != element_scope.parent: return reachable & break_check(evaluator, base_scope, element_scope.parent)