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