From cfca3c1d7a7c02c76372305ac0a84690e476844a Mon Sep 17 00:00:00 2001 From: Maxwell Jeffress Date: Tue, 3 Mar 2026 08:00:00 +1100 Subject: [PATCH] Lambdas now capture state --- src/codegen/codegen.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/codegen/codegen.c b/src/codegen/codegen.c index 5235639..5144129 100644 --- a/src/codegen/codegen.c +++ b/src/codegen/codegen.c @@ -734,12 +734,7 @@ ResultType(GroundProgram, charptr) generateLambdaNode(SolsNode* node, SolsScope* groundAddInstructionToProgram(&gp, signature); // Create a scope for lambda arguments - // Lambdas do NOT have access to external state - SolsScope lambdaScope = { - .variables = NULL, - .tmpCounter = 0, - .returnType = *node->as.type.returnType - }; + SolsScope lambdaScope = copySolsScope(scope); for (size_t i = 0; i < node->as.type.children.count; i++) { addVariableToScope(&lambdaScope, node->as.type.children.at[i].name, node->as.type.children.at[i].type);