pascalabcnet/TestSuite/generics57.pas
2021-08-29 12:22:33 +02:00

23 lines
284 B
ObjectPascal

var i: integer;
type
IInt = interface
procedure p1(x: integer);
end;
t1 = class(IInt)
public procedure p1(x: integer);
begin
i := x;
end;
end;
procedure p0<T>(a: T);
where T: IInt;
begin
a.p1(1);
end;
begin
p0(new t1);
assert(i = 1);
end.