2
0
Эх сурвалжийг харах

FinishInit check in CreateFunctionFrom

Brian Fiete 6 сар өмнө
parent
commit
ff7a9896cd

+ 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);