Message128907
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. |
|
Date |
User |
Action |
Args |
2011-02-20 13:32:20 | daniel.urban | set | recipients:
+ daniel.urban, gsakkis, benjamin.peterson |
2011-02-20 13:32:20 | daniel.urban | set | messageid: <1298208740.05.0.236548558161.issue11256@psf.upfronthosting.co.za> |
2011-02-20 13:32:18 | daniel.urban | link | issue11256 messages |
2011-02-20 13:32:18 | daniel.urban | create | |
|