diff --git a/src/AstGen.zig b/src/AstGen.zig index 8093cb0184de84e39be30a96f1938f30598e8812..43947a07fa7eef612b051691aec146f85c03f85a 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -4952,13 +4952,15 @@ fn switchExpr( .rhs = zir_datas[break_inst].@"break".operand, }; zir_datas[break_inst].@"break".operand = parent_gz.indexToRef(store_inst); - } else { - assert(zir_datas[store_inst].bin.lhs == block_scope.rl_ptr); + } else if (zir_datas[store_inst].bin.lhs == block_scope.rl_ptr) { scalar_cases_payload.items[body_len_index] -= 1; astgen.extra.appendSliceAssumeCapacity(scalar_cases_payload.items[start_index..extra_index]); extra_index += 1; astgen.extra.appendAssumeCapacity(scalar_cases_payload.items[extra_index]); extra_index += 1; + } else { + extra_index += 2; + astgen.extra.appendSliceAssumeCapacity(scalar_cases_payload.items[start_index..extra_index]); } } extra_index = 0;