Răsfoiți Sursa

* use the sizes of the floatx80 and float128 structs for arrays having their size to avoid problems with padding on different platforms

git-svn-id: trunk@47198 -
(cherry picked from commit 16eb670e67cc8243cf2122e992f1cebf00cf4904)
svenbarth 4 ani în urmă
părinte
comite
dba65567f1
2 a modificat fișierele cu 4 adăugiri și 4 ștergeri
  1. 2 2
      rtl/inc/ufloat128.pp
  2. 2 2
      rtl/inc/ufloatx80.pp

+ 2 - 2
rtl/inc/ufloat128.pp

@@ -39,11 +39,11 @@ unit ufloat128;
 
 
     procedure DumpFloat128(const f : float128);
     procedure DumpFloat128(const f : float128);
       type
       type
-        ta = packed array[0..15] of byte;
+        ta = packed array[0..SizeOf(float128)-1] of byte;
       var
       var
         i : longint;
         i : longint;
       begin
       begin
-        for i:=15 downto 0 do
+        for i:=SizeOf(float128)-1 downto 0 do
           begin
           begin
             write(hexstr(ta(f)[i],2));
             write(hexstr(ta(f)[i],2));
             if i<15 then
             if i<15 then

+ 2 - 2
rtl/inc/ufloatx80.pp

@@ -39,11 +39,11 @@ unit ufloatx80;
 
 
     procedure DumpFloatx80(const f : floatx80);
     procedure DumpFloatx80(const f : floatx80);
       type
       type
-        ta = packed array[0..15] of byte;
+        ta = packed array[0..SizeOf(floatx80)-1] of byte;
       var
       var
         i : longint;
         i : longint;
       begin
       begin
-        for i:=15 downto 0 do
+        for i:=SizeOf(floatx80)-1 downto 0 do
           begin
           begin
             write(hexstr(ta(f)[i],2));
             write(hexstr(ta(f)[i],2));
             if i<15 then
             if i<15 then