diff --git a/mie/pass/pass-manager.c b/mie/pass/pass-manager.c index 9e9458b..878badb 100644 --- a/mie/pass/pass-manager.c +++ b/mie/pass/pass-manager.c @@ -211,7 +211,10 @@ static void schedule_passes( for (size_t i = 0; i < MIE_VECTOR_COUNT(pm->pm_nested); i++) { struct mie_pass_manager *nested = pm->pm_nested.items[i]; struct mie_walk_item *item = mie_walker_get(&walker); - schedule_passes(nested, schedule, item->i_op, depth + 1); + if (item) { + schedule_passes( + nested, schedule, item->i_op, depth + 1); + } } } while (mie_walker_step(&walker) == MIE_SUCCESS);