Description: fix some big-endian test issues
 Hard-coded little endianness.
 .
 cbmc (5.84.0-4) unstable; urgency=low
 .
   * Fix portability problems
Author: Michael Tautschnig <mt@debian.org>

---
The information above should follow the Patch Tagging Guidelines, please
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: 2023-06-13

Index: cbmc-5.84.0/regression/cbmc/Array_Pointer7/main.c
===================================================================
--- cbmc-5.84.0.orig/regression/cbmc/Array_Pointer7/main.c
+++ cbmc-5.84.0/regression/cbmc/Array_Pointer7/main.c
@@ -7,8 +7,12 @@ void f1()
   for(unsigned i = 0; i < sizeof(array1); i++)
     *(p + i) = i;
 
-  assert(array1[0] == 0x03020100);
-  assert(array1[1] == 0x07060504);
+  assert(
+      array1[0] == 0x03020100 /* little endian */ ||
+      array1[0] == 0x00010203 /* big endian */);
+  assert(
+      array1[1] == 0x07060504 /* little endian */ ||
+      array1[1] == 0x04050607 /* big endian */);
 }
 
 void f2()
@@ -20,7 +24,9 @@ void f2()
   array2[1] = 0x0200;
   p[4] = 1;
 
-  assert(array2[1] == 0x0201);
+  assert(
+      array2[1] == 0x0201 /* little endian */ ||
+      array2[1] == 0x01000200 /* big endian */);
 }
 
 int main()
Index: cbmc-5.84.0/regression/cbmc/float-nan-check/test.desc
===================================================================
--- cbmc-5.84.0.orig/regression/cbmc/float-nan-check/test.desc
+++ cbmc-5.84.0/regression/cbmc/float-nan-check/test.desc
@@ -1,7 +1,7 @@
 CORE
 main.c
 --nan-check
-\[main.NaN.1\] line \d+ NaN on \+ in byte_extract_little_endian\(c, (0|0l|0ll), float\) \+ myzero: SUCCESS
+\[main.NaN.1\] line \d+ NaN on \+ in byte_extract_(big|little)_endian\(c, (0|0l|0ll), float\) \+ myzero: SUCCESS
 \[main.NaN.2\] line \d+ NaN on / in myzero / myzero: FAILURE
 \[main.NaN.3\] line \d+ NaN on / in \(float\)n / myinf: FAILURE
 \[main.NaN.4\] line \d+ NaN on \* in myinf \* myzero: FAILURE
@@ -9,8 +9,8 @@ main.c
 \[main.NaN.6\] line \d+ NaN on \+ in myinf \+ -myinf: FAILURE
 \[main.NaN.7\] line \d+ NaN on - in myinf - myinf: FAILURE
 \[main.NaN.8\] line \d+ NaN on - in -myinf - -myinf: FAILURE
-\[main.NaN.9\] line \d+ NaN on \+ in byte_extract_little_endian\(c, (0|0l|0ll), float\) \+ byte_extract_little_endian\(c, (0|0l|0ll), float\): SUCCESS
-\[main.NaN.10\] line \d+ NaN on / in byte_extract_little_endian\(c, (0|0l|0ll), float\) / myzero: SUCCESS
+\[main.NaN.9\] line \d+ NaN on \+ in byte_extract_(big|little)_endian\(c, (0|0l|0ll), float\) \+ byte_extract_(big|little)_endian\(c, (0|0l|0ll), float\): SUCCESS
+\[main.NaN.10\] line \d+ NaN on / in byte_extract_(big|little)_endian\(c, (0|0l|0ll), float\) / myzero: SUCCESS
 \[main.NaN.11\] line \d+ NaN on \* in mynan \* mynan: SUCCESS
 \[main.NaN.12\] line \d+ NaN on \+ in mynan \+ mynan: SUCCESS
 \[main.NaN.13\] line \d+ NaN on - in mynan - mynan: SUCCESS
Index: cbmc-5.84.0/regression/cbmc/points-to-sets/test_json.desc
===================================================================
--- cbmc-5.84.0.orig/regression/cbmc/points-to-sets/test_json.desc
+++ cbmc-5.84.0/regression/cbmc/points-to-sets/test_json.desc
@@ -4,7 +4,7 @@ main.c
 activate-multi-line-match
 ^EXIT=0$
 ^SIGNAL=0$
-\{\n\s*"Pointer": "main::1::p!0@1",\n\s*"PointsToSet": \[ "object_descriptor\(integer_address, unknown\)" \],\n\s*"PointsToSetSize": 1,\n\s*"RetainedValuesSet": \[ "object_descriptor\(integer_address, unknown\)" \],\n\s*"RetainedValuesSetSize": 1,\n\s*"Value": "byte_extract_little_endian\(__CPROVER_memory, pointer_offset\(main::1::p!0@1\), signedbv\[32\]\)"\n\s*\},\n\s*\{\n\s*"Pointer": "main::1::p!0@1",\n\s*"PointsToSet": \[ "object_descriptor\(integer_address, unknown\)" \],\n\s*"PointsToSetSize": 1,\n\s*"RetainedValuesSet": \[ "object_descriptor\(integer_address, unknown\)" \],\n\s*"RetainedValuesSetSize": 1,\n\s*"Value": "byte_extract_little_endian\(__CPROVER_memory, pointer_offset\(main::1::p!0@1\), signedbv\[32\]\)"\n\s*\}
+\{\n\s*"Pointer": "main::1::p!0@1",\n\s*"PointsToSet": \[ "object_descriptor\(integer_address, unknown\)" \],\n\s*"PointsToSetSize": 1,\n\s*"RetainedValuesSet": \[ "object_descriptor\(integer_address, unknown\)" \],\n\s*"RetainedValuesSetSize": 1,\n\s*"Value": "byte_extract_(big|little)_endian\(__CPROVER_memory, pointer_offset\(main::1::p!0@1\), signedbv\[32\]\)"\n\s*\},\n\s*\{\n\s*"Pointer": "main::1::p!0@1",\n\s*"PointsToSet": \[ "object_descriptor\(integer_address, unknown\)" \],\n\s*"PointsToSetSize": 1,\n\s*"RetainedValuesSet": \[ "object_descriptor\(integer_address, unknown\)" \],\n\s*"RetainedValuesSetSize": 1,\n\s*"Value": "byte_extract_(big|little)_endian\(__CPROVER_memory, pointer_offset\(main::1::p!0@1\), signedbv\[32\]\)"\n\s*\}
 --
 --
 To test output for --show-points-to-sets option that displays the size and contents of points-to sets in json format.
Index: cbmc-5.84.0/regression/cbmc/union15/main.c
===================================================================
--- cbmc-5.84.0.orig/regression/cbmc/union15/main.c
+++ cbmc-5.84.0/regression/cbmc/union15/main.c
@@ -50,13 +50,13 @@ int main()
   // following examples demonstrate.
   union B ub = {.c = 0xFF};
   ub.b = 0;
-  assert(ub.c == 0xFE);
+  assert(ub.c == 0xFE || ub.c  == 0x7F);
 
   union C uc = {.i = 0xFFFFFFFF};
   uc.c = 0;
-  assert(uc.i == 0xFFFFFF00);
+  assert(uc.i == 0xFFFFFF00 || uc.i == 0x00FFFFFF);
 
   union A ua = {.i = 0xFFFFFFFF};
   ua.c = 0;
-  assert(ua.i == 0xFFFFFF00);
+  assert(ua.i == 0xFFFFFF00 || ua.i == 0x00FFFFFF);
 }
