SF bug #699934: Obscure error message

Clarify error message for mro conflicts.
diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py
index 946a529..d925c75 100644
--- a/Lib/test/test_descr.py
+++ b/Lib/test/test_descr.py
@@ -1062,6 +1062,10 @@
           (EditableScrollablePane, ScrollablePane, EditablePane,
            Pane, ScrollingMixin, EditingMixin, object))
 
+mro_err_msg = """Cannot create class.The superclasses have conflicting
+inheritance trees which leave the method resolution order (MRO)
+undefined for bases """
+
 def mro_disagreement():
     if verbose: print "Testing error messages for MRO disagreement..."
     def raises(exc, expected, callable, *args):
@@ -1079,9 +1083,9 @@
     # Test some very simple errors
     raises(TypeError, "duplicate base class A",
            type, "X", (A, A), {})
-    raises(TypeError, "MRO conflict among bases ",
+    raises(TypeError, mro_err_msg,
            type, "X", (A, B), {})
-    raises(TypeError, "MRO conflict among bases ",
+    raises(TypeError, mro_err_msg,
            type, "X", (A, C, B), {})
     # Test a slightly more complex error
     class GridLayout(object): pass
@@ -1089,7 +1093,7 @@
     class VerticalGrid(GridLayout): pass
     class HVGrid(HorizontalGrid, VerticalGrid): pass
     class VHGrid(VerticalGrid, HorizontalGrid): pass
-    raises(TypeError, "MRO conflict among bases ",
+    raises(TypeError, mro_err_msg,
            type, "ConfusedGrid", (HVGrid, VHGrid), {})
 
 def objects():
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index a067cd5..b029777 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -1076,7 +1076,10 @@
 	}
 	n = PyDict_Size(set);
 
-	off = PyOS_snprintf(buf, sizeof(buf), "MRO conflict among bases");
+	off = PyOS_snprintf(buf, sizeof(buf), "Cannot create class.\
+The superclasses have conflicting\n\
+inheritance trees which leave the method resolution order (MRO)\n\
+undefined for bases");
 	i = 0;
 	while (PyDict_Next(set, &i, &k, &v) && off < sizeof(buf)) {
 		PyObject *name = class_name(k);