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 erickt
Recipients erickt
Date 2008-11-14.06:44:17
SpamBayes Score 1.0428224e-07
Marked as misclassified No
Message-id <1226645058.7.0.820357853432.issue4322@psf.upfronthosting.co.za>
In-reply-to
Content
I ran into a case where I modified the __name__ attribute of a function 
and then didn't specify the right number of arguments, and I got a 
TypeError that used the original function name, as demonstrated here:

>>> def foo(): pass
... 
>>> foo.__name__ = 'bar'
>>> foo(1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: foo() takes no arguments (1 given)

I would have expected it to say "TypeError: bar() ...". I'm guessing 
that the interpreter isn't using the __name__ attribute in this case.
History
Date User Action Args
2008-11-14 06:44:18ericktsetrecipients: + erickt
2008-11-14 06:44:18ericktsetmessageid: <1226645058.7.0.820357853432.issue4322@psf.upfronthosting.co.za>
2008-11-14 06:44:17ericktlinkissue4322 messages
2008-11-14 06:44:17ericktcreate