Boost logo

Boost :

Subject: Re: [boost] bug-sprint #2114, 2 comments
From: Juergen Hunold (juergen.hunold_at_[hidden])
Date: 2009-06-10 08:15:20

Hi Alexander,

On Wednesday 10 June 2009 14:03:43 Alexander Arhipenko wrote:
> On Wed, Jun 10, 2009 at 11:04 AM, Juergen
> Hunold<juergen.hunold_at_[hidden]> wrote:
> [snip]
> > That means "__attribute__((visibility("default")))", right ?

I've done some short experimenting and found some issues with
BOOST_SYMPOL_IMPORT expand to nothing in our code. It seems necessary to
declare some templated classes with 'visibility "default"' when they are
I'll have to do some more research on this.
(and I lost the start of the thread due to human error, so no quotes ;-))

> In response to above:
> I have written down 2 sample configuration files for the 'foo' library.

Yes, looks good.


> But, all these could be not enough for the sophisticated user.
> Assume, library 'bar' will use library 'foo' as an implementation detail
> and also will catch all the foo's exceptions. So, bar's maintainer doesn't
> want to re-export foo's stuff from his library.

This is the gcc case, right ? With msvc, you have to "re-export" the used
symbols anyway (by marking them "__dllimport". So why do you want to hide the
symbols with gcc ?

> I've attached minimal bbv2 project that reproduce the problem
> with uncaught exception. To eliminate it, you can do the following:
> a) Replace FOO_DECL with FOO_EXCEPTION_DECL in Error class declaration
> b) Uncomment ~Error() declaration (foo/error.hpp) and definition
> (foo/foo.cpp)

I'll take a look at it.
Please be patient...



* Dipl.-Math. Jürgen Hunold       ! Ingenieurgesellschaft für 
* voice: ++49 511 262926 57       ! Verkehrs- und Eisenbahnwesen mbH  
* fax  : ++49 511 262926 99       ! Lister Straße 15
* juergen.hunold_at_[hidden]        !
* Geschäftsführer:                ! Sitz des Unternehmens: Hannover
* Prof. Dr.-Ing. Thomas Siefer    ! Amtsgericht Hannover, HRB 56965
* PD Dr.-Ing. Alfons Radtke       !

Boost list run by bdawes at, gregod at, cpdaniel at, john at