1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-20 00:50:25 +02:00

Fixed varargs and tuple building

This commit is contained in:
Brian Fiete 2020-02-11 08:37:52 -08:00
parent 7741344fd2
commit 8171c842f0
5 changed files with 42 additions and 25 deletions

View file

@ -13825,6 +13825,11 @@ void BfExprEvaluator::CheckPropFail(BfMethodDef* propMethodDef, BfMethodInstance
}
}
bool BfExprEvaluator::HasResult()
{
return (mResult) || (mPropDef != NULL);
}
BfTypedValue BfExprEvaluator::GetResult(bool clearResult, bool resolveGenericType)
{
if ((!mResult) && (mPropDef != NULL))
@ -14550,7 +14555,7 @@ void BfExprEvaluator::AssignDeferrredTupleAssignData(BfAssignmentExpression* ass
}
else
{
if (child.mExprEvaluator->mResult)
if (child.mExprEvaluator->HasResult())
{
child.mExprEvaluator->mBfEvalExprFlags = (BfEvalExprFlags)(child.mExprEvaluator->mBfEvalExprFlags | BfEvalExprFlags_NoAutoComplete);
child.mExprEvaluator->PerformAssignment(assignExpr, true, elementValue);
@ -14588,7 +14593,7 @@ void BfExprEvaluator::DoTupleAssignment(BfAssignmentExpression* assignExpr)
rightValue = mModule->LoadValue(rightValue);
AssignDeferrredTupleAssignData(assignExpr, deferredTupleAssignData, rightValue);
mResult = rightValue;
}