Message84112
| Author |
Trundle |
| Recipients |
Trundle, aronacher, prologic |
| Date |
2009年03月24日.20:25:05 |
| SpamBayes Score |
2.9808564e-07 |
| Marked as misclassified |
No |
| Message-id |
<1237926311.17.0.276886542625.issue5322@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
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__`. |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2009年03月24日 20:25:12 | Trundle | set | recipients:
+ Trundle, aronacher, prologic |
| 2009年03月24日 20:25:11 | Trundle | set | messageid: <1237926311.17.0.276886542625.issue5322@psf.upfronthosting.co.za> |
| 2009年03月24日 20:25:09 | Trundle | link | issue5322 messages |
| 2009年03月24日 20:25:08 | Trundle | create |
|