mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-14 14:24:10 +02:00
Consider 'params' for DelegateBind method matching
This commit is contained in:
parent
aa4f9f7dfa
commit
c7be96d7a1
1 changed files with 4 additions and 0 deletions
|
@ -6019,6 +6019,8 @@ void BfExprEvaluator::ResolveArgValues(BfResolvedArgs& resolvedArgs, BfResolveAr
|
||||||
{
|
{
|
||||||
BfResolvedArg resolvedArg;
|
BfResolvedArg resolvedArg;
|
||||||
resolvedArg.mTypedValue = typedValueExpr->mTypedValue;
|
resolvedArg.mTypedValue = typedValueExpr->mTypedValue;
|
||||||
|
if (resolvedArg.mTypedValue.IsParams())
|
||||||
|
resolvedArg.mArgFlags = BfArgFlag_ParamsExpr;
|
||||||
resolvedArg.mExpression = typedValueExpr->mRefNode;
|
resolvedArg.mExpression = typedValueExpr->mRefNode;
|
||||||
resolvedArgs.mResolvedArgs.push_back(resolvedArg);
|
resolvedArgs.mResolvedArgs.push_back(resolvedArg);
|
||||||
continue;
|
continue;
|
||||||
|
@ -13393,6 +13395,8 @@ void BfExprEvaluator::Visit(BfDelegateBindExpression* delegateBindExpr)
|
||||||
auto typedValueExpr = &typedValueExprs[i];
|
auto typedValueExpr = &typedValueExprs[i];
|
||||||
typedValueExpr->mTypedValue.mValue = BfIRValue(BfIRValueFlags_Value, -1);
|
typedValueExpr->mTypedValue.mValue = BfIRValue(BfIRValueFlags_Value, -1);
|
||||||
typedValueExpr->mTypedValue.mType = methodInstance->GetParamType(i + paramOffset);
|
typedValueExpr->mTypedValue.mType = methodInstance->GetParamType(i + paramOffset);
|
||||||
|
if (methodInstance->GetParamKind(i + paramOffset) == BfParamKind_Params)
|
||||||
|
typedValueExpr->mTypedValue.mKind = BfTypedValueKind_Params;
|
||||||
typedValueExpr->mRefNode = NULL;
|
typedValueExpr->mRefNode = NULL;
|
||||||
args[i] = typedValueExpr;
|
args[i] = typedValueExpr;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue