Fixup itertools recipe to cover a corner case.
diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst
index dd998f6..871b0cb 100644
--- a/Doc/library/itertools.rst
+++ b/Doc/library/itertools.rst
@@ -686,6 +686,8 @@
# number items returned: (n+r-1)! / r! / (n-1)!
pool = tuple(iterable)
n = len(pool)
+ if not n and r:
+ return
indices = [0] * r
yield tuple(pool[i] for i in indices)
while 1:
diff --git a/Lib/test/test_itertools.py b/Lib/test/test_itertools.py
index 0f1f695..a45e608 100644
--- a/Lib/test/test_itertools.py
+++ b/Lib/test/test_itertools.py
@@ -1268,6 +1268,8 @@
... "combinations_with_replacement('ABC', 3) --> AA AB AC BB BC CC"
... pool = tuple(iterable)
... n = len(pool)
+... if not n and r:
+... return
... indices = [0] * r
... yield tuple(pool[i] for i in indices)
... while 1: