diff --git a/loopy/__init__.py b/loopy/__init__.py
index 5834bdfa54671d5bfa1b13dc78b1ba86e00b75db..450aa4ac45272a580afd7dc5fb933355b5a8dcfd 100644
--- a/loopy/__init__.py
+++ b/loopy/__init__.py
@@ -740,7 +740,7 @@ def link_inames(knl, inames, new_iname, within=None, tag=None):
     from pymbolic.mapper.substitutor import make_subst_func
     rule_mapping_context = SubstitutionRuleMappingContext(
             knl.substitutions, var_name_gen)
-    ijoin = RuleAwareSubstitutionMapper(knl.substitutions, var_name_gen,
+    ijoin = RuleAwareSubstitutionMapper(rule_mapping_context,
                     make_subst_func(subst_dict), within)
 
     knl = rule_mapping_context.finish_kernel(