This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Segmentation fault building libg++ without named returns
- To: manfred dot h at gmx dot net
- Subject: Re: Segmentation fault building libg++ without named returns
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Date: Sat, 9 Sep 2000 18:06:51 -0400 (EDT)
- Cc: gcc-bugs at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
> Thanks for the patch you sent with your previous email; I observed the
> same failures when Mark installed his patch to warn about using named
> return values. I took a differend approach than you, i.e. instead of
> removing the code completely, I used the opposite logic with a flag
> _G_USE_NRV as opposed to the former _G_NO_NRV; I've attached that
> patch to this email.
I tend to think the code should be removed. There were essentially two
sets with the "same" code. However, the unused branch which didn't use
named returns had rotted a bit. Apparently, `and', `or' and `xor' are
c++ diagraphs and can't be used.
> Regarding the missing weak symbols, I'm pretty much at a loss;
> building Fix.cc and Rational.cc doesn't generate all required weak
> symbols as it did before; even worse, using a reduced test case
> doesn't fail to generate those symbols... I'll dig further and keep
> you informed.
I don't have any time this weekend to work on it but I think a first
step would be to dump the assembly code for Fix.cc and see what is
happening with respect to the week definitions. Then, looking at the
rtl may help to pinpoint where things are going wrong. It's a fairly
recent change to the compiler that has caused the problem.
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)