diff --git a/python/dune/perftool/blockstructured/vectorization.py b/python/dune/perftool/blockstructured/vectorization.py
index 32debee0bdfb5666ccd6f63bc6acdfa2757aaf62..ee76a4b8cf2420adf34a705ee77a992fc0e0daf5 100644
--- a/python/dune/perftool/blockstructured/vectorization.py
+++ b/python/dune/perftool/blockstructured/vectorization.py
@@ -252,9 +252,13 @@ def add_vcl_access(knl, iname_inner):
         else:
             if insn.id in accum_insns:
                 assignee_alias = insn.assignee
-                assignee_vec = next((expr for expr in insn.expression.children
-                                     if isinstance(expr, prim.Subscript) and
-                                     expr.aggregate.name.replace('vec', 'alias') == assignee_alias.aggregate.name))
+                try:
+                    assignee_vec = next((expr for expr in insn.expression.children
+                                         if isinstance(expr, prim.Subscript) and
+                                         expr.aggregate.name.replace('vec', 'alias') == assignee_alias.aggregate.name))
+                except StopIteration:
+                    from dune.perftool.error import PerftoolVectorizationError
+                    raise PerftoolVectorizationError
                 new_insns.append(insn.copy(assignee=assignee_vec,
                                            depends_on=insn.depends_on | read_dependencies[insn.id]))
             else: