summaryrefslogtreecommitdiff
path: root/sphinx/domains/python.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/domains/python.py')
-rw-r--r--sphinx/domains/python.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/sphinx/domains/python.py b/sphinx/domains/python.py
index 07a66fe22..19da49ac6 100644
--- a/sphinx/domains/python.py
+++ b/sphinx/domains/python.py
@@ -105,11 +105,16 @@ def _parse_annotation(annotation: str) -> List[Node]:
result.append(addnodes.desc_sig_punctuation('', ']'))
return result
elif isinstance(node, ast.Tuple):
- result = []
- for elem in node.elts:
- result.extend(unparse(elem))
- result.append(addnodes.desc_sig_punctuation('', ', '))
- result.pop()
+ if node.elts:
+ result = []
+ for elem in node.elts:
+ result.extend(unparse(elem))
+ result.append(addnodes.desc_sig_punctuation('', ', '))
+ result.pop()
+ else:
+ result = [addnodes.desc_sig_punctuation('', '('),
+ addnodes.desc_sig_punctuation('', ')')]
+
return result
else:
raise SyntaxError # unsupported syntax