diff --git a/BeefySysLib/util/Heap.cpp b/BeefySysLib/util/Heap.cpp index 1150eca6..e3bcb636 100644 --- a/BeefySysLib/util/Heap.cpp +++ b/BeefySysLib/util/Heap.cpp @@ -51,7 +51,7 @@ public: { int size = 0; int checkNode = mHead; - while (checkNode != NULL) + while (checkNode != -1) { size++; checkNode = CH_REL_TO_ABS(checkNode)->mNext; diff --git a/IDEHelper/Compiler/BfExprEvaluator.cpp b/IDEHelper/Compiler/BfExprEvaluator.cpp index 5ec674df..53106f1f 100644 --- a/IDEHelper/Compiler/BfExprEvaluator.cpp +++ b/IDEHelper/Compiler/BfExprEvaluator.cpp @@ -5488,7 +5488,7 @@ BfTypedValue BfExprEvaluator::CreateCall(BfAstNode* targetSrc, BfMethodInstance* { BfTypeCode loweredRetType = BfTypeCode_None; BfTypeCode loweredRetType2 = BfTypeCode_None; - if (methodInstance->GetLoweredReturnType(&loweredRetType, &loweredRetType2)) + if ((!IsConstEval()) && (methodInstance->GetLoweredReturnType(&loweredRetType, &loweredRetType2))) { auto retVal = mModule->CreateAlloca(methodInstance->mReturnType); BfIRType loweredIRType = mModule->GetIRLoweredType(loweredRetType, loweredRetType2); diff --git a/IDEHelper/Compiler/BfModule.cpp b/IDEHelper/Compiler/BfModule.cpp index 594aa373..d68911fb 100644 --- a/IDEHelper/Compiler/BfModule.cpp +++ b/IDEHelper/Compiler/BfModule.cpp @@ -15546,7 +15546,7 @@ void BfModule::SetupIRMethod(BfMethodInstance* methodInstance, BfIRFunction func BfType* resolvedTypeRef2 = NULL; String paramName; bool isSplattable = false; - bool tryLowering = true; + bool tryLowering = !mIsConstModule; if (isThis) { paramName = "this"; diff --git a/IDEHelper/Compiler/CeMachine.cpp b/IDEHelper/Compiler/CeMachine.cpp index 77e30e9f..bbcab54e 100644 --- a/IDEHelper/Compiler/CeMachine.cpp +++ b/IDEHelper/Compiler/CeMachine.cpp @@ -3909,11 +3909,11 @@ bool CeMachine::Execute(CeFunction* startFunction, uint8* startStackPtr, uint8* if (sleepMS > 200) { - Sleep(200); + BfpThread_Sleep(200); sleepMS -= 200; continue; } - Sleep(sleepMS); + BfpThread_Sleep(sleepMS); break; } @@ -5292,7 +5292,7 @@ void CeMachine::PrepareFunction(CeFunction* ceFunction, CeBuilder* parentBuilder ceBuilder.mCeFunction = ceFunction; ceBuilder.Build(); - if (!ceFunction->mCode.IsEmpty()) + /*if (!ceFunction->mCode.IsEmpty()) { CeDumpContext dumpCtx; dumpCtx.mCeFunction = ceFunction; @@ -5302,7 +5302,7 @@ void CeMachine::PrepareFunction(CeFunction* ceFunction, CeBuilder* parentBuilder dumpCtx.Dump(); OutputDebugStrF("Code for %s:\n%s\n", ceBuilder.mBeFunction->mName.c_str(), dumpCtx.mStr.c_str()); - } + }*/ } void CeMachine::MapFunctionId(CeFunction* ceFunction)