From 19f6e4a42dbd4d2387f1e510fa3fad27ad4fba15 Mon Sep 17 00:00:00 2001 From: Stephan Seitz <stephan.seitz@fau.de> Date: Mon, 5 Aug 2019 10:11:35 +0200 Subject: [PATCH] Declare FieldShapeSymbol and FieldStrideSymbol as strictly positive --- pystencils/data_types.py | 4 ++-- pystencils/kernelparameters.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pystencils/data_types.py b/pystencils/data_types.py index 08c1da1c9..ed95e80fa 100644 --- a/pystencils/data_types.py +++ b/pystencils/data_types.py @@ -105,8 +105,8 @@ class TypedSymbol(sp.Symbol): obj = TypedSymbol.__xnew_cached_(cls, *args, **kwds) return obj - def __new_stage2__(cls, name, dtype): - obj = super(TypedSymbol, cls).__xnew__(cls, name) + def __new_stage2__(cls, name, dtype, *args, **kwargs): + obj = super(TypedSymbol, cls).__xnew__(cls, name, *args, **kwargs) try: obj._dtype = create_type(dtype) except (TypeError, ValueError): diff --git a/pystencils/kernelparameters.py b/pystencils/kernelparameters.py index 11d30e09c..9284a1ee5 100644 --- a/pystencils/kernelparameters.py +++ b/pystencils/kernelparameters.py @@ -30,7 +30,7 @@ class FieldStrideSymbol(TypedSymbol): def __new_stage2__(cls, field_name, coordinate): name = "_stride_{name}_{i}".format(name=field_name, i=coordinate) - obj = super(FieldStrideSymbol, cls).__xnew__(cls, name, STRIDE_DTYPE) + obj = super(FieldStrideSymbol, cls).__xnew__(cls, name, STRIDE_DTYPE, positive=True) obj.field_name = field_name obj.coordinate = coordinate return obj @@ -55,7 +55,7 @@ class FieldShapeSymbol(TypedSymbol): def __new_stage2__(cls, field_names, coordinate): names = "_".join([field_name for field_name in field_names]) name = "_size_{names}_{i}".format(names=names, i=coordinate) - obj = super(FieldShapeSymbol, cls).__xnew__(cls, name, SHAPE_DTYPE) + obj = super(FieldShapeSymbol, cls).__xnew__(cls, name, SHAPE_DTYPE, positive=True) obj.field_names = tuple(field_names) obj.coordinate = coordinate return obj -- GitLab