Commit 03b6d9f547

Andrew Kelley <superjoe30@gmail.com>
2017-02-28 09:32:12
fix assertion failure for some switch errors
1 parent 9eb29e8
Changed files (1)
src
src/ir.cpp
@@ -10233,6 +10233,8 @@ static TypeTableEntry *ir_analyze_instruction_switch_br(IrAnalyze *ira,
 
     for (size_t i = 0; i < case_count; i += 1) {
         IrInstructionSwitchBrCase *new_case = &cases[i];
+        if (new_case->value == ira->codegen->invalid_instruction)
+            return ir_unreach_error(ira);
         new_case->block->ref_instruction = &switch_br_instruction->base;
     }