summaryrefslogtreecommitdiff
path: root/testsuite
diff options
context:
space:
mode:
authorAnthony Green <green@moxielogic.com>2021-06-22 08:48:24 -0400
committerAnthony Green <green@moxielogic.com>2021-06-22 08:48:24 -0400
commitfa1ef887d4dc5d18696517e32e2ae98310f0040d (patch)
tree8e212f1820522d96f3a1018e2eee017695a7e45a /testsuite
parent84bb56914756845371be62e2753041521fd5d261 (diff)
downloadlibffi-fa1ef887d4dc5d18696517e32e2ae98310f0040d.tar.gz
Avoid undefined behaviour
Diffstat (limited to 'testsuite')
-rw-r--r--testsuite/libffi.bhaible/testcases.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/testsuite/libffi.bhaible/testcases.c b/testsuite/libffi.bhaible/testcases.c
index d25ebf4..23a6f46 100644
--- a/testsuite/libffi.bhaible/testcases.c
+++ b/testsuite/libffi.bhaible/testcases.c
@@ -64,7 +64,11 @@ typedef struct {
typedef struct { char c[3]; } T;
typedef struct { char c[33],c1; } X;
-char c1='a', c2=127, c3=(char)128, c4=(char)255, c5=-1;
+/* Don't use a number over 127, as some systems use signed chars and
+ the test case 25 doesn't account for this, resulting in undefined
+ behavior. See https://github.com/libffi/libffi/issues/598. */
+char c1='a', c2=127, c3=(char)1;
+
short s1=32767, s2=(short)32768, s3=3, s4=4, s5=5, s6=6, s7=7, s8=8, s9=9;
int i1=1, i2=2, i3=3, i4=4, i5=5, i6=6, i7=7, i8=8, i9=9,
i10=11, i11=12, i12=13, i13=14, i14=15, i15=16, i16=17;