fpc/tests/webtbs/tw25269.pp
nickysn fbca7ee2cb * check callerside if calleeside isn't available in is_ecx_used. Based on the
patch by Do-wan Kim, mantis #25269.

git-svn-id: trunk@26101 -
2013-11-16 19:39:15 +00:00

32 lines
578 B
ObjectPascal

{$MODE objfpc}
type
IMyInterface = interface
procedure Test(a, b: Integer);
end;
TMyBaseClass = class(TInterfacedObject, IMyInterface)
procedure Test(a, b: Integer); virtual; abstract;
end;
TDescendent = class(TMyBaseClass)
procedure Test(a, b: Integer); override;
end;
var
global_a, global_b: Integer;
procedure TDescendent.Test(a, b: Integer);
begin
global_a := a;
global_b := b;
end;
var
q: IMyInterface;
begin
q := TDescendent.Create;
q.Test(18, 42);
if (global_a <> 18) or (global_b <> 42) then
halt(1);
Writeln('Ok!');
end.