diff options
author | Claudiu Popa <pcmanticore@gmail.com> | 2020-03-05 09:08:14 +0100 |
---|---|---|
committer | Claudiu Popa <pcmanticore@gmail.com> | 2020-03-05 09:41:16 +0100 |
commit | 0a8a75db30da060a24922e05048bc270230f5bad (patch) | |
tree | 5ab4b277a46ba707fe379db6b737ad9b12270694 /astroid/inference.py | |
parent | 01b5b572149f19550d4fdec3fd7d1e40aee9b624 (diff) | |
download | astroid-git-0a8a75db30da060a24922e05048bc270230f5bad.tar.gz |
Reverse the order of decorators for `infer_subscript`
`path_wrapper` needs to come first, followed by `raise_if_nothing_inferred`,
otherwise we won't handle `StopIteration` correctly.
Close #762
Diffstat (limited to 'astroid/inference.py')
-rw-r--r-- | astroid/inference.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/astroid/inference.py b/astroid/inference.py index 7bbf9241..975b7d97 100644 --- a/astroid/inference.py +++ b/astroid/inference.py @@ -350,7 +350,6 @@ nodes.Global._infer = infer_global _SUBSCRIPT_SENTINEL = object() -@decorators.raise_if_nothing_inferred def infer_subscript(self, context=None): """Inference for subscripts @@ -407,8 +406,10 @@ def infer_subscript(self, context=None): return None -nodes.Subscript._infer = decorators.path_wrapper(infer_subscript) -nodes.Subscript.infer_lhs = infer_subscript +nodes.Subscript._infer = decorators.raise_if_nothing_inferred( + decorators.path_wrapper(infer_subscript) +) +nodes.Subscript.infer_lhs = decorators.raise_if_nothing_inferred(infer_subscript) @decorators.raise_if_nothing_inferred |