*BSD News Article 11047


Return to BSD News archive

Received: by minnie.vk1xwt.ampr.org with NNTP
	id AA1196 ; Tue, 23 Feb 93 14:29:43 EST
Path: sserve!manuel.anu.edu.au!munnari.oz.au!uunet!stanford.edu!agate!apple!kaleida.com!conklin
From: conklin@kaleida.com (J.T. Conklin)
Newsgroups: comp.unix.bsd
Subject: Re: problem compiling distribution
Date: 11 Feb 93 10:09:44
Organization: Kaleida Labs, Inc., Mountain View, CA
Lines: 42
Message-ID: <CONKLIN.93Feb11100944@ngai.kaleida.com>
References: <1993Feb2.152035.2316@sbcs.sunysb.edu> <CGD.93Feb2084222@eden.CS.Berkeley.EDU>
Reply-To: conklin@kaleida.com
NNTP-Posting-Host: ngai.kaleida.com

Peter da Silva asked me to post this for him.

	--jtc


In article <CGD.93Feb2084222@eden.CS.Berkeley.EDU> cgd@eden.CS.Berkeley.EDU (Chris G. Demetriou) writes:
> on ref.tfs.com, and every other machine i've got access to,
> the compile dies w/ the signal 6 thing...

OK, I found a machine that has this problem. GCC has REALLY CRAPPY ERROR
HANDLING. It just calls abort() and assumes you can GDB it. Phphpht. I put
a patch in cc1/config/xm_i386.h to dump __FILE__ and __LINE__ (habit, easier
than getting gdb fixed on a system with a broken gcc, no?) and the error is
in toplev.c line 903. It's a non-handled floating point exception.

It's breaking on 486en, working on 386en.

The debugging patch is (approx)

	cc1/config/xm_i386.h

	char abort_kludge_buf[512];
	#define abort() \
		(sprintf(abort_kludge_buf, "abort() in %s:%d\n", \
			__FILE__, __LINE__), \
		 write(2, abort_kludge_buf, strlen(abort_kludge_buf)), \
		 signal(getpid(),6))

I actually put this in a separate file and linked gcc/cc1/obj/config.h
to that instead of xm_i386.h

-- 
Peter da Silva.  <peter@sugar.neosoft.com>.
 `-_-'   Oletko halannut suttasi tdnddn?
  'U`    
Tarjoilija, tdmd ateria eldd vield.

--
J.T. Conklin <jtc@wimsey.com>    | Your source for floppy distributions
    61 Crestwood Drive #18       |    of the 386BSD OS and binaries
    Daly City, CA 94015          | Send e-mail for complete product list
				 +---------------------------------------