This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author daniel.urban
Recipients benjamin.peterson, daniel.urban, gsakkis
Date 2011-02-20.13:32:18
SpamBayes Score 4.610099e-10
Marked as misclassified No
Message-id <1298208740.05.0.236548558161.issue11256@psf.upfronthosting.co.za>
In-reply-to
Content
Here is a patch. It also includes tests that would have detected this bug. It also corrects a case when getcallargs raised an exception with a different message (there are tests also for this):

>>> def f(**kwargs): pass
... 
>>> f(1, a=2)
Traceback (most recent call last):
    ...
TypeError: f() takes exactly 0 positional arguments (2 given)
>>> 
>>> getcallargs(f, 1, a=2)
Traceback (most recent call last):
    ...
TypeError: f() takes no arguments (2 given)

There is a comment in the patch about this case: the message given by Python is also incorrect, because it says that 2 positional arguments are given, but there was only 1 positional argument (the other was a keyword argument).  The patch currently handles this case by producing the same (incorrect) message as Python.
History
Date User Action Args
2011-02-20 13:32:20daniel.urbansetrecipients: + daniel.urban, gsakkis, benjamin.peterson
2011-02-20 13:32:20daniel.urbansetmessageid: <1298208740.05.0.236548558161.issue11256@psf.upfronthosting.co.za>
2011-02-20 13:32:18daniel.urbanlinkissue11256 messages
2011-02-20 13:32:18daniel.urbancreate