Raeburn@MIT.EDU (Ken Raeburn) (10/20/89)
(Environment: GCC 1.36 with patches, G++ 10/17 [since when has the version number meant much?], LIBG++ 10/02; configured for VAX running 4.3BSD.) If you have to rebuild `tests' after building libg++.a, make will think that tests is up to date (assuming some activity happened in tests/ before). (I assume .PHONY was intended to take care of this; it doesn't with the BSD-based make I'm using.) The BSD curses code wants to go off and find a terminal file descriptor; this could be pointed out in documentation. (I often build with "make foo >& logfile < /dev/null", so no tty file descriptor is available; Berkeley's code causes initsrc() to loop until it find one, or until it reaches some particular (but uninitialized!) value.) The checktests.diffs file seems to give misleading results for some tests, most notably those that use floating point values. (This may be due to differences between VAX floating point and IEEE or whatever expected.out was done with.) The Rational tests often come out with numbers that are as much as 32 times larger than those in expected.out. The Random tests have quite different results, but floating point values were used in a couple of places, so I'm assuming that's the cause here also. The output line from tFix for `abs(.2)' I don't understand -- mine looks reasonable (I guess): abs(.2) = 0.19998 [17] but the one in expected.out says abs(.2) = 0.19998 [8240] Where did 8240 come from??? Aside from that, all tests appear to have worked. (I haven't checked test0 or tCurses out yet.) The gperf makefile assumes that make defines $(MAKE), which is different from the way the rest of the tree is set up, and causes "make clean" to complain. -- Ken
Raeburn@MIT.EDU (Ken Raeburn) (10/20/89)
The Rational tests often come out with numbers that are as much as 32 times larger than those in expected.out. More precisely: The denominator is some multiple of that in expected.out, and the numerator is multiplied by the same factor, with some small number added. The ratio is approximately the same as in expected.out, not 32 times larger. -- Ken
dl@G.OSWEGO.EDU (Doug Lea) (10/20/89)
> The Rational tests often come out with numbers that are as much as 32 > times larger than those in expected.out. > > More precisely: The denominator is some multiple of that in > expected.out, and the numerator is multiplied by the same factor, with > some small number added. The ratio is approximately the same as in > expected.out, not 32 times larger. This is probably a machine precision difference. double<->Rational conversions attempt to use exactly as much precision as is used for doubles. This leads to odd-looking Rationals, that may be expected to vary across machines. If you send me your tRational results, I'll try to double check this. -Doug