From 84b4c13bf6758f1cc664eebb647f57740d83e831 Mon Sep 17 00:00:00 2001 From: zy69guqi <richard.angersbach@fau.de> Date: Mon, 3 Mar 2025 16:39:59 +0100 Subject: [PATCH] Fix typecheck --- src/pystencils/backend/ast/structural.py | 6 +++--- src/pystencils/backend/transformations/loop_vectorizer.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pystencils/backend/ast/structural.py b/src/pystencils/backend/ast/structural.py index b0dace4e0..5c8fca9ad 100644 --- a/src/pystencils/backend/ast/structural.py +++ b/src/pystencils/backend/ast/structural.py @@ -247,7 +247,7 @@ class PsLoop(PsStructuralNode): self._start.clone(), self._stop.clone(), self._step.clone(), - self._body.clone(), + self._body._clone_structural(), ) def get_children(self) -> tuple[PsAstNode, ...]: @@ -312,8 +312,8 @@ class PsConditional(PsStructuralNode): def _clone_structural(self) -> PsConditional: return PsConditional( self._condition.clone(), - self._branch_true.clone(), - self._branch_false.clone() if self._branch_false is not None else None, + self._branch_true._clone_structural(), + self._branch_false._clone_structural() if self._branch_false is not None else None, ) def get_children(self) -> tuple[PsAstNode, ...]: diff --git a/src/pystencils/backend/transformations/loop_vectorizer.py b/src/pystencils/backend/transformations/loop_vectorizer.py index e1e4fea50..6b518a30d 100644 --- a/src/pystencils/backend/transformations/loop_vectorizer.py +++ b/src/pystencils/backend/transformations/loop_vectorizer.py @@ -213,7 +213,7 @@ class LoopVectorizer: trailing_ctr = self._ctx.duplicate_symbol(scalar_ctr) trailing_loop_body = substitute_symbols( - loop.body.clone(), {scalar_ctr: PsExpression.make(trailing_ctr)} + loop.body._clone_structural(), {scalar_ctr: PsExpression.make(trailing_ctr)} ) trailing_loop = PsLoop( PsExpression.make(trailing_ctr), -- GitLab