From: John Maddock (john_at_[hidden])
Date: 2003-11-14 06:22:52
> First, let me make a correction to the file. Under the first paragraph of
> Supporting Windows Dlls, you have __declarspec(dllimport) in the last line
> instead of __declspec(dllimport).
> Secondly, regarding "Counter Argument #2" to the "Preventing Compiler ABI
> Clashes", it should be pointed out that if the boost non-library class is
> private to the library implementation, there is no problem. However if it
> not, there is a real problem as the counter-example points out.
> I think even non-library classes should have ABI requirements, enforced by
> using the necessary #pragmas when necessary. I know that many people will
> argue that the end user might want, for instance, their own alignment to
> prevail when using boost::shared_ptr, but doing this causes endless
> in the "Counter Argument #2" case unless one wants to specifically tell
> end-user that he must manually set a particular alignment wrapped around a
> particular header file. Ugh ! This will not only be something that the
> end-user might forget, if let's say his default alignment is different,
> also entails setting a wrapped alignment for headers included by that
> header, and the headaches caused by all this are endless, and just not
Personally I agree, but it's basically a case of convincing everyone else...
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk