gordon%stats.ucl.ac.uk@NSS.CS.UCL.AC.UK (Gordon Joly Statistics UCL) (03/12/89)
On a SUN-3/160, running SunOS 3.4, g++1.34 (made with gcc 1.34), "config.gcc sun3" for both, test10 of the test suite gives an error. % test10 five random ACG integers: 1525072166 1954057046 3406008937 226879594 4107049426 five random MLCG integers: 1341853672 83475514 936613571 888739672 2097844081 Binomial r1( 100, 0.50, &gen1) ... five samples: Failed assertion result.d < 1.0 && result.d >= 0 at line 77 of `../g++-include/RNG.h'. IOT trap This bug has also turned up in at least one user program. Gordon. Surface mail: Dr. G.C.Joly, Department of Statistical Science, University College London, Gower Street, LONDON WC1E 6BT, U.K. E-mail: | Tel: +44 1 387 7050 JANET (U.K. network) gordon@uk.ac.ucl.stats | extension 3636 (Arpa/Internet form: gordon@stats.ucl.ac.uk)| FAX: +44 1 387 8057 Relays: ARPA @nss.cs.ucl.ac.uk | EAN: @ean-relay.ac.uk | CSNET: %nss.cs.ucl.ac.uk@relay.cs.net | BITNET: %ukacrl.bitnet@cunyvm.cuny.edu, @ac.uk EARN: @ukacrl.bitnet, @AC.UK, @uk.ac.earn-relay By uucp/Usenet: ....!uunet!mcvax!ukc!stats.ucl.ac.uk!gordon
dl@ROCKY.OSWEGO.EDU (Doug Lea) (03/12/89)
On Sun3's, the file RNG.cc *must* be compiled with the -ffloat-store option. A comment in Dirk Grunwald's RNG.cc code explains why. My apologies for not mentioning this anywhere in the installation instructions. While I am at it, here are the other known bugs in libg++-1.34.0: 1. CursesWindow (test23) fails on Sun3's and Sun4's under X-windows, but not under terminal emulation or remote logins. I have not yet discovered why. 2. I incorrectly modified etc/Patmain.cc. Here are the diffs: R>diff -2rcN Patmain.cc~ Patmain.cc *** Patmain.cc~ Thu Mar 9 06:51:52 1989 --- Patmain.cc Fri Mar 10 06:39:50 1989 *************** *** 15,19 **** else { if ( ! freopen ( argv [ 1 ], "r", stdin ) ) { ! perror ( argv [ 0 ] ), return; } Patricia_Trie Trie; --- 15,19 ---- else { if ( ! freopen ( argv [ 1 ], "r", stdin ) ) { ! perror ( argv [ 0 ] ); return; } Patricia_Trie Trie; *************** *** 26,30 **** fclose ( stdin ); if ( ! freopen ( argv [ 2 ], "r", stdin ) ) { ! perror ( argv [ 0 ] ), return; } --- 26,30 ---- fclose ( stdin ); if ( ! freopen ( argv [ 2 ], "r", stdin ) ) { ! perror ( argv [ 0 ] ); return; } 3. etc/gperf/stderr.cc contains improper intitializations. Here are the diffs: R>diff -2rcN stderr.cc~ stderr.cc *** stderr.cc~ Fri Mar 3 06:11:38 1989 --- stderr.cc Sat Mar 11 12:36:27 1989 *************** *** 23,29 **** #include "stderr.h" ! Stderr::Stderr (void): Program_Name ("") { } ! Stderr::Stderr (char *Prog_Name): Program_Name (Prog_Name) { } void --- 23,29 ---- #include "stderr.h" ! Stderr::Stderr (void) { Program_Name = ""; } ! Stderr::Stderr (char *Prog_Name) { Program_Name = Prog_Name; } void