mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-10 04:22:20 +02:00
Fixed removal of alwaysinclude flags
This commit is contained in:
parent
3875fbcb2f
commit
f81a1cf896
2 changed files with 12 additions and 3 deletions
|
@ -1150,7 +1150,7 @@ void BfCompiler::CreateVData(BfVDataModule* bfModule)
|
||||||
|
|
||||||
vdataTypeList.push_back(type);
|
vdataTypeList.push_back(type);
|
||||||
|
|
||||||
vdataHashCtx.Mixin(type->mTypeId);
|
vdataHashCtx.Mixin(type->mTypeId);
|
||||||
|
|
||||||
BF_ASSERT((type != NULL) || (mPassInstance->HasFailed()));
|
BF_ASSERT((type != NULL) || (mPassInstance->HasFailed()));
|
||||||
if ((type != NULL) && (typeInst != NULL))
|
if ((type != NULL) && (typeInst != NULL))
|
||||||
|
@ -1161,6 +1161,8 @@ void BfCompiler::CreateVData(BfVDataModule* bfModule)
|
||||||
|
|
||||||
if (type->IsInterface())
|
if (type->IsInterface())
|
||||||
vdataHashCtx.Mixin(typeInst->mSlotNum);
|
vdataHashCtx.Mixin(typeInst->mSlotNum);
|
||||||
|
vdataHashCtx.Mixin(typeInst->mAlwaysIncludeFlags);
|
||||||
|
vdataHashCtx.Mixin(typeInst->mHasBeenInstantiated);
|
||||||
|
|
||||||
if (!module->mIsScratchModule)
|
if (!module->mIsScratchModule)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1002,7 +1002,15 @@ void BfContext::RebuildType(BfType* type, bool deleteOnDemandTypes, bool rebuild
|
||||||
typeInst->ReleaseData();
|
typeInst->ReleaseData();
|
||||||
type->mDefineState = BfTypeDefineState_Undefined;
|
type->mDefineState = BfTypeDefineState_Undefined;
|
||||||
typeInst->mSpecializedMethodReferences.Clear();
|
typeInst->mSpecializedMethodReferences.Clear();
|
||||||
|
typeInst->mAlwaysIncludeFlags = BfAlwaysIncludeFlag_None;
|
||||||
|
typeInst->mHasBeenInstantiated = false;
|
||||||
typeInst->mLookupResults.Clear();
|
typeInst->mLookupResults.Clear();
|
||||||
|
typeInst->mIsUnion = false;
|
||||||
|
typeInst->mIsCRepr = false;
|
||||||
|
typeInst->mIsPacked = false;
|
||||||
|
typeInst->mIsSplattable = false;
|
||||||
|
typeInst->mHasUnderlyingArray = false;
|
||||||
|
|
||||||
typeInst->mIsTypedPrimitive = false;
|
typeInst->mIsTypedPrimitive = false;
|
||||||
typeInst->mMergedFieldDataCount = 0;
|
typeInst->mMergedFieldDataCount = 0;
|
||||||
typeInst->mTypeIncomplete = true;
|
typeInst->mTypeIncomplete = true;
|
||||||
|
@ -1010,8 +1018,7 @@ void BfContext::RebuildType(BfType* type, bool deleteOnDemandTypes, bool rebuild
|
||||||
typeInst->mHasBeenInstantiated = false;
|
typeInst->mHasBeenInstantiated = false;
|
||||||
typeInst->mHasParameterizedBase = false;
|
typeInst->mHasParameterizedBase = false;
|
||||||
typeInst->mTypeFailed = false;
|
typeInst->mTypeFailed = false;
|
||||||
typeInst->mTypeWarned = false;
|
typeInst->mTypeWarned = false;
|
||||||
typeInst->mIsSplattable = false;
|
|
||||||
typeInst->mHasUnderlyingArray = false;
|
typeInst->mHasUnderlyingArray = false;
|
||||||
typeInst->mHasPackingHoles = false;
|
typeInst->mHasPackingHoles = false;
|
||||||
typeInst->mWantsGCMarking = false;
|
typeInst->mWantsGCMarking = false;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue