From c7f3f054fcce5890ebeb3ac73ba78a9a9d95c711 Mon Sep 17 00:00:00 2001 From: Takeshi KOMIYA Date: Sat, 8 Feb 2020 00:40:39 +0900 Subject: [PATCH] Fix #7106: std domain: enumerated nodes are marked as duplicated --- CHANGES | 2 ++ sphinx/transforms/__init__.py | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 7e8d70b2bbc..be8ddebe905 100644 --- a/CHANGES +++ b/CHANGES @@ -83,6 +83,8 @@ Bugs fixed * #6889: autodoc: Trailing comma in ``:members::`` option causes cryptic warning * #7055: linkcheck: redirect is treated as an error * #7090: std domain: Can't assign numfig-numbers for custom container nodes +* #7106: std domain: enumerated nodes are marked as duplicated when extensions + call ``note_explicit_target()`` Testing -------- diff --git a/sphinx/transforms/__init__.py b/sphinx/transforms/__init__.py index 922b22e464b..a259c147eeb 100644 --- a/sphinx/transforms/__init__.py +++ b/sphinx/transforms/__init__.py @@ -173,7 +173,9 @@ def apply(self, **kwargs: Any) -> None: domain = self.env.get_domain('std') # type: StandardDomain for node in self.document.traverse(nodes.Element): - if domain.is_enumerable_node(node) and domain.get_numfig_title(node) is not None: + if (domain.is_enumerable_node(node) and + domain.get_numfig_title(node) is not None and + node['ids'] != []): self.document.note_implicit_target(node)