Jurko Gospodnetić added the comment: Thanks for the detailed response! :-(
I should have tested more before reporting the issue. Sorry for the noise. :-( I saw the 'cls' argument and assumed it was a class method. Having to explicitly specify cls did not seem to be in contradiction with this since I assumed __new__ is generally invoked on the class directly. I still do not see why it had to be a static method and has not been implemented as a class method, but I guess I'll better ask that kind of a question on the python user's newsgroup. :-) Just in case it can help someone else, here's some sample code what convinced me __new__ was indeed implemented as a static method: > class X: > pass > X.__new__() # TypeError: object.__new__(): not enough arguments > X.__new__(X) # creates a new X instance > x = X() > x.__new__() # TypeError: object.__new__(): not enough arguments > x.__new__(X) # creates a new X instance If __new__ had been a class method then calling 'x.__new__()' would have worked as well. Thanks again for the replies! Best regards, Jurko Gospodnetić ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue21415> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com