bpo-40067: Improve error messages for multiple star expressions in assignments (GH-19168)
Co-Authored-By: Batuhan Taşkaya <isidentical@gmail.com>
Co-Authored-By: Pablo Galindo <Pablogsal@gmail.com>
diff --git a/Lib/test/test_unpack_ex.py b/Lib/test/test_unpack_ex.py
index 46f70c2..e333af7 100644
--- a/Lib/test/test_unpack_ex.py
+++ b/Lib/test/test_unpack_ex.py
@@ -308,12 +308,17 @@
>>> a, *b, c, *d, e = range(10) # doctest:+ELLIPSIS
Traceback (most recent call last):
...
- SyntaxError: two starred expressions in assignment
+ SyntaxError: multiple starred expressions in assignment
>>> [*b, *c] = range(10) # doctest:+ELLIPSIS
Traceback (most recent call last):
...
- SyntaxError: two starred expressions in assignment
+ SyntaxError: multiple starred expressions in assignment
+
+ >>> a,*b,*c,*d = range(4) # doctest:+ELLIPSIS
+ Traceback (most recent call last):
+ ...
+ SyntaxError: multiple starred expressions in assignment
>>> *a = range(10) # doctest:+ELLIPSIS
Traceback (most recent call last):
diff --git a/Misc/ACKS b/Misc/ACKS
index 129db95..a4db5a5 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -1236,6 +1236,7 @@
Adam Olsen
Bryan Olson
Grant Olson
+Furkan Onder
Koray Oner
Piet van Oostrum
Tomas Oppelstrup
diff --git a/Misc/NEWS.d/next/Core and Builtins/2020-03-25-20-34-01.bpo-40067.0bFda2.rst b/Misc/NEWS.d/next/Core and Builtins/2020-03-25-20-34-01.bpo-40067.0bFda2.rst
new file mode 100644
index 0000000..2e1b20d
--- /dev/null
+++ b/Misc/NEWS.d/next/Core and Builtins/2020-03-25-20-34-01.bpo-40067.0bFda2.rst
@@ -0,0 +1,2 @@
+Improve the error message for multiple star expressions in an assignment.
+Patch by Furkan Onder
diff --git a/Python/compile.c b/Python/compile.c
index 0b3926c..01700e0 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -3708,7 +3708,7 @@
}
else if (elt->kind == Starred_kind) {
return compiler_error(c,
- "two starred expressions in assignment");
+ "multiple starred expressions in assignment");
}
}
if (!seen_star) {