giscanner: emit a warning when we fail to parse a GTK-Doc comment block
authorDieter Verfaillie <dieterv@optionexplicit.be>
Wed, 9 Jan 2013 21:45:40 +0000 (22:45 +0100)
committerDieter Verfaillie <dieterv@optionexplicit.be>
Wed, 9 Jan 2013 21:45:40 +0000 (22:45 +0100)
Instead of going down with a for the user inexplicable backtrace,
emit a warning asking said user to file a bug including the
comment block in question.

Thanks to Alexandre Rostovtsev <tetromino@gentoo.org> for
proposing something similar in bug #690850

https://bugzilla.gnome.org/show_bug.cgi?id=690850

giscanner/annotationparser.py

index d4b2499..9c0ce5a 100644 (file)
@@ -766,7 +766,13 @@ class AnnotationParser(object):
         comment_blocks = {}
 
         for comment in comments:
-            comment_block = self.parse_comment_block(comment)
+            try:
+                comment_block = self.parse_comment_block(comment)
+            except Exception:
+                message.warn('unrecoverable parse error, please file a GObject-Introspection '
+                             'bug report including the complete comment block at the '
+                             'indicated location.', message.Position(comment[1], comment[2]))
+                continue
 
             if comment_block is not None:
                 # Note: previous versions of this parser did not check