Clean up examples

This commit is contained in:
nub31
2025-10-16 20:10:19 +02:00
parent eae28e6eba
commit 626a3ffa06
6 changed files with 15 additions and 66 deletions

View File

@@ -292,16 +292,24 @@ public class Generator
else
{
var returnValue = EmitExpression(returnNode.Value);
var tmp = NewTmp();
_writer.WriteLine($"{MapType(returnNode.Value.Type)} {tmp} = {returnValue};");
var blockDefers = _deferStack.Peek();
for (var i = blockDefers.Count - 1; i >= 0; i--)
if (_deferStack.Peek().Count != 0)
{
EmitStatement(blockDefers[i].Statement);
}
var tmp = NewTmp();
_writer.WriteLine($"{MapType(returnNode.Value.Type)} {tmp} = {returnValue};");
_writer.WriteLine($"return {tmp};");
var blockDefers = _deferStack.Peek();
for (var i = blockDefers.Count - 1; i >= 0; i--)
{
EmitStatement(blockDefers[i].Statement);
}
_writer.WriteLine($"return {tmp};");
}
else
{
_writer.WriteLine($"return {returnValue};");
}
}
}