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

Fix for deferring evaluation of conditionals with nulls for nullables

This commit is contained in:
Brian Fiete 2020-02-29 08:54:57 -08:00
parent d7aa91f9c5
commit a8d57c5d28

View file

@ -16,6 +16,7 @@ void BfDeferEvalChecker::Visit(BfLiteralExpression* literalExpr)
{
switch (literalExpr->mValue.mTypeCode)
{
case BfTypeCode_NullPtr:
case BfTypeCode_Boolean:
case BfTypeCode_Char8:
case BfTypeCode_Int8:
@ -83,8 +84,10 @@ void BfDeferEvalChecker::Visit(BfInvocationExpression* invocationExpr)
void BfDeferEvalChecker::Visit(BfConditionalExpression* condExpr)
{
VisitChild(condExpr->mTrueExpression);
VisitChild(condExpr->mConditionExpression);
bool prev = mNeedsDeferEval;
VisitChild(condExpr->mTrueExpression);
prev |= mNeedsDeferEval;
VisitChild(condExpr->mFalseExpression);
mNeedsDeferEval |= prev;
}