pascalabcnet/TestSuite/yieldcapture1.pas
miks1965 88cd8ce925 Убран дурацкий код, из-за которого в BaseChangeVisitor все узлы обходились дважды.
Доработан LoweringVisitor, который ранее на это закладывался
2016-07-17 10:40:17 +03:00

21 lines
373 B
ObjectPascal

var z:=1;
type AAA = class
y: integer := 1;
function f(a: sequence of integer): sequence of integer;
begin
var k: integer = 1;
foreach var x in a do
yield x+y+z+k;
end;
end;
begin
var a1 := new AAA();
var q := a1.f(Range(1,4));
var sq := Seq(4,5,6,7);
Assert(q.Println.SequenceEqual(sq));
Assert(q.Println.SequenceEqual(sq));
end.