diff --git a/compiler/nodes.py b/compiler/nodes.py index 374a474..570c969 100644 --- a/compiler/nodes.py +++ b/compiler/nodes.py @@ -25,6 +25,7 @@ class Node: @functools.cache def location(self) -> SourceLocation: + assert len(self._values()) > 0 locations = [v.location() for v in self._values()] begin = min([loc.begin for loc in locations]) end = max([loc.end for loc in locations]) @@ -271,6 +272,7 @@ class Statement(Node): self.pseudo_nodes = pseudo_nodes def _values(self) -> list[Node | Any]: + assert len(self.nodes) + len(self.pseudo_nodes) > 0 return self.nodes + self.pseudo_nodes def intermediate_representation(self) -> list[ir.IRItem]: