Date: Sat, 28 Jul 2001 06:27:54 -0400 Message-Id: <200107281027.GAA03194@delorie.com> X-Authentication-Warning: delorie.com: eliz set sender to eliz AT delorie DOT com using -f From: Eli Zaretskii To: acottrel AT ihug DOT com DOT au CC: sandmann AT clio DOT rice DOT edu, djgpp-workers AT delorie DOT com In-reply-to: <006501c11742$a3fad650$0a02a8c0@acceleron> (acottrel@ihug.com.au) Subject: Re: Make 3.791 on Windows 2000 test References: <10107280530 DOT AA16684 AT clio DOT rice DOT edu> <7458-Sat28Jul2001095430+0300-eliz AT is DOT elta DOT co DOT il> <006501c11742$a3fad650$0a02a8c0 AT acceleron> Reply-To: djgpp-workers AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp-workers AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > From: "Andrew Cottrell" > Date: Sat, 28 Jul 2001 18:52:31 +1000 > > I modified make's main.c and added the following line, but the crash still > occured and I couldn't see any extra debug info or extra info in the crash > outout attached below. I also just added a printf after I set the > malloc_debug level so I can see how many time make is called re-cursively. > This was added at line number 774 in make's main.c befiore the main function > along with a #inlcude . > > int _crt0_startup_flags = _CRT0_FLAG_UNIX_SBRK; > > This is the output with the crto startup flag set as above and the maloc > debug level set to 4. Yet a different crash position. Have I set the crt0 > startup flag correctly? Yes, I think so. Charles? > Exiting due to signal SIGSEGV > General Protection Fault at eip=00178fc8 > eax=ffa90000 ebx=ffa90000 ecx=000001d5 edx=ffaa0000 esi=ffa90ff8 edi=00000fe8 > ebp=003dc8cc esp=003dc8a4 program=d:\dj204\lib\gcc-lib\djgpp\2.953\cc1.exe > cs: sel=095f base=01d50000 limit=7e29ffff > ds: sel=0967 base=01d50000 limit=7e29ffff > es: sel=0967 base=01d50000 limit=7e29ffff > fs: sel=0937 base=0000f100 limit=0000ffff > gs: sel=0977 base=00000000 limit=0010ffff > ss: sel=0967 base=01d50000 limit=7e29ffff > App stack: [003e0000..00260000] Exceptn stack: [001a8234..001a62f4] > > Call frame traceback EIPs: > 0x00178fc8 __doserrno+1259888 > 0x00007f5b _func_if+303, line 1119 of function.c Note that now it's cc1 which crashes, not Make. So maybe Charles is right, and Unixy sbrk is the solution. Hmm... Maybe try building GCC with Unixy sbrk and se if that helps (you will have to do that for both gcc.exe and cc1.exe). Still, I'd like to try to find the problem in `sbrk' with the default algorithm. It's possible we don't handle address wrap-around correctly.