From 34a82968597ea581b3f251aa9147a8e6e438fda3 Mon Sep 17 00:00:00 2001 From: Adam Turner <9087854+AA-Turner@users.noreply.github.com> Date: Tue, 31 May 2022 18:37:28 +0100 Subject: [PATCH] Add a warning --- sphinx/builders/gettext.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sphinx/builders/gettext.py b/sphinx/builders/gettext.py index 0f38ea7f5..4aa3cf5d4 100644 --- a/sphinx/builders/gettext.py +++ b/sphinx/builders/gettext.py @@ -53,11 +53,15 @@ class Catalog: if msg not in self.metadata: # faster lookup in hash self.messages.append(msg) self.metadata[msg] = [] - self.metadata[msg].append((origin.source, origin.line, origin.uid)) # type: ignore + line = origin.line + if line is None: + logger.warning(f"Node {origin!r} has no line number, using '-1'.") + line = -1 + self.metadata[msg].append((origin.source, line, origin.uid)) # type: ignore def __iter__(self) -> Generator[Message, None, None]: for message in self.messages: - positions = sorted(set((source, line or -1) for source, line, uuid + positions = sorted(set((source, line) for source, line, uuid in self.metadata[message])) uuids = [uuid for source, line, uuid in self.metadata[message]] yield Message(message, positions, uuids)