aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLaytan Laats <laytanlaats@hotmail.com>2024-06-09 04:43:19 +0200
committerLaytan Laats <laytanlaats@hotmail.com>2024-06-09 04:43:19 +0200
commit6d862cc4e529b71e65356c73d44fc39c61cbbb77 (patch)
treeb6c327d4b28b1f8c3cd8ba2144dc665903acdf5b /src
parent96c06185dd7433402cc9b9acd60880d831c5f71f (diff)
fix unreachable hit when param and/or return have complex inits
Fixes #3630
Diffstat (limited to 'src')
-rw-r--r--src/llvm_backend_proc.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/llvm_backend_proc.cpp b/src/llvm_backend_proc.cpp
index 6cb1efab2..87f75fb1d 100644
--- a/src/llvm_backend_proc.cpp
+++ b/src/llvm_backend_proc.cpp
@@ -710,13 +710,12 @@ gb_internal void lb_begin_procedure_body(lbProcedure *p) {
lb_set_debug_position_to_procedure_begin(p);
if (p->debug_info != nullptr) {
if (p->context_stack.count != 0) {
+ lbBlock *prev_block = p->curr_block;
p->curr_block = p->decl_block;
lb_add_debug_context_variable(p, lb_find_or_generate_context_ptr(p));
+ p->curr_block = prev_block;
}
-
}
-
- lb_start_block(p, p->entry_block);
}
gb_internal void lb_end_procedure_body(lbProcedure *p) {