FEEDBACK WANTED: Type/class unification
Guido van Rossum
guido at python.org
Fri Aug 24 14:34:47 EDT 2001
> I just stumbled over one of the changes in 2.2 when I got the message:
>
> TypeError: unbound method option_value() must be called with instance
> as first argument
>
> The reason for this TypeError is that my code tried to call a method
> of the wrong class -- probably an oversight when I changed the
> superclass and didn't update all references to the old superclass. As
> that method ultimately comes from the same mixin it worked fine until
> now.
Right! I found a similar bug lurking in IDLE when I tightened the
rules for this case.
> The behavior of Python 2.2 is fine -- it told me about a potential
> error which had been lurking for a long time. The problem is that
> the error message is misleading -- the first argument is an instance.
>
> It would be more informative if the message looked something like:
>
> TypeError: unbound method option_value() must be called with an
> instance of class X as first argument (got instance of Y instead)
Done in CVS.
> BTW, that's the first problem I had with trying my code under 2.2.
> Well done, Guido.
You're welcome!
--Guido van Rossum (home page: http://www.python.org/~guido/)
More information about the Python-list
mailing list