doctest doesn't handle intentional SyntaxError exceptions gracefully,
because it picks up the first line of traceback.format_exception_only()
instead of the last line. Pick up the last line instead!
diff --git a/Lib/doctest.py b/Lib/doctest.py
index 270e308..08879dd 100644
--- a/Lib/doctest.py
+++ b/Lib/doctest.py
@@ -501,7 +501,7 @@
# the traceback isn't necessary.
want = want.split('\n')[-2] + '\n'
exc_type, exc_val, exc_tb = sys.exc_info()
- got = traceback.format_exception_only(exc_type, exc_val)[0]
+ got = traceback.format_exception_only(exc_type, exc_val)[-1]
state = OK
else:
# unexpected exception