denballakh · GitHub

Bug report

Bug description:

PyArg_UnpackTuple(args, "", causes empty name to be used in error messages:

>>> str.join.__get__()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError:  expected at least 1 argument, got 0
#         ^^
>>> try: str.join.__get__()
... except Exception as e: exc = e
...
>>> str(exc)
' expected at least 1 argument, got 0'
#^

According to my quick search, PyArg_UnpackTuple(args, "", is used 10 times in Objects/typeobject.c and 3 times in Modules/_csv.c.

CPython versions tested on:

3.12, CPython main branch

Operating systems tested on:

No response

Linked PRs

Read the original on github.com ↗