> 1. try to get more info on field sizes.
>     ShowMessage(format(
>         '%d+%d = %d',[SizeOf(Integer),SizeOf(TDateTime),SizeOf(ClientRec)]);
> 2. I wonder if Integers are being stored as 64 bits.  that's your extra 4 bytes...
>     Does the 'real' ClientRec have 5 integers in it.
> 3. Is one implementation with WordAligned data and the other not... IE are there
>     padding bytes involved in the new record (shouldn't be for LongInt and TDateTime
>     though AFAIK).

Disregard my last message I just got the reply from Max.
>The compiler's default data alignment has changed from packed to unpacked
>for Microsoft compatibility. Because the compiler's default data alignment
>has changed, this section provides details on data alignment and potential
>impacts on your Delphi applications.

Changing to unpacked by default could
a) Break filehandling, especially variant record usage.
b) inflate memory usage for large fieldcounts.
c) break any code that manages record arrays using copymem to fill deleted
slots without reference to SizeOF.

--
Aaron Scott-Boddendijk
Jump Productions
(07) 838-3371 Voice
(07) 838-3372 Fax


---------------------------------------------------------------------------
    New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
                  Website: http://www.delphi.org.nz

Reply via email to