type B = class testBaseField: T; end; type A = class(B) testField: T; function Gen: sequence of T; begin yield testBaseField; end; end; begin var q := new A(); q.Gen.Println; end.