This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [v3] Regenerate Solaris 2 baselines for GCC 4.6.0 release


Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> writes:

> I think we agreed that it would be useful to regenerate the Solaris 2
> libstdc++ baselines close to the GCC 4.6.0 release, especially given
> that symbol versioning on Solaris appears in 4.6.0 for the first time
> and several symbols have been added to the libstdc++.so ABI since the
> last update.
>
> This patch does exactly that.  It is based on make new-abi-baseline
> output across all of Solaris 8 to 11,  both SPARC and x86.  I'm
> currently re-running bootstraps on all of them on both mainline and the
> 4.6 branch.
[...]
> Ok for both if the bootstraps pass?

While 4.6 bootstrap has completed without regressions on Solaris 10 and
11/x86 and Solaris 10/SPARC, mainline bootstrap is broken by Benjamin's
recent patch

2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
[...]
	* libsupc++/nested_exception.cc: New. Add dtor for nested_exception.
	* libsupc++/nested_exception.h: Adjust.
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
	* config/abi/pre/gnu.ver: Add new exports.

 when using the Sun linker:

ld: fatal: libstdc++-symbols.ver-sun: 5130: symbol 'typeinfo for std::nested_exception' is already defined in file: libstdc++-symbols.ver-sun: symbol version conflict
ld: fatal: libstdc++-symbols.ver-sun: 5132: symbol 'typeinfo name for std::nested_exception' is already defined in file: libstdc++-symbols.ver-sun: symbol version conflict
ld: fatal: libstdc++-symbols.ver-sun: 5134: symbol 'vtable for std::nested_exception' is already defined in file: libstdc++-symbols.ver-sun: symbol version conflict
collect2: ld returned 1 exit status

The lines in question are

    ##_ZTISt16nested_exception (glob)
    _ZTISt16nested_exception;
    ##_ZTSSt16nested_exception (glob)
    _ZTSSt16nested_exception;
    ##_ZTVSt16nested_exception (glob)
    _ZTVSt16nested_exception;

in CXXABI_1.3.5, but the same symbols are also matched by

    ##_ZTISt[0-9][0-9][m-q]* (glob)
    ##_ZTSSt[0-9][0-9][m-q]* (glob)
    ##_ZTVSt[0-9][0-9][m-q]* (glob)

in GLIBCXX_3.4.  I fear that I need to update contrib/make_sunver.pl to
handle this, but would need to know the exact semantics of such a
version script first.

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]