2018-08-10 15:22:52 +03:00
|
|
|
|
var o: object;
|
2015-05-14 22:35:07 +03:00
|
|
|
|
procedure p<X,Y>(a: System.Func<X, Y>; b:System.Func<Y, X>; c: X);
|
|
|
|
|
|
begin
|
2018-08-10 15:22:52 +03:00
|
|
|
|
o := a(c);
|
2015-05-14 22:35:07 +03:00
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
begin
|
|
|
|
|
|
p(x -> x, x -> 1.0, 4.0);
|
2018-08-10 15:22:52 +03:00
|
|
|
|
assert(Round(real(o)) = 4);
|
2015-05-14 22:35:07 +03:00
|
|
|
|
end.
|