Browse Source

* fixed test for little endian

git-svn-id: trunk@4483 -
Jonas Maebe 19 years ago
parent
commit
01da5f44fd
1 changed files with 19 additions and 3 deletions
  1. 19 3
      tests/test/tparray4.pp

+ 19 - 3
tests/test/tparray4.pp

@@ -11,7 +11,7 @@ type
 
 type
   GPCKeyMap = packed array[0..127] of boolean;
-  FPCKeyMap = array [0..3] of Int32;
+  FPCKeyMap = array [0..15] of byte;
 
 var
   km: GPCKeymap;
@@ -19,9 +19,25 @@ begin
   fillchar(km,sizeof(km),0);
   km[56] := true;
   if (FPCKeyMap(km)[0] <> 0) or
-     (FPCKeyMap(km)[1] <> 128) or
+     (FPCKeyMap(km)[1] <> 0) or
      (FPCKeyMap(km)[2] <> 0) or
-     (FPCKeyMap(km)[3] <> 0) then
+     (FPCKeyMap(km)[3] <> 0) or
+     (FPCKeyMap(km)[4] <> 0) or
+     (FPCKeyMap(km)[5] <> 0) or
+     (FPCKeyMap(km)[6] <> 0) or
+{$ifdef ENDIAN_BIG}
+     (FPCKeyMap(km)[7] <> 128) or
+{$else ENDIAN_BIG}
+     (FPCKeyMap(km)[7] <> 1) or
+{$endif ENDIAN_BIG}
+     (FPCKeyMap(km)[8] <> 0) or
+     (FPCKeyMap(km)[9] <> 0) or
+     (FPCKeyMap(km)[10] <> 0) or
+     (FPCKeyMap(km)[11] <> 0) or
+     (FPCKeyMap(km)[12] <> 0) or
+     (FPCKeyMap(km)[13] <> 0) or
+     (FPCKeyMap(km)[14] <> 0) or
+     (FPCKeyMap(km)[15] <> 0) then
     begin
       writeln('error');
       halt(1);