cisco / ChezScheme

Chez Scheme
Apache License 2.0
6.95k stars 982 forks source link

`make test` fails on x86 with ChezScheme 9.8.5 #695

Open nmeum opened 1 year ago

nmeum commented 1 year ago

While working on our Alpine Linux (which uses musl libc) ChezScheme package, I noticed a foreign.ms test failure on our x86 builders. When running make test the following output can be observed:

cat output-1-0/summary output-1-3/summary output-3-0/summary output-3-3/summary output-4-0/summary output-4-3/summary output-5-0/summary output-5-3/summary output-6-0/summary output-6-3/summary output-7-0/summary output-8-3/summary > summary && cat summary
-------- o=0 --------
--- experr-compile-0-f-f-f
+++ output-1-0/errors-compile-0-f-f-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 primvars.mo:Expected error testing (environment (quote 0)): Exception in environment: invalid library reference 0
 primvars.mo:Expected error testing (environment (quote (a . b))): Exception in environment: invalid library reference (a . b)
 primvars.mo:Expected error testing (environment (quote #f)): Exception in environment: invalid library reference #f
-------- o=3 --------
--- experr-compile-3-f-f-f
+++ output-1-3/errors-compile-3-f-f-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x".
 3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x at line 1, char 19 of testfile.ss".
 profile.mo:Expected warning in mat compile-profile: "profile-dump-list: unmodified source file "testfile.ss" not found in source directories".
-------- o=0 cp0=t cl=3 --------
--- experr-compile-0-f-t-f
+++ output-3-0/errors-compile-0-f-t-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 primvars.mo:Expected error testing (environment (quote 0)): Exception in environment: invalid library reference 0
 primvars.mo:Expected error testing (environment (quote (a . b))): Exception in environment: invalid library reference (a . b)
 primvars.mo:Expected error testing (environment (quote #f)): Exception in environment: invalid library reference #f
-------- o=3 cp0=t cl=3 --------
--- experr-compile-3-f-t-f
+++ output-3-3/errors-compile-3-f-t-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x".
 3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x at line 1, char 19 of testfile.ss".
 profile.mo:Expected warning in mat compile-profile: "profile-dump-list: unmodified source file "testfile.ss" not found in source directories".
-------- o=0 spi=t p=t rmg=2 --------
--- experr-compile-0-t-f-f
+++ output-4-0/errors-compile-0-t-f-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 primvars.mo:Expected error testing (environment (quote 0)): Exception in environment: invalid library reference 0
 primvars.mo:Expected error testing (environment (quote (a . b))): Exception in environment: invalid library reference (a . b)
 primvars.mo:Expected error testing (environment (quote #f)): Exception in environment: invalid library reference #f
-------- o=3 spi=t p=t rmg=2 --------
--- experr-compile-3-t-f-f
+++ output-4-3/errors-compile-3-t-f-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x".
 3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x at line 1, char 19 of testfile.ss".
 profile.mo:Expected warning in mat compile-profile: "profile-dump-list: unmodified source file "testfile.ss" not found in source directories".
-------- o=0 eval=interpret cl=6 --------
--- experr-interpret-0-f-f-f
+++ output-5-0/errors-interpret-0-f-f-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 1 at line 1032, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 2 at line 1034, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 5 at line 1041, char 4 of ../6.ms
-------- o=3 eval=interpret cl=6 --------
--- experr-interpret-3-f-f-f
+++ output-5-3/errors-interpret-3-f-f-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 1 at line 1032, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 2 at line 1034, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 5 at line 1041, char 4 of ../6.ms
-------- o=0 cp0=t eval=interpret rmg=2 --------
--- experr-interpret-0-f-t-f
+++ output-6-0/errors-interpret-0-f-t-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 1 at line 1032, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 2 at line 1034, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 5 at line 1041, char 4 of ../6.ms
-------- o=3 cp0=t eval=interpret rmg=2 --------
--- experr-interpret-3-f-t-f
+++ output-6-3/errors-interpret-3-f-t-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 1 at line 1032, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 2 at line 1034, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 5 at line 1041, char 4 of ../6.ms
-------- o=0 hci=101 eoc=f cl=9 --------
--- experr-compile-0-f-f-f
+++ output-7-0/errors-compile-0-f-f-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 primvars.mo:Expected error testing (environment (quote 0)): Exception in environment: invalid library reference 0
 primvars.mo:Expected error testing (environment (quote (a . b))): Exception in environment: invalid library reference (a . b)
 primvars.mo:Expected error testing (environment (quote #f)): Exception in environment: invalid library reference #f
-------- o=3 hci=101 eval=interpret rmg=2 --------
--- experr-interpret-3-f-f-f
+++ output-8-3/errors-interpret-3-f-f-f
@@ -1,3 +1,4 @@
+foreign.mo:Error in mat foreign-procedure clause 107: "s_test_schlib: test 23 failed" at line 570, char 3 of ../foreign.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 1 at line 1032, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 2 at line 1034, char 4 of ../6.ms
 6.mo:Bug in mat cp1in-verify-format-warnings clause 5 at line 1041, char 4 of ../6.ms
test run complete.  check ti3le/mats/summary for errors.

I assume that this means that the following test from mats/foreign.ms fails:

https://github.com/cisco/ChezScheme/blob/b8c3631731a8bef7cbdf1fa4cf7080cb5252e482/mats/foreign.ms#L570

Unfortunately, I am not familiar enough with ChezScheme internals to determine the root cause here. However, since this test failure cannot be observed on Alpine Linux x86_64, I assume that this is some sort of bug with the x86 ChezScheme port?

Let me know if you need more information to debug this issue.