瀏覽代碼

FinishInit check in CreateFunctionFrom

Brian Fiete 6 月之前
父節點
當前提交
ff7a9896cd
共有 1 個文件被更改,包括 5 次插入0 次删除
  1. 5 0
      IDEHelper/Compiler/BfModule.cpp

+ 5 - 0
IDEHelper/Compiler/BfModule.cpp

@@ -1110,6 +1110,8 @@ bool BfModule::IsHotCompile()
 
 void BfModule::FinishInit()
 {
+	BfLogSysM("FinishInit %@ %s\n", this, mModuleName.c_str());
+
 	BF_ASSERT(mAwaitingInitFinish);
 
 	auto moduleOptions = GetModuleOptions();
@@ -11483,6 +11485,9 @@ BfIRValue BfModule::CreateFunctionFrom(BfMethodInstance* methodInstance, bool tr
 		return BfIRValue();
 	}
 
+	if ((mAwaitingInitFinish) && (!mBfIRBuilder->mIgnoreWrites))
+		FinishInit();
+
 	auto methodDef = methodInstance->mMethodDef;
 	StringT<4096> methodName;
 	BfMangler::Mangle(methodName, mCompiler->GetMangleKind(), methodInstance);