[C++-sig] Re: Multiple typeinfos causing failure of exception catches

David Abrahams dave at boost-consulting.com
Fri Jul 9 21:22:07 CEST 2004


"Niall Douglas" <s_sourceforge at nedprod.com> writes:

> On 9 Jul 2004 at 8:36, David Abrahams wrote:
>
>> There's a better fix that involves dealing differently with the way
>> the ELF loader resolves weak symbols.  You might ask Jason Merrill
>> (cc:'d here) about the idea - it was his.
>
> I'd imagine he'll get back to me on Monday. Was it to do with getting 
> the Linux ld.so to behave more like the Solaris one?

I know the solaris loader came up in the conversation, but I think
Jason had a very specific idea that isn't implemented anywhere yet.

>> > BTW, your problem with python having to load extension modules with
>> > RTDL_LOCAL rather than RTDL_GLOBAL goes away if you use my -
>> > fvisibility=hidden patch as no symbol clashes can happen.
>> 
>> I don't think so; you can still have symbol clashes if two extension
>> modules explicitly export the same names.
>
> True, but then why would they need exporting in a python extension? 

Because they're not self-contained; perhaps they need to interact
with other shared libs.

> AFAICS most extensions export a table to python of what they provide 
> plus a few init and deinit functions which I would have thought are 
> looked up via dlsym() and thus unaffected by clashes?

Right.

> I suppose if an extension was written using BPL and the extension 
> could also be dual used as an embedded library then you might have 
> issues. But you're still way ahead of how things stand now.

Agreed.

-- 
Dave Abrahams
Boost Consulting
http://www.boost-consulting.com




More information about the Cplusplus-sig mailing list