I have attached a patch that allows "make check" run more or less successfully on Windows. The patch converts Windows-style newlines to Unix-style newlines from the output of the test, so that when the actual output is compared to the expected output, the newline differences don't set off false positives. It also fixes a couple obvious problems with the tests to make them work on MSYS.
I have also attached the results of "make check." I went through all
the failures and gave some notes below.
./../src/hugs +q -w -pHugs: static/mod154.hs < nul
This seems to be a known bug in Hugs since
mod154.hs says "Hugs gets this wrong."
./../src/hugs +q -w -pHugs: rts/read.hs < rts/read.input
The exponents on floating point numbers include an extra leading
"0": "-3.10862446895044e-015" instead of "-3.10862446895044e-15"
and "2.384186e-007" instead of "2.384186e-07". GHCi strips
all the leading zeros from the exponents in both cases. So, there
is a bug in the tests (doesn't properly take leading zeros into
account in exponents) and/or Hugs (if the Haskell spec. requires
leading zeros to be stripped like GHCi does).
./../src/hugs +q -w -pHugs: rts/arith.hs < rts/arith.input
There is a difference "-0" vs. "0" that seems not totally
unreasonable.
The other difference "inf" vs. "1.#INF" seems like a bug in Hugs.
./../src/hugs +q -w -pHugs: ffi/Sin.hs < ffi/Sin.input
The unexpected signal is troubling, but I don't know what the problem is.
./../src/hugs +q -w -pHugs: ffi/FileIO.hs < ffi/FileIO.input
The unexpected error seems to be caused by the fact that
"/tmp/test_write" is being opened, when this file doesn't exist
normally on Windows. This is a bug in the test.
./../src/hugs +q -w -pHugs: ffi/Sparc.hs < ffi/Sparc.input
I have no idea what is wrong.
./../src/ffihugs +q -w -pHugs: ffi/Callback.hs ffi/callback.c < nul
This test assumes a case-sensitive file system that can
distinguish between "Callback.c" and "callback.c." This test can be
fixed by renaming "Callback.hs" to "CallbackTest.hs" and renaming
callback.c to callback_c.c. Patch included, but you have to do
the renaming of the file yourself.
However, after getting it to build successfully, it still fails with
output "unexpected signal" and exit code 1, and I have no idea why.
./../src/hugs +q -w -pHugs: System libs/system1.hs < libs/system1.input
If I run this test directly it gives the expected output.
But, inside of "make check" it fails because MSYS's SHELL is "sh.exe"
instead of "sh." Patch included.
./../src/hugs +q -w -pHugs: Directory libs/dirTest.hs < libs/dirTest.input
This test fails, but I think it is simply because NTFS doesn't support
the same permission combinations as Unix/Linux. Either a Windows-specifc
version should be written, or the test should be skipped on Windows.
tests.patch
Description: Binary data
check.output1
Description: Binary data
_______________________________________________ Cvs-hugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/cvs-hugs
