diff --git a/sphinx/builders/html.py b/sphinx/builders/html.py
index f9a28933d..53c6c82bc 100644
--- a/sphinx/builders/html.py
+++ b/sphinx/builders/html.py
@@ -418,8 +418,7 @@ class StandaloneHTMLBuilder(Builder):
buildinfo = BuildInfo.load(fp)
if self.build_info != buildinfo:
- for docname in self.env.found_docs:
- yield docname
+ yield from self.env.found_docs
return
except ValueError as exc:
logger.warning(__('Failed to read build info file: %r'), exc)
diff --git a/sphinx/domains/cpp.py b/sphinx/domains/cpp.py
index 262d3f6d7..2ee529625 100644
--- a/sphinx/domains/cpp.py
+++ b/sphinx/domains/cpp.py
@@ -3845,9 +3845,8 @@ class Symbol:
yield c
if not c.identOrOp.is_anon():
continue
- # TODO: change to 'yield from' when Python 2 support is dropped
- for nested in c.children_recurse_anon:
- yield nested
+
+ yield from c.children_recurse_anon
def get_lookup_key(self):
# type: () -> List[Tuple[ASTNestedNameElement, Any]]
diff --git a/sphinx/ext/autodoc/__init__.py b/sphinx/ext/autodoc/__init__.py
index 578c1d968..c6616e59b 100644
--- a/sphinx/ext/autodoc/__init__.py
+++ b/sphinx/ext/autodoc/__init__.py
@@ -458,8 +458,7 @@ class Documenter:
self.env.app.emit('autodoc-process-docstring',
self.objtype, self.fullname, self.object,
self.options, docstringlines)
- for line in docstringlines:
- yield line
+ yield from docstringlines
def get_sourcename(self):
# type: () -> unicode
diff --git a/sphinx/util/__init__.py b/sphinx/util/__init__.py
index b228ca182..b6a5b950c 100644
--- a/sphinx/util/__init__.py
+++ b/sphinx/util/__init__.py
@@ -667,8 +667,7 @@ def status_iterator(iterable, summary, color="darkgreen", length=0, verbosity=0,
stringify_func=display_chunk):
# type: (Iterable, unicode, str, int, int, Callable[[Any], unicode]) -> Iterable # NOQA
if length == 0:
- for item in old_status_iterator(iterable, summary, color, stringify_func):
- yield item
+ yield from old_status_iterator(iterable, summary, color, stringify_func)
return
l = 0
summary = bold(summary)
diff --git a/sphinx/writers/latex.py b/sphinx/writers/latex.py
index ae3a02f09..7eb0317d9 100644
--- a/sphinx/writers/latex.py
+++ b/sphinx/writers/latex.py
@@ -926,8 +926,7 @@ class LaTeXTranslator(SphinxTranslator):
if isinstance(c, addnodes.start_of_file):
continue
elif isinstance(c, nodes.Element):
- for k in footnotes_under(c):
- yield k
+ yield from footnotes_under(c)
fnotes = {} # type: Dict[unicode, List[Union[collected_footnote, bool]]]
for fn in footnotes_under(node):
diff --git a/sphinx/writers/texinfo.py b/sphinx/writers/texinfo.py
index 3c5d8bbcc..372b0f549 100644
--- a/sphinx/writers/texinfo.py
+++ b/sphinx/writers/texinfo.py
@@ -535,8 +535,7 @@ class TexinfoTranslator(SphinxTranslator):
if isinstance(c, addnodes.start_of_file):
continue
elif isinstance(c, nodes.Element):
- for k in footnotes_under(c):
- yield k
+ yield from footnotes_under(c)
fnotes = {} # type: Dict[unicode, List[Union[collected_footnote, bool]]]
for fn in footnotes_under(node):
label = cast(nodes.label, fn[0])