Boost logo

Boost :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-08-24 01:45:44


Luke Elliott wrote:

>
> (BTW - I just used program_options as an example as that's what I was
> looking at at the time...)
>
> I don't have access to VC++ right now so this is from memory, but there
> are (at least) 2 cases where it raises a warning:
>
> class MY_LIB_DECL my_class : public some_base
> {
> my_class();
> };
>
> if some_base isn't a declspeced class then you get "warning non
> dll-interface class used as based for dll-interface class".

I believe this sometime happen when inheriting boost::noncopyable, that has
no method to begin with, right? Then it's indeed poor compiler diagnostic,
and we probably can add declspec, but I don't yet understand when it should
be dllexport and when dllimport :-/

> class MY_LIB_DECL my_class
> {
> my_class();
>
> std::string m_string;
> };

Does this happen with any boost library?

> However, the warnings can be removed by exporting only members which
> truly need to be exported - I was just curious as to why it isn't done
> in boost (possibly GCC issues?).

Truly, have no idea if GCC allows visibility attribute on methods.

- Volodya


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk