public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Daniel Jacobowitz <drow@false.org>
To: Mike Hearn <mike@plan99.net>
Cc: gcc@gcc.gnu.org
Subject: Re: Symbol versions for inlined symbols
Date: Sun, 31 Jul 2005 15:34:00 -0000	[thread overview]
Message-ID: <20050731153410.GA28517@nevyn.them.org> (raw)
In-Reply-To: <pan.2005.07.31.14.53.41.42156@plan99.net>

On Sun, Jul 31, 2005 at 03:53:42PM +0100, Mike Hearn wrote:
> On Sun, 31 Jul 2005 00:57:49 -0400, Daniel Jacobowitz wrote:
> > You may wish to read the proceedings from this year's GCC summit, where
> > another solution was presented by some gentlemen from Intel.  For various
> > reasons, symbol versioning is not a useful solution to this problem.
> 
> I hadn't seen that, thanks. It's an interesting approach but a bit
> confusing to somebody like me who doesn't use C++ very often: it sounded
> from their writeup like you'd have to modify application code, and then in
> other parts it sounded like actually only the libstdc++ headers would need
> to be modified and apps would do the right thing transparently.

The latter is the whole point.

> From my perspective the most convenient solution would be a way to modify
> ELF symbol scoping (which is what symbol versioning does, in a complicated
> sort of way). Instead of starting lookup for a symbol in libC from app,
> going on through libstdc++.so.5, libA, libB, libC, libstdc++.so.6, libD:
> 
> app
>  libstdc++.so.5
>  libA,
>  libB,
>  libC,
>    libstdc++.so.6
>    libD

You've completely missed the problem here, I'm afraid.  You can't use
anything like symbol scoping to do this, because the generated symbols
will end up in the application and in libC.  Besides, what if libC ends
up being a static library using libstdc++.so.5 and you want to rebuild
app?

Solving this little bit of the problem just isn't worth it.

-- 
Daniel Jacobowitz
CodeSourcery, LLC

  reply	other threads:[~2005-07-31 15:34 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-07-30 23:00 Mike Hearn
2005-07-31  4:57 ` Daniel Jacobowitz
2005-07-31 13:52   ` Mike Hearn
2005-07-31 15:34     ` Daniel Jacobowitz [this message]
2005-07-31  6:04 dank

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050731153410.GA28517@nevyn.them.org \
    --to=drow@false.org \
    --cc=gcc@gcc.gnu.org \
    --cc=mike@plan99.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).