__cxa_atexit prototype

Jim Dehnert dehnert at baalbek.engr.sgi.com
Fri Dec 17 23:39:59 UTC 1999


> From: Martin von Loewis <loewis at informatik.hu-berlin.de>
> 
> > The generic ABI has been modified (by the IA-64 ABI group) to add an
> > "export class" to symbols.  One of the possible settings of the export
> > class is "protected," which means that references from within the
> > executable being linked are linked to the copy defined in that
> > executable, and not subject to preemption by a symbol from another
> > DSO.
> 
> Sounds very good. I could not find a reference to the new gABI on the 
> you C++ ABI pages; is that available to the public?

Not yet, I think.  I have copied the symbol visibility specification to
my web site, and you can get it at:

	http://reality.sgi.com/dehnert_engr/abi/symbol-visibility.html

SCO:  Is this OK?  I extracted just the st_other visibility material,
and left your copyright notice at the bottom.  If that's still a
problem, I can (a) remove it entirely, (b) convert it to PDF with
our usual password, or (c) include the entire section.

> > That is, it is the -Bsymbolic effect on a per-symbol basis, and can be
> > set by the compiler.
> 
> Also, is this a property of the definition, or of the reference?

Either.  The most restrictive visibility constraint is propagated.

> Ideally, linkage should fail if __dso_handle is not defined within the
> DSO.

Yes, it does.

> I understand that can be also achieved by all definitions of
> __dso_handle being hidden, but 'protected undefined' or similar would
> be even better, IMO.

Undefined symbols can be protected.

-	    Jim Dehnert		dehnert at sgi.com
				(650)933-4272




More information about the cxx-abi-dev mailing list