1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-10 04:22:20 +02:00

Rebuild correct type with CE FastFinish

This commit is contained in:
Brian Fiete 2025-01-19 08:38:52 -08:00
parent 2f98e7f579
commit 9988dec99d

View file

@ -7806,10 +7806,15 @@ bool CeContext::Execute(CeFunction* startFunction, uint8* startStackPtr, uint8*
SpecialCheck: SpecialCheck:
if (*fastFinishPtr) if (*fastFinishPtr)
{ {
BfTypeInstance* rebuildType = NULL;
if ((mCurModule != NULL) && (mCurModule->mCurTypeInstance != NULL)) if ((mCurModule != NULL) && (mCurModule->mCurTypeInstance != NULL))
rebuildType = mCurModule->mCurTypeInstance;
if ((mCurEmitContext != NULL) && (mCurEmitContext->mType != NULL))
rebuildType = mCurEmitContext->mType->ToTypeInstance();
if (rebuildType != NULL)
{ {
mCurModule->mCurTypeInstance->mRebuildFlags = (BfTypeRebuildFlags)(mCurModule->mCurTypeInstance->mRebuildFlags | BfTypeRebuildFlag_ConstEvalCancelled); rebuildType->mRebuildFlags = (BfTypeRebuildFlags)(rebuildType->mRebuildFlags | BfTypeRebuildFlag_ConstEvalCancelled);
mCurModule->DeferRebuildType(mCurModule->mCurTypeInstance); mCurModule->DeferRebuildType(rebuildType);
} }
if (*cancelingPtr) if (*cancelingPtr)
{ {