1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 19:48:20 +02:00

Fixed always-include on specialized types

This commit is contained in:
Brian Fiete 2021-01-30 10:23:12 -08:00
parent d11348a4e4
commit 5ac1bbf63f
2 changed files with 10 additions and 0 deletions

View file

@ -6883,6 +6883,12 @@ bool BfCompiler::DoCompile(const StringImpl& outputDirectory)
continue; continue;
if (typeInst->mAlwaysIncludeFlags == BfAlwaysIncludeFlag_None) if (typeInst->mAlwaysIncludeFlags == BfAlwaysIncludeFlag_None)
continue; continue;
if (typeInst->IsGenericTypeInstance())
{
if ((!typeInst->IsUnspecializedType()) || (typeInst->IsUnspecializedTypeVariation()))
continue;
}
auto requiredModule = typeInst->GetModule(); auto requiredModule = typeInst->GetModule();
if (requiredModule != NULL) if (requiredModule != NULL)
requiredModules.push_back(requiredModule); requiredModules.push_back(requiredModule);
@ -9016,6 +9022,8 @@ BF_EXPORT const char* BF_CALLTYPE BfCompiler_GetUsedOutputFileNames(BfCompiler*
for (auto mainModule : moduleList) for (auto mainModule : moduleList)
{ {
BF_ASSERT(!mainModule->mIsDeleting);
for (auto fileNameIdx : mainModule->mImportFileNames) for (auto fileNameIdx : mainModule->mImportFileNames)
{ {
auto fileName = bfCompiler->mContext->mStringObjectIdMap[fileNameIdx].mString; auto fileName = bfCompiler->mContext->mStringObjectIdMap[fileNameIdx].mString;

View file

@ -2811,6 +2811,8 @@ void BfContext::MarkUsedModules(BfProject* project, BfModule* module)
{ {
BP_ZONE("BfContext::MarkUsedModules"); BP_ZONE("BfContext::MarkUsedModules");
BF_ASSERT(!module->mIsDeleting);
if (module->mIsScratchModule) if (module->mIsScratchModule)
return; return;