Trundle <andysmu...@hammerhartes.de> added the comment: I think the real problem here is `update_one_slot` and not `object_new`. It is impossible to set "__new__" to a PyCFunction inside Python code, which may be a feature, but is in fact very irritating.
For example the following snippet: >>> class Dict(dict): __new__ = object.__new__ ... >>> Dict.__new__ is object.__new__ True >>> Dict() {} I would rather expect this behaviour (or at least that Dict.__new__ is not object.__new__): >>> Dict.__new__ is object.__new__ True >>> Dict() Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: object.__new__(Dict) is not safe, use dict.__new__() The attached patch leads to that behaviour, which also fixes the argument calling autodetection of `object.__new__`. ---------- keywords: +patch nosy: +Trundle Added file: http://bugs.python.org/file13408/update_one_slot.patch _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue5322> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com