mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-09 03:52:19 +02:00
Fixed inifnite work loop populating IsSpecializedByAutoCompleteMethod
This commit is contained in:
parent
20d51e0929
commit
c0dd9b0e09
2 changed files with 13 additions and 12 deletions
|
@ -695,12 +695,12 @@ bool BfContext::ProcessWorkList(bool onlyReifiedTypes, bool onlyReifiedMethods)
|
||||||
// but it has been referenced now so we need to complete it, OR
|
// but it has been referenced now so we need to complete it, OR
|
||||||
// if this is from a newly-reified module
|
// if this is from a newly-reified module
|
||||||
|
|
||||||
// if (false)
|
if ((type->IsSpecializedByAutoCompleteMethod()) && (type->mDefineState >= BfTypeDefineState_Defined))
|
||||||
// {
|
{
|
||||||
// // For debugging
|
// We don't process methods for these
|
||||||
// mScratchModule->PopulateType(type, BfPopulateType_Full);
|
}
|
||||||
// }
|
else
|
||||||
|
{
|
||||||
BfTypeProcessRequest* typeProcessRequest = mPopulateTypeWorkList.Alloc();
|
BfTypeProcessRequest* typeProcessRequest = mPopulateTypeWorkList.Alloc();
|
||||||
typeProcessRequest->mType = type;
|
typeProcessRequest->mType = type;
|
||||||
mCompiler->mStats.mTypesQueued++;
|
mCompiler->mStats.mTypesQueued++;
|
||||||
|
@ -710,6 +710,7 @@ bool BfContext::ProcessWorkList(bool onlyReifiedTypes, bool onlyReifiedMethods)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!didWork)
|
if (!didWork)
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -23683,7 +23683,7 @@ bool BfModule::Finish()
|
||||||
{
|
{
|
||||||
for (auto type : mOwnedTypeInstances)
|
for (auto type : mOwnedTypeInstances)
|
||||||
{
|
{
|
||||||
BF_ASSERT(!type->IsIncomplete());
|
BF_ASSERT((!type->IsIncomplete()) || (type->IsSpecializedByAutoCompleteMethod()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue