summaryrefslogtreecommitdiff
path: root/sphinx/ext/autodoc/inspector.py
diff options
context:
space:
mode:
authorTakeshi KOMIYA <i.tkomiya@gmail.com>2018-08-17 10:32:58 +0900
committerTakeshi KOMIYA <i.tkomiya@gmail.com>2018-08-17 10:32:58 +0900
commita450eb7a7a48fd706c6cdbe6c35be63fd7ff13e6 (patch)
treef7340d3901bbd2b2c05ced8997b2e70ac440ca5f /sphinx/ext/autodoc/inspector.py
parent2604920232c9c7588f2a6f1ebfa15c506661cb10 (diff)
downloadsphinx-git-a450eb7a7a48fd706c6cdbe6c35be63fd7ff13e6.tar.gz
Fix #5306: autodoc: ``getargspec()`` raises NameError for invalid typehints
Diffstat (limited to 'sphinx/ext/autodoc/inspector.py')
-rw-r--r--sphinx/ext/autodoc/inspector.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/sphinx/ext/autodoc/inspector.py b/sphinx/ext/autodoc/inspector.py
index 6e07c9547..be42237c6 100644
--- a/sphinx/ext/autodoc/inspector.py
+++ b/sphinx/ext/autodoc/inspector.py
@@ -130,8 +130,11 @@ def formatargspec(function, args, varargs=None, varkw=None, defaults=None,
else:
return value
- introspected_hints = (typing.get_type_hints(function) # type: ignore
- if typing and hasattr(function, '__code__') else {})
+ try:
+ introspected_hints = (typing.get_type_hints(function) # type: ignore
+ if typing and hasattr(function, '__code__') else {})
+ except Exception:
+ introspected_hints = {}
fd = StringIO()
fd.write('(')