From 0ba1073615f0d9bc9a768f6ca3faf25f299c9ed5 Mon Sep 17 00:00:00 2001 From: svenbarth Date: Tue, 17 Oct 2017 20:54:38 +0000 Subject: [PATCH] + add new type TVmtFieldClassTab for the class table of the field table (Delphi compatible) git-svn-id: trunk@37483 - --- rtl/objpas/typinfo.pp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/rtl/objpas/typinfo.pp b/rtl/objpas/typinfo.pp index 887352060c..84df5fafb3 100644 --- a/rtl/objpas/typinfo.pp +++ b/rtl/objpas/typinfo.pp @@ -182,6 +182,16 @@ unit typinfo; property Tail: Pointer read GetTail; end; + PVmtFieldClassTab = ^TVmtFieldClassTab; + TVmtFieldClassTab = +{$ifndef FPC_REQUIRES_PROPER_ALIGNMENT} + packed +{$endif FPC_REQUIRES_PROPER_ALIGNMENT} + record + Count: Word; + ClassRef: array[0..0] of PClass; + end; + PVmtFieldEntry = ^TVmtFieldEntry; TVmtFieldEntry = {$ifndef FPC_REQUIRES_PROPER_ALIGNMENT} @@ -200,7 +210,7 @@ unit typinfo; {$endif FPC_REQUIRES_PROPER_ALIGNMENT} record Count: Word; - ClassTab: Pointer; + ClassTab: PVmtFieldClassTab; { should be array[Word] of TFieldInfo; but Elements have variant size! force at least proper alignment } Fields: array[0..0] of TVmtFieldEntry