This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: GCC version bikeshedding
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Joern Rennecke <joern dot rennecke at embecosm dot com>
- Cc: Richard Biener <richard dot guenther at gmail dot com>, Jonathan Wakely <jwakely dot gcc at gmail dot com>, Eric Botcazou <ebotcazou at libertysurf dot fr>, Ian Lance Taylor <iant at google dot com>, GCC Development <gcc at gcc dot gnu dot org>, Jason Merrill <jason at redhat dot com>
- Date: Wed, 6 Aug 2014 13:44:36 +0200
- Subject: Re: GCC version bikeshedding
- Authentication-results: sourceware.org; auth=none
- References: <20140806074223 dot GY7393 at tucnak dot redhat dot com> <CAFiYyc1+LTfbPF=nT3O4pA4ST6Z2X5FJ0ywMxL9bk3UsqwnV2w at mail dot gmail dot com> <20140806084803 dot GB7393 at tucnak dot redhat dot com> <CAFiYyc0+YgrRA-CheSFx5not6XadTWOa-mr_LWpX4sZ_gQMgdg at mail dot gmail dot com> <20140806090635 dot GD7393 at tucnak dot redhat dot com> <CAH6eHdSkX-kvXTN8ysKh38dWy1nUeQMnX6nGSm+sOdbSm7z1cw at mail dot gmail dot com> <CAFiYyc3fxDDX9TZeySaF8vMZqwb3ipwQs-vCmiOHK3Vdwe7uUg at mail dot gmail dot com> <CAH6eHdQtB4kNpvBWtFY0Eqyxi4JekEeLYw3Sc2RzO-qOcdeDkg at mail dot gmail dot com> <CAFiYyc0cxwM478wn54-V8Au4yX7MSmobsmk4Qc_Mjk3efogU+g at mail dot gmail dot com> <CAMqJFCqR4FhFdwinMCVK8tqBHitfWjzmW7BS3B5C+Agp6-g1YA at mail dot gmail dot com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Wed, Aug 06, 2014 at 12:33:42PM +0100, Joern Rennecke wrote:
> On 6 August 2014 11:31, Richard Biener <richard.guenther@gmail.com> wrote:
> > Ok, so the problematical case is
> >
> > struct X { std::string s; };
> > void foo (X&);
>
> Wouldn't it be even more troublesome with an application that dynloads
> dsos depending on user input.
> The install script might check if the dso with the right soname is present,
> but then you still get dynamic linker errors when the user tries to
> do something with the application, which could be an arbitrary time after
> the upgrade.
Now, if you do the same with libstdc++.so.7, you have exactly the same issue
(need to think what you do with SONAMEs of libraries built with C++), but
furthermore whenever you get both libstdc++.so.6 and libstdc++.so.7 loaded
into the same process, most probably nothing will work at all, there will be
no mangling differences between so.6 and so.7 symbols, etc.
Jakub