#2346/#2347: add py3k warning for __methods__ and __members__. Patch by Jack Diederich.
diff --git a/Objects/methodobject.c b/Objects/methodobject.c
index 5b9a364..16175f9 100644
--- a/Objects/methodobject.c
+++ b/Objects/methodobject.c
@@ -352,8 +352,15 @@
Py_FindMethodInChain(PyMethodChain *chain, PyObject *self, const char *name)
{
if (name[0] == '_' && name[1] == '_') {
- if (strcmp(name, "__methods__") == 0)
+ if (strcmp(name, "__methods__") == 0) {
+ if (Py_Py3kWarningFlag) {
+ if (PyErr_Warn(PyExc_DeprecationWarning,
+ "__methods__ not supported "
+ "in 3.x") < 0)
+ return NULL;
+ }
return listmethodchain(chain);
+ }
if (strcmp(name, "__doc__") == 0) {
const char *doc = self->ob_type->tp_doc;
if (doc != NULL)