Repository URL to install this package:
|
Version:
3.0.0 ▾
|
{ %fail }
program bug9;
{$ifdef fpc}
{$mode delphi}
{$endif}
type
ITest = interface(IInterface)
['{FE6B16A6-A898-4B09-A46E-0AAC5E0A4E14}']
function Parent: ITest;
function GetChild: ITest;
end;
ITestEx = interface(ITest)
['{82449E91-76BE-4F4A-B873-1865042D5CAF}']
end;
TTest = class(TInterfacedObject, ITest)
function ITest.Parent = ParentEx;
{ ITestEx }
function ParentEx: ITestEx;
function GetChild: ITest;
procedure RemoveChild;
end;
{ ITest }
{ ITestEx }
function TTest.ParentEx: ITest;
begin;
Result := nil
end;
function TTest.GetChild: ITest;
begin;
WriteLn('TTest.GetChild');
Result := nil
end;
procedure TTest.RemoveChild;
begin;
WriteLn('TTest.RemoveChild');
end;
var E: ITest;
begin
E := TTest.Create;
WriteLn('Calling GetChild');
E.GetChild();
WriteLn('Stop');
end.