Right now there are two tests for name colisions of type parameters of type aliases and functions:
|
def test_name_collision_01(self): |
|
check_syntax_error(self, """def func[**A, A](): ...""") |
|
def test_name_collision_01(self): |
|
check_syntax_error(self, """type TA1[A, **A] = None""", "duplicate type parameter 'A'") |
They only test A and **A collide. But, PEP clearly states that A and *A collide as well.
I will send a PR.
I am really sorry that I have to put all my review comments to #103764 as separate issues, but I've missed my chance to properly review the PEP's implementation.
Linked PRs