diff --git a/src/pystencils/sympyextensions/typed_sympy.py b/src/pystencils/sympyextensions/typed_sympy.py
index 611e5e7ac4c9be707f28ceac749bc360b61d8034..c81a189eee29b88d84906ff6c8112f388cd67476 100644
--- a/src/pystencils/sympyextensions/typed_sympy.py
+++ b/src/pystencils/sympyextensions/typed_sympy.py
@@ -278,7 +278,9 @@ class CastFunc(sp.Function):
 
     @property
     def is_integer(self):
-        if isinstance(self.dtype, PsNumericType) or self.dtype == DynamicType.INDEX_TYPE:
+        if self.dtype == DynamicType.INDEX_TYPE:
+            return True
+        elif isinstance(self.dtype, PsNumericType):
             return self.dtype.is_int() or super().is_integer
         else:
             return super().is_integer