public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/52188] New: [4.7 regression] IPA-CP change broke libstdc++ symbol versioning on Solaris
@ 2012-02-09 18:30 ro at gcc dot gnu.org
  2012-02-09 18:32 ` [Bug tree-optimization/52188] " ro at gcc dot gnu.org
                   ` (16 more replies)
  0 siblings, 17 replies; 18+ messages in thread
From: ro at gcc dot gnu.org @ 2012-02-09 18:30 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52188

             Bug #: 52188
           Summary: [4.7 regression] IPA-CP change broke libstdc++ symbol
                    versioning on Solaris
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: ro@gcc.gnu.org
                CC: jamborm@gcc.gnu.org, paolo.carlini@oracle.com
              Host: *-*-solaris2*
            Target: *-*-solaris2.*
             Build: *-*-solaris2.*


As already discussed to some length in

  http://gcc.gnu.org/ml/gcc-patches/2012-01/msg01163.html

the following patch

2011-07-18  Martin Jambor  <mjambor@suse.cz>

        * ipa-prop.h: Include alloc-pool.h, all sorts of updates to general
        comments.
        (ipcp_values_pool): Declare.
        (ipcp_sources_pool): Likewise.
[...]

caused libstdc++.so symbol versioning to be broken on Solaris.  Before the
patch,
when compiling locale-const.cc only contains references and definitions of

_ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv.constprop.36

After the patch, the same source has references to

_ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv

The latter is matched by the linker map and exported at version GLIBCXX_3.4.15,
which is effectively closed with the release of gcc 4.6 where the symbol wasn't
present.

To avoid breaking symbol versioning on Solaris, the question is what to do
here:
we obviously cannot export it at 3.4.15, but could instead export it at
3.4.17 *on Solaris* instead.  Before going that route, I need to make certain
that this isn't just a code generation accident and the symbol can vanish again
later: the exported interface of a shared object *must not* depend on the 
vagaries of code generation changes.

Martin?


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2012-02-27 14:09 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-02-09 18:30 [Bug tree-optimization/52188] New: [4.7 regression] IPA-CP change broke libstdc++ symbol versioning on Solaris ro at gcc dot gnu.org
2012-02-09 18:32 ` [Bug tree-optimization/52188] " ro at gcc dot gnu.org
2012-02-09 18:33 ` ro at gcc dot gnu.org
2012-02-09 18:34 ` ro at gcc dot gnu.org
2012-02-09 18:34 ` ro at gcc dot gnu.org
2012-02-10 10:25 ` ro at CeBiTec dot Uni-Bielefeld.DE
2012-02-10 11:24 ` rguenth at gcc dot gnu.org
2012-02-10 11:32 ` rguenth at gcc dot gnu.org
2012-02-10 12:31 ` jakub at gcc dot gnu.org
2012-02-16 16:10 ` jamborm at gcc dot gnu.org
2012-02-16 20:06 ` [Bug libstdc++/52188] " ro at gcc dot gnu.org
2012-02-16 20:20 ` ro at CeBiTec dot Uni-Bielefeld.DE
2012-02-16 20:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
2012-02-16 20:47 ` ro at CeBiTec dot Uni-Bielefeld.DE
2012-02-20 11:46 ` rguenth at gcc dot gnu.org
2012-02-20 13:25 ` jamborm at gcc dot gnu.org
2012-02-27 13:55 ` ro at gcc dot gnu.org
2012-02-27 14:13 ` ro at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).