From 2c4fcf8593fe926ea96f9b2c32d36f05e38d12c5 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner <inform@tiker.net> Date: Sun, 19 Apr 2015 23:13:15 -0500 Subject: [PATCH] Provide better error msg if reduction dtype can't be found --- loopy/preprocess.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/loopy/preprocess.py b/loopy/preprocess.py index 082b18895..665a5c8a1 100644 --- a/loopy/preprocess.py +++ b/loopy/preprocess.py @@ -32,6 +32,7 @@ from loopy.diagnostic import ( from pytools.persistent_dict import PersistentDict from loopy.tools import LoopyKeyBuilder from loopy.version import DATA_MODEL_VERSION +from loopy.diagnostic import DependencyTypeInferenceFailure, LoopyError import logging logger = logging.getLogger(__name__) @@ -413,7 +414,11 @@ def realize_reduction(kernel, insn_id_filter=None): target_var_name = var_name_gen("acc_"+"_".join(expr.inames)) target_var = var(target_var_name) - arg_dtype = type_inf_mapper(expr.expr) + try: + arg_dtype = type_inf_mapper(expr.expr) + except DependencyTypeInferenceFailure: + raise LoopyError("failed to determine type of accumulator for " + "reduction '%s'" % expr) from loopy.kernel.data import ExpressionInstruction, TemporaryVariable -- GitLab