diff --git a/jedi/evaluate/__init__.py b/jedi/evaluate/__init__.py index 3c89b737..08bd6801 100644 --- a/jedi/evaluate/__init__.py +++ b/jedi/evaluate/__init__.py @@ -120,7 +120,7 @@ class Evaluator(object): return f.filter_name(scopes) return f.find(scopes, search_global) - @memoize_default(default=[], evaluator_is_first_arg=True) + #@memoize_default(default=[], evaluator_is_first_arg=True) @recursion.recursion_decorator @debug.increase_indent def eval_statement(self, stmt, seek_name=None): @@ -211,6 +211,7 @@ class Evaluator(object): if len(name_dicts) > 1: result = [] for name_dict in name_dicts: + print('NAME_DICT', element, name_dict) self.predefined_if_name_dict_dict[parent] = name_dict try: result += self._eval_element_not_cached(element) diff --git a/test/static_analysis/branches.py b/test/static_analysis/branches.py index ad2dedae..6f26f434 100644 --- a/test/static_analysis/branches.py +++ b/test/static_analysis/branches.py @@ -21,5 +21,8 @@ else: #! 6 type-error-operation z = x + y # However, here we have correct types. -if type(x) == type(y): +if x == y: + z = x + y +else: + #! 6 type-error-operation z = x + y