From ca83467e1b7e0edf8f05d2fce091e9a357a675a0 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Wed, 3 Aug 2022 08:38:04 -0700 Subject: [PATCH] Fixed assertion in generic AllowAppend ctor --- IDEHelper/Compiler/BfModule.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/IDEHelper/Compiler/BfModule.cpp b/IDEHelper/Compiler/BfModule.cpp index 000a7c97..c7797481 100644 --- a/IDEHelper/Compiler/BfModule.cpp +++ b/IDEHelper/Compiler/BfModule.cpp @@ -16808,8 +16808,16 @@ BfTypedValue BfModule::CallBaseCtorCalc(bool constOnly) bindResult.mIRArgs.RemoveAt(0); calcAppendArgs = bindResult.mIRArgs; } - BF_ASSERT(calcAppendMethodModule.mFunc); - appendSizeTypedValue = exprEvaluator.CreateCall(NULL, calcAppendMethodModule.mMethodInstance, calcAppendMethodModule.mFunc, false, calcAppendArgs); + + if (mBfIRBuilder->mIgnoreWrites) + { + appendSizeTypedValue = GetFakeTypedValue(GetPrimitiveType(BfTypeCode_IntPtr)); + } + else + { + BF_ASSERT(calcAppendMethodModule.mFunc); + appendSizeTypedValue = exprEvaluator.CreateCall(NULL, calcAppendMethodModule.mMethodInstance, calcAppendMethodModule.mFunc, false, calcAppendArgs); + } BF_ASSERT(appendSizeTypedValue.mType == GetPrimitiveType(BfTypeCode_IntPtr)); return appendSizeTypedValue;