Display a class's method resolution order, if it's non-trivial.  "Trivial"
here means it has no more than one base class to rummage through (in which
cases there's no potential confusion about resolution order).
diff --git a/Lib/pydoc.py b/Lib/pydoc.py
index a6f026b..a99fdb4 100755
--- a/Lib/pydoc.py
+++ b/Lib/pydoc.py
@@ -624,6 +624,16 @@
                 self.needone = 1
         hr = HorizontalRule()
 
+        # List the mro, if non-trivial.
+        mro = inspect.getmro(object)
+        if len(mro) > 2:
+            hr.maybe()
+            push('<dl><dt>Method resolution order:</dt>\n')
+            for base in mro:
+                push('<dd>%s</dd>\n' % self.classlink(base,
+                                                      object.__module__))
+            push('</dl>\n')
+
         def spill(msg, attrs, predicate):
             ok, attrs = _split_list(attrs, predicate)
             if ok:
@@ -738,6 +748,7 @@
             title = title + '(%s)' % join(parents, ', ')
         doc = self.markup(getdoc(object), self.preformat, funcs, classes, mdict)
         doc = doc and '<tt>%s<br>&nbsp;</tt>' % doc or '&nbsp;'
+
         return self.section(title, '#000000', '#ffc8d8', contents, 5, doc)
 
     def formatvalue(self, object):
@@ -985,12 +996,14 @@
         name = name or realname
         bases = object.__bases__
 
+        def makename(c, m=object.__module__):
+            return classname(c, m)
+
         if name == realname:
             title = 'class ' + self.bold(realname)
         else:
             title = self.bold(name) + ' = class ' + realname
         if bases:
-            def makename(c, m=object.__module__): return classname(c, m)
             parents = map(makename, bases)
             title = title + '(%s)' % join(parents, ', ')
 
@@ -998,6 +1011,14 @@
         contents = doc and [doc + '\n'] or []
         push = contents.append
 
+        # List the mro, if non-trivial.
+        mro = inspect.getmro(object)
+        if len(mro) > 2:
+            push("Method resolution order:")
+            for base in mro:
+                push('    ' + makename(base))
+            push('')
+
         # Cute little class to pump out a horizontal rule between sections.
         class HorizontalRule:
             def __init__(self):