mirror of
https://github.com/davidhalter/parso.git
synced 2025-12-06 21:04:29 +08:00
Don't give syntax errors for parenthesised kwargs <3.8
This commit is contained in:
committed by
Dave Halter
parent
8bb211fafb
commit
a06521d912
@@ -742,6 +742,9 @@ class _AnnotatorRule(SyntaxRule):
|
|||||||
class _ArgumentRule(SyntaxRule):
|
class _ArgumentRule(SyntaxRule):
|
||||||
def is_issue(self, node):
|
def is_issue(self, node):
|
||||||
first = node.children[0]
|
first = node.children[0]
|
||||||
|
if self._normalizer.version < (3, 8):
|
||||||
|
# a((b)=c) is valid in <3.8
|
||||||
|
first = _remove_parens(first)
|
||||||
if node.children[1] == '=' and first.type != 'name':
|
if node.children[1] == '=' and first.type != 'name':
|
||||||
if first.type == 'lambdef':
|
if first.type == 'lambdef':
|
||||||
# f(lambda: 1=1)
|
# f(lambda: 1=1)
|
||||||
|
|||||||
@@ -273,6 +273,9 @@ def test_too_many_levels_of_indentation():
|
|||||||
assert not _get_error_list(build_nested('pass', 49, base=base))
|
assert not _get_error_list(build_nested('pass', 49, base=base))
|
||||||
assert _get_error_list(build_nested('pass', 50, base=base))
|
assert _get_error_list(build_nested('pass', 50, base=base))
|
||||||
|
|
||||||
|
def test_paren_kwarg():
|
||||||
|
assert _get_error_list("print((sep)=seperator)", version="3.8")
|
||||||
|
assert not _get_error_list("print((sep)=seperator)", version="3.7")
|
||||||
|
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'code', [
|
'code', [
|
||||||
|
|||||||
Reference in New Issue
Block a user