On Aug 8, 2005, at 11:09 AM, Robert Ramey wrote:
Richard Jennings wrote:
I'm finding an apparent dependency between some non-serialization headers and the use of BOOST_CLASS_EXPORT.
If boost/optional.hpp or boost/format.hpp or boost/bind.hpp are included before BOOST_CLASS_EXPORT is used then I get the compilation error:
I've tracked this down to a borland compiler issue. I've made the fix on my local system but don't know where to check it (RC or Dev) yet. I don't know if this fix will make it into the 1.33 release but here it is:
at export.hpp line 204 replace:
typedef BOOST_DEDUCED_TYPENAME mpl::eval_if< is_abstract<T>, mpl::identity<abstract>, mpl::identity
::type type; return std::pair
( type::invoke(), & guid_initializer<T>::instance ); with
typedef BOOST_DEDUCED_TYPENAME mpl::eval_if< is_abstract<T>, mpl::identity<abstract>, mpl::identity
::type typex; return std::pair
( typex::invoke(), & guid_initializer<T>::instance ); Note the new "x" in "typex"
This looks totally harmless. Once you've tested it locally, go ahead and check it into RC_1_33_0 and we'll pick it up when I roll the final release. Doug