Fix for SF bug 551412.  When _PyType_Lookup() is called on a type
whose tp_mro hasn't been initialized, it would dump core.  Fix this by
checking for NULL and calling PyType_Ready().  Will fix this in 2.2.1
too.
diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py
index e7e4a8f..faa9d89 100644
--- a/Lib/test/test_descr.py
+++ b/Lib/test/test_descr.py
@@ -3019,7 +3019,23 @@
     except:
         raise TestFailed, "string subclass allowed as exception"
 
+def do_this_first():
+    if verbose:
+        print "Testing SF bug 551412 ..."
+    # This dumps core when SF bug 551412 isn't fixed --
+    # but only when test_descr.py is run separately.
+    # (That can't be helped -- as soon as PyType_Ready()
+    # is called for PyLong_Type, the bug is gone.)
+    class UserLong(object):
+        def __pow__(self, *args):
+            pass
+    try:
+        pow(0L, UserLong(), 0L)
+    except:
+        pass
+
 def test_main():
+    do_this_first()
     class_docstrings()
     lists()
     dicts()