From d3820bfa58d39746c10813f20f43c7e02ddc340b Mon Sep 17 00:00:00 2001 From: paul Date: Wed, 20 Jan 2010 15:17:06 +0000 Subject: [PATCH] rtl: add TVmtFieldTable, TVmtFieldEntry to typinfo unit since delphi has that declarations too git-svn-id: trunk@14754 - --- rtl/objpas/typinfo.pp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/rtl/objpas/typinfo.pp b/rtl/objpas/typinfo.pp index d88594a201..d023948426 100644 --- a/rtl/objpas/typinfo.pp +++ b/rtl/objpas/typinfo.pp @@ -78,6 +78,30 @@ unit typinfo; TTypeKinds = set of TTypeKind; ShortStringBase = string[255]; + PVmtFieldEntry = ^TVmtFieldEntry; + TVmtFieldEntry = +{$ifndef FPC_REQUIRES_PROPER_ALIGNMENT} + packed +{$endif FPC_REQUIRES_PROPER_ALIGNMENT} + record + FieldOffset: PtrUInt; + TypeIndex: Word; + Name: ShortString; + end; + + PVmtFieldTable = ^TVmtFieldTable; + TVmtFieldTable = +{$ifndef FPC_REQUIRES_PROPER_ALIGNMENT} + packed +{$endif FPC_REQUIRES_PROPER_ALIGNMENT} + record + Count: Word; + ClassTab: Pointer; + { should be array[Word] of TFieldInfo; but + Elements have variant size! force at least proper alignment } + Fields: array[0..0] of TVmtFieldEntry + end; + {$PACKRECORDS 1} TTypeInfo = record Kind : TTypeKind;