diff --git a/IDEHelper/Compiler/BfExprEvaluator.cpp b/IDEHelper/Compiler/BfExprEvaluator.cpp index 981ab6c3..cbf21c8a 100644 --- a/IDEHelper/Compiler/BfExprEvaluator.cpp +++ b/IDEHelper/Compiler/BfExprEvaluator.cpp @@ -12504,6 +12504,9 @@ BfLambdaInstance* BfExprEvaluator::GetLambdaInstance(BfLambdaBindExpression* lam } else if ((lambdaBindExpr->mNewToken == NULL) || (isFunctionBind)) { + if ((mModule->mCurMethodState != NULL) && (mModule->mCurMethodState->mClosureState != NULL) && (mModule->mCurMethodState->mClosureState->mCapturing)) + VisitLambdaBodies(lambdaBindExpr->mBody, lambdaBindExpr->mDtor); + if ((lambdaBindExpr->mNewToken != NULL) && (isFunctionBind)) mModule->Fail("Binds to functions should do not require allocations.", lambdaBindExpr->mNewToken);