Message238672
| Author | Martin.Teichmann |
|---|---|
| Recipients | Martin.Teichmann |
| Date | 2015-03-20.13:44:20 |
| SpamBayes Score | -1.0 |
| Marked as misclassified | Yes |
| Message-id | <1426859061.43.0.510286082444.issue23722@psf.upfronthosting.co.za> |
| In-reply-to |
| Content | |
|---|---|
When a new class is initialized with __init__ in a metaclass, the __class__ cell of the class about to be initialized is not set yet, meaning that super() does not work. This is a known but fixable problem. The attached patch moves the initialization of __class__ from the end of __build_class__ into type.__new__. This avoids the proliferation of methods which don't have the __class__ cell set. |
|
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2015-03-20 13:44:21 | Martin.Teichmann | set | recipients: + Martin.Teichmann |
| 2015-03-20 13:44:21 | Martin.Teichmann | set | messageid: <1426859061.43.0.510286082444.issue23722@psf.upfronthosting.co.za> |
| 2015-03-20 13:44:21 | Martin.Teichmann | link | issue23722 messages |
| 2015-03-20 13:44:21 | Martin.Teichmann | create | |