blob: 27081891414f68497414aeb651b4d18eff51f6ca (
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
35
36
37
|
{ Source provided for Free Pascal Bug Report 2318 }
{ Submitted by "Sergey Kosarevsky" on 2003-01-09 }
{ e-mail: netsurfer@au.ru }
Type tObject=Object
Constructor Init;
Function GetVMT:Pointer;Static;
Destructor Done;Virtual;
End;
Constructor tObject.Init;
Begin
End;
Function tObject.GetVMT:Pointer;
Begin
GetVMT:=self;
End;
Destructor tObject.Done;
Begin
End;
Var O:tObject;
Begin
O.Init;
if (O.GetVMT= nil) or (O.getVMT<>tObject.GetVMT) then
begin
Writeln('Problem with static methods');
Writeln('O.getVMT=',hexstr(longint(O.getVMT),8));
Writeln('tObject.GetVMT=',hexstr(longint(tobject.GetVMT),8));
halt(1);
end;
End.
|