summaryrefslogtreecommitdiff
path: root/src/codegen/codegen.h
diff options
context:
space:
mode:
authorZuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian>2026-01-21 16:40:19 +0000
committerZuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian>2026-01-21 16:40:19 +0000
commit9c3e1b3c55c677206e6f70919f81484a7f0fe0c5 (patch)
treece63b0e071c2a7067e516de22585f3a29409ab5c /src/codegen/codegen.h
parenta1efe2cdde2237083ffff825f5b2dbb7442aa419 (diff)
Fix for #79
Diffstat (limited to 'src/codegen/codegen.h')
-rw-r--r--src/codegen/codegen.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/codegen/codegen.h b/src/codegen/codegen.h
index f8fe318..caf7c0c 100644
--- a/src/codegen/codegen.h
+++ b/src/codegen/codegen.h
@@ -48,6 +48,11 @@ extern int defer_count;
extern ASTNode *defer_stack[];
extern ASTNode *g_current_lambda;
+// Defer boundary tracking for proper defer execution on break/continue/return
#define MAX_DEFER 1024
+#define MAX_LOOP_DEPTH 64
+extern int loop_defer_boundary[]; // defer_count at each loop entry
+extern int loop_depth; // current loop nesting depth
+extern int func_defer_boundary; // defer_count at function entry
#endif