diff --git a/loopy/transform/precompute.py b/loopy/transform/precompute.py index 9ca4806f48e3ffc8ef11a0a8ad6f97bebb9f6507..06cf83f9d9e6aeac68c1135a15c03f24cc1a6ac1 100644 --- a/loopy/transform/precompute.py +++ b/loopy/transform/precompute.py @@ -379,7 +379,12 @@ def precompute(kernel, subst_use, sweep_inames=[], within=None, from loopy.kernel.data import parse_tag default_tag = parse_tag(default_tag) - subst = kernel.substitutions[subst_name] + try: + subst = kernel.substitutions[subst_name] + except KeyError: + raise LoopyError("substitution rule '%s' not found" + % subst_name) + c_subst_name = subst_name.replace(".", "_") # }}}