Skip to content
Snippets Groups Projects
Commit ac897611 authored by John Snow's avatar John Snow Committed by Markus Armbruster
Browse files

qapi/error: assert QAPISourceInfo is not None


Built-in stuff is not parsed from a source file, and therefore have no
QAPISourceInfo. If such None info was used for reporting an error,
built-in stuff would be broken. Programming error. Instead of reporting
a confusing error with bogus source location then, we better crash.

We currently crash only if self.col was set. Assert that self.info is
not None in order to crash reliably.

We can not yet change the type of the initializer to prove this cannot
happen at static analysis time before the remainder of the code is fully
typed.

Signed-off-by: default avatarJohn Snow <jsnow@redhat.com>
Message-Id: <20210421192233.3542904-5-jsnow@redhat.com>
Reviewed-by: default avatarMarkus Armbruster <armbru@redhat.com>
Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
parent 86cc2ff6
No related branches found
No related tags found
No related merge requests found
......@@ -25,6 +25,7 @@ def __init__(self, info, msg, col=None):
self.col = col
def __str__(self):
assert self.info is not None
loc = str(self.info)
if self.col is not None:
assert self.info.line is not None
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment