From e11c4aa0fefb8cc441fd06847f90ac0ffb9372a8 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Wed, 2 Mar 2022 09:51:28 -0800 Subject: [PATCH] Fixed string gv to stringId --- IDEHelper/Compiler/BfConstResolver.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/IDEHelper/Compiler/BfConstResolver.cpp b/IDEHelper/Compiler/BfConstResolver.cpp index c55541ef..c13ef408 100644 --- a/IDEHelper/Compiler/BfConstResolver.cpp +++ b/IDEHelper/Compiler/BfConstResolver.cpp @@ -203,7 +203,15 @@ BfTypedValue BfConstResolver::Resolve(BfExpression* expr, BfType* wantType, BfCo { auto constant = mModule->mBfIRBuilder->GetConstant(mResult.mValue); if ((constant->mConstType == BfConstType_GlobalVar) && ((flags & BfConstResolveFlag_AllowGlobalVariable) == 0)) - isConst = false; + { + int stringId = mModule->GetStringPoolIdx(mResult.mValue, mModule->mBfIRBuilder); + if (stringId != -1) + { + mResult.mValue = mModule->mBfIRBuilder->CreateConst(BfTypeCode_StringId, stringId); + } + else + isConst = false; + } } if ((!isConst) && ((mBfEvalExprFlags & BfEvalExprFlags_AllowNonConst) == 0))