blob: a8de5d6d041205be736ed9fc52d4401d145648da (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
{ %version=1.1 }
{$mode objfpc}
Type
IMyInterface = Interface
Function MyFunc : Integer;
end;
TMyClass = Class(TInterfacedObject,IMyInterface)
Function MyOtherFunction : Integer;
// The following fails in FPC.
Function IMyInterface.MyFunc = MyOtherFunction;
end;
Function TMyClass.MyOtherFunction : Integer;
begin
Result:=23;
end;
Var
A : TMyClass;
M : IMyInterface;
I : Integer;
begin
A:=TMyClass.Create;
M:=A;
I:=M.MyFunc;
If (I<>23) then
begin
Writeln('Error calling interface');
Halt(1);
end;
end.
|