Antoine Pitrou <[email protected]> added the comment:
Thanks for the patch. Since you modified PyCFunction_GET_SELF to return NULL
for static methods, why not simply use it instead of manually looking up the
flags in several places?
I'm talking about the following changes:
- PyObject *self = PyCFunction_GET_SELF(func);
+ int flags = PyCFunction_GET_FLAGS(func);
+ PyObject *self = flags & METH_STATIC ? NULL :
+ _PyCFunction_GET_RAW_SELF(func);
[...]
self = m->m_self;
- if (self == NULL)
+ if (self == NULL || PyCFunction_GET_FLAGS(m) & METH_STATIC)
self = Py_None;
[...]
- PyObject *self = PyCFunction_GET_SELF(func);
+ PyObject *self = flags & METH_STATIC ? NULL :
+ _PyCFunction_GET_RAW_SELF(func);
Unless you demonstrate there's a significant performance improvement in this
style, we should really favour the simpler style.
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue13577>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com