From a3072d5f863c1b35b62494dbe773db88864265d0 Mon Sep 17 00:00:00 2001
From: Daniel Bauer <daniel.j.bauer@fau.de>
Date: Mon, 25 Mar 2024 15:37:12 +0100
Subject: [PATCH] Add comment support to UndefinedSymbolsCollector

---
 src/pystencils/backend/ast/analysis.py | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

diff --git a/src/pystencils/backend/ast/analysis.py b/src/pystencils/backend/ast/analysis.py
index 35172dfe8..a6ef04ebd 100644
--- a/src/pystencils/backend/ast/analysis.py
+++ b/src/pystencils/backend/ast/analysis.py
@@ -2,13 +2,14 @@ from typing import cast
 from functools import reduce
 
 from .structural import (
-    PsAstNode,
-    PsExpression,
-    PsStatement,
     PsAssignment,
+    PsAstNode,
+    PsBlock,
+    PsComment,
     PsDeclaration,
+    PsExpression,
     PsLoop,
-    PsBlock,
+    PsStatement,
 )
 from .expressions import PsSymbolExpr, PsConstantExpr
 
@@ -55,6 +56,9 @@ class UndefinedSymbolsCollector:
                 undefined_vars.discard(ctr.symbol)
                 return undefined_vars
 
+            case PsComment():
+                return set()
+
             case unknown:
                 raise PsInternalCompilerError(
                     f"Don't know how to collect undefined variables from {unknown}"
@@ -78,7 +82,14 @@ class UndefinedSymbolsCollector:
             case PsDeclaration(lhs, _):
                 return {lhs.symbol}
 
-            case PsStatement() | PsAssignment() | PsExpression() | PsLoop() | PsBlock():
+            case (
+                PsAssignment()
+                | PsBlock()
+                | PsComment()
+                | PsExpression()
+                | PsLoop()
+                | PsStatement()
+            ):
                 return set()
 
             case unknown:
-- 
GitLab