Index: classes.rst
===================================================================
--- classes.rst	(revision 58273)
+++ classes.rst	(working copy)
@@ -473,7 +473,7 @@
 Multiple Inheritance
 --------------------
 
-Python supports a limited form of multiple inheritance as well.  A class
+Python supports a form of multiple inheritance as well.  A class
 definition with multiple base classes looks like this::
 
    class DerivedClassName(Base1, Base2, Base3):
@@ -483,12 +483,15 @@
        .
        <statement-N>
 
-Formerly, the only rule was depth-first, left-to-right.  Thus, if an attribute
-was not found in :class:`DerivedClassName`, it was searched in :class:`Base1`,
-then (recursively) in the base classes of :class:`Base1`, and only if it was not
-found there, it was searched in :class:`Base2`, and so on.
+For most purposes, in the simplest cases, you can think of the search for attributes
+inherited from a parent class as depth-first, left-to-right, not searching twice in
+the same class where there is an overlap in the hierarchy.  Thus, if an attribute
+is not found in :class:`DerivedClassName`, it is searched for in :class:`Base1`,
+then (recursively) in the base classes of :class:`Base1`, and if it was not
+found there, it was searched for in :class:`Base2`, and so on.
 
-In the meantime, the method resolution order changes dynamically to support
+In fact, it is slightly more complex than that; 
+the method resolution order changes dynamically to support
 cooperative calls to :func:`super`.  This approach is known in some other
 multiple-inheritance languages as call-next-method and is more powerful than the
 super call found in single-inheritance languages.
