From 97a828a12a808ea854b75b6c7c55e465593c3948 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Wed, 30 Jun 2021 06:29:23 -0700 Subject: [PATCH] Fixed _ in enum during autocomplete --- IDEHelper/Compiler/BfExprEvaluator.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/IDEHelper/Compiler/BfExprEvaluator.cpp b/IDEHelper/Compiler/BfExprEvaluator.cpp index c8de5579..cc51ebe6 100644 --- a/IDEHelper/Compiler/BfExprEvaluator.cpp +++ b/IDEHelper/Compiler/BfExprEvaluator.cpp @@ -3934,12 +3934,16 @@ BfTypedValue BfExprEvaluator::LookupIdentifier(BfAstNode* refNode, const StringI } checkTypeState = checkTypeState->mPrevState; } - - if ((resolvingFieldDef != NULL) && (resolvingFieldDef->mIdx > 0)) + + if ((resolvingFieldDef != NULL) && (mModule->mCompiler->mResolvePassData != NULL) && (mModule->mCompiler->mResolvePassData->mParser == resolvingFieldDef->mFieldDeclaration->GetParser())) + { + return mModule->GetDefaultTypedValue(mModule->mCurTypeInstance); + } + else if ((resolvingFieldDef != NULL) && (resolvingFieldDef->mIdx > 0)) { auto enumType = mModule->mCurTypeInstance; if (!enumType->mFieldInstances.IsEmpty()) - { + { auto fieldInstance = &mModule->mCurTypeInstance->mFieldInstances[resolvingFieldDef->mIdx - 1]; if ((fieldInstance->mConstIdx != -1) && (fieldInstance->mResolvedType == mModule->mCurTypeInstance))