Add additional checks for creating br

This commit is contained in:
Sofia 2026-04-30 20:44:04 +03:00
parent de702514d9
commit db8de8fc30

View File

@ -603,6 +603,7 @@ namespace AST {
builder.block = inner_bb; builder.block = inner_bb;
builder.builder->SetInsertPoint(inner_bb); builder.builder->SetInsertPoint(inner_bb);
this->m_loop->codegen(builder, inner_scope, allocator); this->m_loop->codegen(builder, inner_scope, allocator);
if (builder.block->getTerminator() == nullptr)
builder.builder->CreateBr(after_bb); builder.builder->CreateBr(after_bb);
// Loop after-part // Loop after-part
@ -648,6 +649,7 @@ namespace AST {
builder.builder->SetInsertPoint(inner_bb); builder.builder->SetInsertPoint(inner_bb);
builder.block = inner_bb; builder.block = inner_bb;
this->m_loop->codegen(builder, inner_scope, allocator); this->m_loop->codegen(builder, inner_scope, allocator);
if (builder.block->getTerminator() == nullptr)
builder.builder->CreateBr(cond_bb); builder.builder->CreateBr(cond_bb);
// After // After