diff --git a/IDEHelper/Compiler/BfExprEvaluator.cpp b/IDEHelper/Compiler/BfExprEvaluator.cpp index 7b5383eb..f52384e9 100644 --- a/IDEHelper/Compiler/BfExprEvaluator.cpp +++ b/IDEHelper/Compiler/BfExprEvaluator.cpp @@ -1954,6 +1954,13 @@ NoMatch: if (mBackupMethodDef != NULL) { + int prevParamDiff = (int)mBackupMethodDef->GetExplicitParamCount() - (int)mArguments.size(); + int paramDiff = (int)checkMethod->GetExplicitParamCount() - (int)mArguments.size(); + if ((prevParamDiff < 0) && (prevParamDiff > paramDiff)) + return false; + if ((prevParamDiff >= 0) && (paramDiff < 0)) + return false; + if (argMatchCount < mBackupArgMatchCount) return false; else if (argMatchCount == mBackupArgMatchCount)