This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcc packaging bug?


On Nov  4 06:24, JonY wrote:
> On 11/4/2014 06:11, Yaakov Selkowitz wrote:
> > On 2014-11-03 16:04, JonY wrote:
> >> On 11/4/2014 05:46, Ken Brown wrote:
> >>> The setup.hint files for gcc and its subpackages now say
> >>>
> >>> curr: 4.8.3-2
> >>> prev: 4.8.3-3
> >>> test: 4.9.2-1
> >>>
> >>> I assume this is a typo; it causes everyone who is not installing the
> >>> test release to get downgraded from 4.8.3-3 to 4.8.3-2.
> >>
> >> No, this is deliberate, 4.8.3-3 is bugged, it could not build later
> >> versions of gcc.

That wasn't what I meant on IRC.  I thought we keep 4.8.3-3 while you're
looking into 4.8.3-4.  Especially given that this problem only occurs on
64 bit, but not on 32 bit, and 1.7.33 has a workaround for this problem.
4.8.3-2 is built without cxa_atexit support at all and thus the
applications built with it are potentially missing functionality.  The
potential crash can easily be "fixed" by updating Cygwin to the test
relase.

> > How so?
> 
> As explained in the other email, it made failed link test return $? 0
> anyway. This broke the stage 1 libgcc configure tests.
> 
> Reverting to an older version of gcc and then using it to build 4.9.2-1
> succeeded. I also used 4.9.2-1 to build a copy of itself as test, seems
> like it works. The only real change was changing atexit use to
> __cxa_atexit in libgcc.
> 
> Corinna mentioned some problems with gcc misoptimizing atexit over IRC.

It's not really misoptimizing.  It's more a problem how atexit works in
Cygwin, combined with GCCs tail call optimization.  atexit tries to
figure out the DSO which called it from the return address on the stack.
GCCs tail call optimization eliminates the return address of the caller
and thus the return address is not the one of the caller, but of the
caller's caller in atexit.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Attachment: pgpzCMtXfy6qU.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]