diff --git a/core/translate/main_loop.rs b/core/translate/main_loop.rs index b3c5d6457..b9b857eee 100644 --- a/core/translate/main_loop.rs +++ b/core/translate/main_loop.rs @@ -396,10 +396,14 @@ pub fn open_loop( }); } - for cond in predicates + for (i, cond) in predicates .iter() - .filter(|cond| cond.should_eval_at_loop(table_index)) + .enumerate() + .filter(|(_, cond)| cond.should_eval_at_loop(table_index)) { + if t_ctx.omit_predicates.contains(&i) { + continue; + } let jump_target_when_true = program.allocate_label(); let condition_metadata = ConditionMetadata { jump_if_condition_is_true: false,