diff --git a/SyntaxTree/tree/Tree.cs b/SyntaxTree/tree/Tree.cs index 3119c44c8..fba02008c 100644 --- a/SyntaxTree/tree/Tree.cs +++ b/SyntaxTree/tree/Tree.cs @@ -46374,6 +46374,7 @@ namespace PascalABCCompiler.SyntaxTree { yield_unknown_ident copy = new yield_unknown_ident(); copy.Parent = this.Parent; + copy.UnknownID = this.UnknownID; if (source_context != null) copy.source_context = new SourceContext(source_context); if (attributes != null) diff --git a/TestSuite/yield6.pas b/TestSuite/yield6.pas new file mode 100644 index 000000000..675aa00c4 --- /dev/null +++ b/TestSuite/yield6.pas @@ -0,0 +1,17 @@ +type + t1 = class + + function f1: sequence of byte; + begin + + var p: function: sequence of integer := ()-> + |(1,2)|.Select(\(a,b)->3); + yield p().ToArray()[0]; + end; + + end; + +begin + var o := new t1; + assert(o.f1.ToArray[0] = 3); +end. \ No newline at end of file