This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: V3 static data in classes vs AIX
- To: dje at watson dot ibm dot com
- Subject: Re: V3 static data in classes vs AIX
- From: Mark Mitchell <mark at codesourcery dot com>
- Date: Tue, 05 Jun 2001 09:30:09 -0700
- Cc: jason_merrill at redhat dot com, gdr at codesourcery dot com, bkoz at redhat dot com, libstdc++ at gcc dot gnu dot org
- Organization: CodeSourcery, LLC
- References: <jason_merrill@redhat.com><200106051511.LAA27330@makai.watson.ibm.com>
>>>>> "David" == David Edelsohn <dje@watson.ibm.com> writes:
David> I agree with Jason. I believe that the AIX linker
David> -G/-brtl options may combine symbols. Those options
David> re-write the AIX TOC at runtime, mimicing SVR4 behavior.
There are two semi-independent questions:
1. What to do to make AIX generate correct code?
2. What is the right user interface for GCC on systems that support
COMMON?
If -G solves 1, then that's good -- we will not generate manifestly
incorrect code.
I'm still distressed by the confuse-the-user-by-helping-them-sometimes
approach. That is, in my mind, woefully inconsistent. The change to
2 that I am suggesting, implicitly fixes 1 because it eliminates the
use of COMMON.
(BTW, analogy with xlC here is sort of pointless; xlC instantiates
templates in a totally different way, so the storage classes it uses
are likely different than the ones gcc uses.)
Anyhow, for 3.0, which is my definite current focus, we don't have to
finish the battle on 2, which is about user interface. Instead, we
just need to solve 1 -- and if -G does that, let's add it to the specs.
I'll certainly be happy to have solved the immediate correctness
problem.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com