* variant size must be 24 bytes on 64 bit platforms

git-svn-id: trunk@3441 -
This commit is contained in:
florian 2006-05-06 22:52:13 +00:00
parent affffb4ef9
commit 2983b01109
2 changed files with 10 additions and 2 deletions

View File

@ -2055,7 +2055,11 @@ implementation
procedure tvariantdef.setsize; procedure tvariantdef.setsize;
begin begin
savesize:=16; {$ifdef cpu64bit}
savesize:=24;
{$else cpu64bit}
savesize:=16;
{$endif cpu64bit}
end; end;

View File

@ -36,6 +36,8 @@ const
varint64 = 20; varint64 = 20;
varqword = 21; varqword = 21;
varrecord = 36;
varstrarg = $48; varstrarg = $48;
varstring = $100; varstring = $100;
varany = $101; varany = $101;
@ -104,7 +106,9 @@ type
varany : (vany : pointer); varany : (vany : pointer);
vararray : (varray : pvararray); vararray : (varray : pvararray);
varbyref : (vpointer : pointer); varbyref : (vpointer : pointer);
); { unused so far, only to fill up space }
varrecord : (vrecord : pointer;precinfo : pointer);
);
1: 1:
(vlongs : array[0..2] of longint); (vlongs : array[0..2] of longint);
); );