[fpc-devel] Packed record integers and x86_86
Sven Barth
pascaldragon at googlemail.com
Wed Mar 27 18:46:58 CET 2019
DJ Coertzen <patrolliekaptein at gmail.com> schrieb am Mi., 27. März 2019,
18:27:
> Hi there,
>
> I need a solution for a packed record containing 4-byte 32-bit integers
> and cardinals, and other byte 8 bit and word 16 bit sized variables to
> overlay over a stream.
>
> Example:
> *type*
> * TMyBinaryHeader = packed record*
> * Sender : Cardinal;*
>
> * Target : Cardinal;*
>
> * Reference : Integer; *
>
> * Flags : Word;*
> * CheckByte : Byte;*
> * end;*
>
> So on 32 bit systems, SizeOf(TMyBinaryHeader) will report 15 bytes. How do
> I accomplish this on 64 bit platform and avoiding "myprotocollib.pas(x,y)
> Error: Typecast has different size (4 -> 8) in assignment" without having
> to port to ugly byte copy operations.
>
Would you show the code at/around the error location, please? I suspect
that it isn't the record that's the problem, but how you use it.
Regards,
Sven
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20190327/239cf535/attachment.html>
More information about the fpc-devel
mailing list