Path: utzoo!utgpu!watmath!uunet!ginosko!gem.mps.ohio-state.edu!tut.cis.ohio-state.edu!MITVMA.MIT.EDU!TEX7%ICNUCEVM.CNUCE.CNR.IT From: TEX7%ICNUCEVM.CNUCE.CNR.IT@MITVMA.MIT.EDU (Stefano Diomedi) Newsgroups: gnu.utils.bug Subject: bug in make 3.55 Message-ID: <8909051131.AA02517@life.ai.mit.edu> Date: 5 Sep 89 11:32:04 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 44 X-Unparsable-Date: Tue, 05 Sep 89 13:28:22 SET Machine: DEC VAX Operating system: ULTRIX 3.0 1. File: load.c Function: load_average In addition to the patch already made from 3.54 the test on the lseek call has to change from if (lseek (kmem, offset, 0) < 0L) to if (lseek (kmem, offset, 0) == (long)-1) In my case the address of "_avenrun" (offset value) happens to be 2148358396 and the lseek calls returns it as a signed value (-2146608900). So the value is less than 0 but the lseek call didn't fail at all. It seems (Unix manuals, X/Open Portability Guide 3 [xpg3]) that -1 is the only value returned when lseek fails. 2. File: job.c The macro WCOREDUMP is not defined in (because it is not present in xpg3, Posix, I guess). So I added the right Ultrix definition when WTERMSIG is defined: #ifdef WTERMSIG #define WAIT_T int #define WCOREDUMP(x) (((union wait *)&(x))->w_coredump) #else .... Regards Stefano Diomedi Pisa - Italy