diff --git a/pystencils/backends/cbackend.py b/pystencils/backends/cbackend.py index 59d9011d4e644401049260931ebb9d15f66cce43..70e2814ff649febc076007c4488cc16ca057caf5 100644 --- a/pystencils/backends/cbackend.py +++ b/pystencils/backends/cbackend.py @@ -5,6 +5,7 @@ import numpy as np import sympy as sp from sympy.core import S from sympy.printing.ccode import C89CodePrinter + from pystencils.astnodes import KernelFunction, Node from pystencils.cpu.vectorization import vec_all, vec_any from pystencils.data_types import ( @@ -385,8 +386,9 @@ class CustomSympyPrinter(CCodePrinter): elif expr.func == int_div: return "((%s) / (%s))" % (self._print(expr.args[0]), self._print(expr.args[1])) else: + name = expr.name if hasattr(expr, 'name') else expr.__class__.__name__ arg_str = ', '.join(self._print(a) for a in expr.args) - return f'{expr.name}({arg_str})' + return f'{name}({arg_str})' def _typed_number(self, number, dtype): res = self._print(number)