1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-09 20:12:21 +02:00

Fixed issue with nested valueless lambdas

This commit is contained in:
Brian Fiete 2020-10-20 05:23:39 -07:00
parent eaeb5ab6f8
commit a3211809c6
2 changed files with 10 additions and 0 deletions

View file

@ -10931,6 +10931,12 @@ BfLambdaInstance* BfExprEvaluator::GetLambdaInstance(BfLambdaBindExpression* lam
if (invokeMethodInstance != NULL)
{
if (mModule->mBfIRBuilder->mIgnoreWrites)
{
mResult = mModule->GetDefaultTypedValue(mExpectingType, false, BfDefaultValueKind_Addr);
return NULL;
}
BfLocalMethod* localMethod = new BfLocalMethod();
localMethod->mMethodName = "anon";
localMethod->mSystem = mModule->mSystem;

View file

@ -5293,6 +5293,10 @@ BfIRType BfModule::GetIRLoweredType(BfTypeCode loweredTypeCode, BfTypeCode lower
BfMethodRefType* BfModule::CreateMethodRefType(BfMethodInstance* methodInstance, bool mustAlreadyExist)
{
// Make sure we don't have a partially-formed local method or lambda coming in, because those may be replaced
// after the capture phase
BF_ASSERT(!methodInstance->mDisallowCalling);
auto methodRefType = new BfMethodRefType();
methodRefType->mContext = mContext;
//methodRefType->mCaptureType = NULL;