Sender: nate AT cartsys DOT com Message-ID: <3783E2C9.951F6654@cartsys.com> Date: Wed, 07 Jul 1999 16:29:13 -0700 From: Nate Eldredge X-Mailer: Mozilla 4.08 [en] (X11; I; Linux 2.2.10 i586) MIME-Version: 1.0 To: djgpp-workers AT delorie DOT com Subject: Re: gcc-crash - and a possible solution References: <9907061440 DOT AA15007 AT clio DOT rice DOT edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Reply-To: djgpp-workers AT delorie DOT com Charles Sandmann wrote: > > > If you mean two DOS boxes with *any* DJGPP programs, not necessarily GCC, > > then I always do that. On my office machine, running Windows 95, there's > > always one DOS box with Emacs, another with Info, and I use two other for > > command-line tasks, including compiling programs. I never had any > > crashes in CC1 like what you see. > > To get the 3.9Gb addresses you must exit an application run earlier (so it > frees it's memory which is typically lower addresses) and then have an > application still running allocate more new memory. > > The sorts of things that broke some applications: > > 0-1Mb space, then sbrk returns 3.9Gb block (broke signed/unsigned) > 0-1Mb space, sbrk returns 3.9Gb address, then sbrk returns 1Mb address > (this broke some assumptions in some code about sbrk always > increasing) > > It may be the second case which is biting malloc and/or CC1. Maybe it would be interesting to sadistically patch CWSDPMI to return blocks all over the address space. This would make it easier to reproduce such problems (though I have no idea how easy it would be to implement). Or can it be done in sbrk? -- Nate Eldredge nate AT cartsys DOT com