diff --git a/jedi/api/helpers.py b/jedi/api/helpers.py index cb764cc6..fda8d1c2 100644 --- a/jedi/api/helpers.py +++ b/jedi/api/helpers.py @@ -166,7 +166,8 @@ def _get_index_and_key(nodes, position): if nodes_before: last = nodes_before[-1] - if last.type == 'argument' and last.children[1].end_pos <= position: + if last.type == 'argument' and last.children[1] == '=' \ + and last.children[1].end_pos <= position: # Checked if the argument key_str = last.children[0].value elif last == '=': diff --git a/test/completion/comprehensions.py b/test/completion/comprehensions.py index 402ef753..b2da01bc 100644 --- a/test/completion/comprehensions.py +++ b/test/completion/comprehensions.py @@ -52,12 +52,12 @@ left [a for a in {1:'x'}][0] # list comprehensions should also work in combination with functions -def listen(arg): +def _listen(arg): for x in arg: #? str() x -listen(['' for x in [1]]) +_listen(['' for x in [1]]) #? ([str for x in []])[0] @@ -212,3 +212,14 @@ next(iter({a for a in range(10)})) #? int() [a for a in {1, 2, 3}][0] + +# ----------------- +# syntax errors +# ----------------- + +# Issue #1146 + +#? ['list'] +[int(str(x.value) for x in list + +def reset_missing_bracket(): pass