mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-15 23:09:07 +02:00
* made Byte/Word/Long/Int64Rec endian safe
+ Int128/OWordRec git-svn-id: trunk@16279 -
This commit is contained in:
parent
d786f8a1b8
commit
b4c912bf92
@ -41,21 +41,57 @@ type
|
||||
|
||||
LongRec = packed record
|
||||
case Integer of
|
||||
{$ifdef FPC_LITTLE_ENDIAN}
|
||||
0 : (Lo,Hi : Word);
|
||||
{$else FPC_LITTLE_ENDIAN}
|
||||
0 : (Hi,Lo : Word);
|
||||
{$endif FPC_LITTLE_ENDIAN}
|
||||
1 : (Bytes : Array[0..3] of Byte);
|
||||
end;
|
||||
|
||||
WordRec = packed record
|
||||
{$ifdef FPC_LITTLE_ENDIAN}
|
||||
Lo,Hi : Byte;
|
||||
{$else FPC_LITTLE_ENDIAN}
|
||||
Hi,Lo : Byte;
|
||||
{$endif FPC_LITTLE_ENDIAN}
|
||||
end;
|
||||
|
||||
Int64Rec = packed record
|
||||
case integer of
|
||||
{$ifdef FPC_LITTLE_ENDIAN}
|
||||
0 : (Lo,Hi : Cardinal);
|
||||
{$else FPC_LITTLE_ENDIAN}
|
||||
0 : (Hi,Lo : Cardinal);
|
||||
{$endif FPC_LITTLE_ENDIAN}
|
||||
1 : (Words : Array[0..3] of Word);
|
||||
2 : (Bytes : Array[0..7] of Byte);
|
||||
end;
|
||||
|
||||
Int128Rec = packed record
|
||||
case integer of
|
||||
{$ifdef FPC_LITTLE_ENDIAN}
|
||||
0 : (Lo,Hi : QWord);
|
||||
{$else FPC_LITTLE_ENDIAN}
|
||||
0 : (Hi,Lo : QWord);
|
||||
{$endif FPC_LITTLE_ENDIAN}
|
||||
1 : (DWords : Array[0..3] of DWord);
|
||||
2 : (Words : Array[0..7] of Word);
|
||||
3 : (Bytes : Array[0..15] of Byte);
|
||||
end;
|
||||
|
||||
OWordRec = packed record
|
||||
case integer of
|
||||
{$ifdef FPC_LITTLE_ENDIAN}
|
||||
0 : (Lo,Hi : QWord);
|
||||
{$else FPC_LITTLE_ENDIAN}
|
||||
0 : (Hi,Lo : QWord);
|
||||
{$endif FPC_LITTLE_ENDIAN}
|
||||
1 : (DWords : Array[0..3] of DWord);
|
||||
2 : (Words : Array[0..7] of Word);
|
||||
3 : (Bytes : Array[0..15] of Byte);
|
||||
end;
|
||||
|
||||
PByteArray = ^TByteArray;
|
||||
TByteArray = Array[0..32767] of Byte;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user