This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: New AIX libstdc++ testsuite regression20_util/allocator_members
- From: Jason Merrill <jason at redhat dot com>
- To: David Edelsohn <dje at watson dot ibm dot com>
- Cc: bkoz at redhat dot com, Mark Mitchell <mark at codesourcery dot com>,libstdc++ at gcc dot gnu dot org
- Date: Wed, 24 Apr 2002 00:45:51 +0100
- Subject: Re: New AIX libstdc++ testsuite regression20_util/allocator_members
- References: <200204232306.TAA26048@makai.watson.ibm.com>
>>>>> "David" == David Edelsohn <dje@watson.ibm.com> writes:
>>>>> Jason Merrill writes:
>>> The only thing I can think of if hacking up collect2 so that it
>>> explicitly exports the mangled new and delete if it sees those symbol
>>> names in the main application. But this just becomes an ever-increasing
>>> list of useful mangled names to possibly export.
Jason> It would be simpler to just export everything, wouldn't it?
> One also needs to invoke the "runtime linking" feature of the AIX
> linker for the exported function to override the library. This is not the
> default for G++.
For correct C++ semantics, it needs to be. How does the IBM compiler deal
with overriding op new?
> My concern is how much to do things automatically versus how much
> to allow the user to have control. Most people using GCC probably assume
> SVR4-like semantics, but some people do develop code for the AIX model.
> Automatically exporting all symbols and invoking runtime linking behavior
> can cause problems in the opposite direction.
> Unfortunately, there is no "right" answer.
Perhaps the right answer is to be SVR4-like with the g++ driver, and
AIX-like with the gcc driver.
Jason