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

Fixed boxing in cast in ternary expression

This commit is contained in:
Brian Fiete 2022-08-01 08:25:07 -04:00
parent 39595bf387
commit a23406d9dd
2 changed files with 6 additions and 2 deletions

View file

@ -19742,8 +19742,6 @@ void BfExprEvaluator::Visit(BfConditionalExpression* condExpr)
mModule->FixIntUnknown(falseValue);
}
prevInCondBlock.Restore();
bool isValid = trueValue && falseValue;
if (isValid)
@ -19780,6 +19778,8 @@ void BfExprEvaluator::Visit(BfConditionalExpression* condExpr)
}
}
prevInCondBlock.Restore();
mModule->mBfIRBuilder->SetInsertPoint(trueBlockPos);
if (isValid)
trueValue = mModule->LoadValue(trueValue);

View file

@ -1,6 +1,7 @@
#pragma warning disable 168
using System;
using System.Collections;
namespace Tests
{
@ -86,6 +87,9 @@ namespace Tests
var scObjResult = scVariant.GetBoxed();
Test.Assert(scObjResult case .Err);
scVariant.Dispose();
List<int> l = scope .();
IEnumerator<int> e = (l != null) ? (.)null : l.GetEnumerator();
}
[Test]