From 2384b7edfcea4df8ff97af127f1173400d40b7a2 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Mon, 13 Jun 2022 12:27:24 -0700 Subject: [PATCH] Fixed method selection reification --- IDEHelper/Compiler/BfExprEvaluator.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/IDEHelper/Compiler/BfExprEvaluator.cpp b/IDEHelper/Compiler/BfExprEvaluator.cpp index 9b4e8b8b..6654100c 100644 --- a/IDEHelper/Compiler/BfExprEvaluator.cpp +++ b/IDEHelper/Compiler/BfExprEvaluator.cpp @@ -9107,6 +9107,9 @@ BfTypedValue BfExprEvaluator::MatchMethod(BfAstNode* targetSrc, BfMethodBoundExp lookupTypeInst = NULL; } + if ((mModule->mIsReified) && (targetTypeInst != NULL) && (!targetTypeInst->mIsReified) && (!targetTypeInst->mModule->mReifyQueued)) + mModule->PopulateType(targetTypeInst); + BfMethodDef* methodDef = NULL; BfTypeVector checkMethodGenericArguments; @@ -15927,12 +15930,6 @@ BfModuleMethodInstance BfExprEvaluator::GetSelectedMethod(BfAstNode* targetSrc, { bool failed = false; - if ((mModule->mIsReified) && (!curTypeInst->mIsReified)) - { - // Make sure target type gets reified - mModule->PopulateType(curTypeInst); - } - BfTypeVector resolvedGenericArguments; BfMethodState* rootMethodState = NULL; if (mModule->mCurMethodState != NULL)