VMT vMethodTable is NIL (making TObject.MethodAddress unusable)
Original Reporter info from Mantis: Raid
-
Reporter name: Dennis Fehr
Original Reporter info from Mantis: Raid
- Reporter name: Dennis Fehr
Description:
PVMT(ClassType)^.vMethodTable is NIL, and does not get set. MethodAddress and such functions which rely on the VMT Method Table do not work.
Steps to reproduce:
Create the following Test:
---------------------------------------
Program Test;
Type
TTest = Class
Procedure Test; Virtual;
End; { Class }
Procedure TTest.Test;
Begin
End; { Procedure }
Var A : TObject;
Begin
A := TObject.Create;
Try
IF Not Assigned(A.MethodAddress('Test') ) Then Writeln('Huh?');
Readln;
Finally
A.Free;
End; { Try, Finally }
End.
Mantis conversion info:
- Mantis ID: 18883
- OS: Ubuntu
- OS Build: 10.10 Maverick
- Build: svn17083
- Platform: i686 Linux
- Version: 2.5.1
- Monitored by: » Raid (Dennis Fehr)