diff --git a/src/Application/HydraScript.Application.CodeGeneration/Visitors/InstructionProvider.cs b/src/Application/HydraScript.Application.CodeGeneration/Visitors/InstructionProvider.cs index 25511b4..142aad9 100644 --- a/src/Application/HydraScript.Application.CodeGeneration/Visitors/InstructionProvider.cs +++ b/src/Application/HydraScript.Application.CodeGeneration/Visitors/InstructionProvider.cs @@ -228,10 +228,13 @@ public AddressedInstructions Visit(PrintStatement visitable) if (visitable.Expression is PrimaryExpression prim) result.Add(new AsString(_valueDtoConverter.Convert(prim.ToValueDto()))); else + { result.AddRange(visitable.Expression.Accept(_expressionVisitor)); + var name = new Name(result.OfType().Last().Left!); + result.Add(new AsString(name)); + } - var last = new Name(result.OfType().Last().Left!); - result.Add(new Print(last)); + result.Add(new Print(new Name((result[result.End] as AsString)!.Left!))); return result; }