This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Patches for egcs-971016 on AIX
- To: David Edelsohn <dje at watson dot ibm dot com>
- Subject: Re: Patches for egcs-971016 on AIX
- From: Andrey Slepuhin <pooh at msu dot ru>
- Date: Thu, 23 Oct 1997 02:50:30 +0300
- CC: egcs at cygnus dot com
- Organization: Moscow State University
- References: <9710222223.AA36238@rios1.watson.ibm.com>
- Reply-To: pooh at msu dot ru
David Edelsohn wrote:
> >>>>> Andrey Slepuhin writes:
> Andrey> Sorry, I never thought about such possibility. What about additional
> Andrey> linker flag to disable automatic exports?>
> Should exporting all global symbols be enabled by default or
> disabled by default? The option can toggle either way.
I prefer variant with symbols exported by default - this should cover most
cases.
> Andrey> And finally, what about
> Andrey> __eh_* symbols? They are global in *every* object file. If I create
> Andrey> a shared object from several object files, from which one these symbols
> Andrey> will be exported? Moreover, I will receive warnings when linking *any*
> Andrey> program, because these symbols are exported in libstdc++. Who can
> Andrey> imagine the situation when these symbols are really need to be exported?
> Andrey> So, I think I should exclude them from export list until I see such
> Andrey> situation.
>
> We need more input from Mike Stump and Joe Buck and others
> involved in the C++ exception handling to understand how these symbols are
> used, especially in the AIX environment, and then determine a template or
> regex for those that need to be exported. If all global symbols are
> exported, isn't this moot, or are you going to export all symbols *except*
> those which may generate duplicate warnings? The latter is wrong because
> most of those duplicate symbols specifically have a common name to be
> accessed by programmers to explicitly invoke ctors/dtors in a
> runtime-loaded library, for example.
I want to export all global symbols except those which may generate duplicate
warnings *and* never should be referenced outside the shared object. I think
this is correct. It would be nice if somebody can give precise description
of such symbols.
Andrey.