*** Objects/typeobject.c.orig 2011-07-15 10:31:57.001924043 -0400 --- Objects/typeobject.c 2011-07-15 10:32:40.610923203 -0400 *************** *** 5713,5719 **** descr = _PyType_Lookup(type, p->name_strobj); if (descr == NULL) { if (ptr == (void**)&type->tp_iternext) { ! specific = _PyObject_NextNotImplemented; } continue; } --- 5713,5719 ---- descr = _PyType_Lookup(type, p->name_strobj); if (descr == NULL) { if (ptr == (void**)&type->tp_iternext) { ! specific = (void *)_PyObject_NextNotImplemented; } continue; } *************** *** 5759,5765 **** /* We specifically allow __hash__ to be set to None to prevent inheritance of the default implementation from object.__hash__ */ ! specific = PyObject_HashNotImplemented; } else { use_generic = 1; --- 5759,5765 ---- /* We specifically allow __hash__ to be set to None to prevent inheritance of the default implementation from object.__hash__ */ ! specific = (void *)PyObject_HashNotImplemented; } else { use_generic = 1; *************** *** 5974,5980 **** continue; if (PyDict_GetItem(dict, p->name_strobj)) continue; ! if (*ptr == PyObject_HashNotImplemented) { /* Classes may prevent the inheritance of the tp_hash slot by storing PyObject_HashNotImplemented in it. Make it visible as a None value for the __hash__ attribute. */ --- 5974,5980 ---- continue; if (PyDict_GetItem(dict, p->name_strobj)) continue; ! if (*ptr == (void *)PyObject_HashNotImplemented) { /* Classes may prevent the inheritance of the tp_hash slot by storing PyObject_HashNotImplemented in it. Make it visible as a None value for the __hash__ attribute. */