Forráskód Böngészése

properly keep track of current scope for debugging

Fixes #4519
Laytan Laats 8 hónapja
szülő
commit
fa39d87f88
1 módosított fájl, 6 hozzáadás és 0 törlés
  1. 6 0
      src/llvm_backend_stmt.cpp

+ 6 - 0
src/llvm_backend_stmt.cpp

@@ -201,6 +201,8 @@ gb_internal void lb_open_scope(lbProcedure *p, Scope *s) {
 		}
 	}
 
+	GB_ASSERT(s != nullptr);
+	p->curr_scope = s;
 	p->scope_index += 1;
 	array_add(&p->scope_stack, s);
 
@@ -221,6 +223,10 @@ gb_internal void lb_close_scope(lbProcedure *p, lbDeferExitKind kind, lbBlock *b
 
 	}
 
+	if (p->curr_scope) {
+		p->curr_scope = p->curr_scope->parent;
+	}
+
 	p->scope_index -= 1;
 	array_pop(&p->scope_stack);
 }