Opened 9 years ago

Closed 8 years ago

#1062 closed defect (fixed)

make check on windows: assertion failed: (equal? 1.0 (numerator 0.0))

Reported by: Mario Domenech Goulart Owned by:
Priority: major Milestone: 4.9.0
Component: core libraries Version: 4.8.x
Keywords: windows Cc:
Estimated difficulty:

Description

======================================== library tests ...

Error: assertion failed: (equal? 1.0 (numerator 0.0))

	Call history:

	<syntax>	  (##core#undefined)
	<syntax>	  (##sys#error "assertion failed" (##core#quote (equal? +inf.0 (denominator 0.0))))
	<syntax>	  (##core#quote (equal? +inf.0 (denominator 0.0)))
	<eval>	  (equal? +inf.0 (denominator 0.0))
	<eval>	  (denominator 0.0)
	<syntax>	  (assert (equal? 1.0 (numerator 0.0)))
	<syntax>	  (##core#if (##core#check (equal? 1.0 (numerator 0.0))) (##core#undefined) (##sys#error "assertion fa...
	<syntax>	  (##core#check (equal? 1.0 (numerator 0.0)))
	<syntax>	  (equal? 1.0 (numerator 0.0))
	<syntax>	  (numerator 0.0)
	<syntax>	  (##core#undefined)
	<syntax>	  (##sys#error "assertion failed" (##core#quote (equal? 1.0 (numerator 0.0))))
	<syntax>	  (##core#quote (equal? 1.0 (numerator 0.0)))
	<eval>	  (equal? 1.0 (numerator 0.0))
	<eval>	  (numerator 0.0)
	<eval>	  (##sys#error "assertion failed" (##core#quote (equal? 1.0 (numerator 0.0))))	<--
make[1]: *** [check] Error 70
make[1]: Leaving directory `c:/src/chicken-core'
make: *** [check] Error 2
(c) 2008-2013, The Chicken Team
(c) 2000-2007, Felix L. Winkelmann
Version 4.8.3 (rev b663e07)
windows-mingw32-x86 [ manyargs dload ptables ]
compiled 2013-11-09 on foobar (MINGW32_NT-5.1)

Change History (6)

comment:1 Changed 9 years ago by sjamaan

This seems to be caused by a bug in MingW's fpclassify():

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56404
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56397

So far I haven't found anything in the mingw bug database relating to this

comment:2 Changed 9 years ago by sjamaan

comment:3 Changed 9 years ago by sjamaan

If we fix this, we should probably restore the commented-out test as well.

comment:4 Changed 9 years ago by sjamaan

Bug also seems to exist in mingw-w64 (which is apparently the maintained version of mingw)

comment:6 Changed 8 years ago by sjamaan

Resolution: fixed
Status: newclosed

"fixed" by disabling the tests in changeset c368462. Properly trying to fix all broken systems is a rabbit-hole that goes too deep; for example iOS even sets a hardware flag on the FPU to treat denormalised floating-point numbers as zero. There may be more OS/CPU combinations that do similarly fubar things. Our industry's madness knows no limits.

Note: See TracTickets for help on using tickets.