Added new parameter exclude_empty to DocTestFinder.__init__, which
controls whether tests are included for objects with empty docstrings.
Defaults to True, to match the behavior of Python 2.3.
diff --git a/Lib/doctest.py b/Lib/doctest.py
index 2aa7408..156ef57 100644
--- a/Lib/doctest.py
+++ b/Lib/doctest.py
@@ -848,7 +848,8 @@
     """
 
     def __init__(self, verbose=False, parser=DocTestParser(),
-                 recurse=True, _namefilter=None):
+                 recurse=True, _namefilter=None,
+                 exclude_empty=False):
         """
         Create a new doctest finder.
 
@@ -860,10 +861,14 @@
 
         If the optional argument `recurse` is false, then `find` will
         only examine the given object, and not any contained objects.
+
+        If the optional argument `exclude_empty` is true, then `find`
+        will exclude tests for objects with empty docstrings.
         """
         self._parser = parser
         self._verbose = verbose
         self._recurse = recurse
+        self._exclude_empty = exclude_empty
         # _namefilter is undocumented, and exists only for temporary backward-
         # compatibility support of testmod's deprecated isprivate mess.
         self._namefilter = _namefilter
@@ -1055,18 +1060,19 @@
         else:
             try:
                 if obj.__doc__ is None:
-                    return None
-                docstring = str(obj.__doc__)
+                    docstring = ''
+                else:
+                    docstring = str(obj.__doc__)
             except (TypeError, AttributeError):
-                return None
-
-        # Don't bother if the docstring is empty.
-        if not docstring:
-            return None
+                docstring = ''
 
         # Find the docstring's location in the file.
         lineno = self._find_lineno(obj, source_lines)
 
+        # Don't bother if the docstring is empty.
+        if self._exclude_empty and not docstring:
+            return None
+
         # Return a DocTest for this object.
         if module is None:
             filename = None