delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2012/09/01/15:02:03

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Recipient: djgpp AT delorie DOT com
Message-ID: <50425B86.8030700@iki.fi>
Date: Sat, 01 Sep 2012 22:01:26 +0300
From: Andris Pavenis <andris DOT pavenis AT iki DOT fi>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120828 Thunderbird/15.0
MIME-Version: 1.0
To: djgpp AT delorie DOT com
Subject: Re: gcc behaviour if djgpp.env is not available.
References: <201208302244 DOT 31877 DOT juan DOT guerrero AT gmx DOT de>
In-Reply-To: <201208302244.31877.juan.guerrero@gmx.de>
Reply-To: djgpp AT delorie DOT com

On 08/30/2012 11:44 PM, Juan Manuel Guerrero wrote:
> I do not know if this issue has already been discused but I have noticed
> that the DJGPP port of gcc crashes if it does not find djgpp.env.  If gcc
> needs to load djgpp.env and fails, would not it be better that it issues
> some kind of error message instead of crashing?
> For an user not familiar with DJGPP it would be hard to figure out
> what has gone wrong.
>
> The output below is produced by gcc471b on WinXP after having deleted
> djgpp.env.
>
>
> F:\x\XZ-50~1.4\_build.204\_build.tmp>gcc  1.c
> Exiting due to signal SIGSEGV
> General Protection Fault at eip=00001be2
> eax=0c720000 ebx=00000299 ecx=0b93d411 edx=3ac30000 esi=00010000 edi=0c730000
> ebp=00000158 esp=00302114 program=C:\DJGPP-2.04\BIN\GCC.EXE
> cs: sel=01a7  base=02990000  limit=3ac2ffff
> ds: sel=017f  base=00008aa0  limit=0000ffff
> es: sel=01af  base=02990000  limit=3ac2ffff
> fs: sel=017f  base=00008aa0  limit=0000ffff
> gs: sel=01bf  base=00000000  limit=0010ffff
> ss: sel=01af  base=02990000  limit=3ac2ffff
> App stack: [00302470..00182470]  Exceptn stack: [00182390..00180450]
>
> Call frame traceback EIPs:
>    0x00001be2
>

Just rebuild gcc-4.7.1 using DJGPP v204pre (so the same libc as in my last builds of gcc-4.8 
snapshots). Tests shows that:
- gcc 4.7.1 and gcc-4.8.0 20120722 crashes when DJGPP is not defined
- gcc-4.8.0 20120825 does not crash

The most significant difference which I can suspect is merging cxx-conversion
branch into GCC trunk (http://gcc.gnu.org/ml/gcc/2012-08/msg00015.html). As
the result the latest SVN snapshot (I really used GIT not SVN -
http://gcc.gnu.org/wiki/GitMirror) has been built using C++ compiler
instead of C compiler as in earlier versions.

Andris

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019