
I'm focused on getting past this current problem. And I think that implementing this suggestion is the only practical way to do it. I realize that this is a pain but on the upside, it would make a huge improvement to the mpi_archive at quite a small investment of effort.
I don't see how we can rewrite the archive class at this late stage... FYI: simply changing BOOST_ARCHIVE_STRONG_TYPEDEF to: #define BOOST_ARCHIVE_STRONG_TYPEDEF(T, D) \ class D : public T { \ public: \ explicit D(const T t) : T(t){} \ D() : T() {} \ }; \ /**/ is sufficient to get MPI compiling with sun's compiler on Linux (this is on Trunk... I assume that both libraries have unmerged fixes awaiting for the release branch... as that looks hopelessly broken at present?). I still haven't been able to run MPI's regression tests though due to linker invocation errors: sun.link.dll /home/john/bin/boost/bin.v2/libs/mpi/build/sun-12.1/debug/stdlib-sun-stlport/threading-multi/libboost_mpi.so.1.44.0 CC: Warning: Option -Wl,--export-dynamic passed to ld, if ld is invoked, ignored otherwise /home/john/SunStudio/sunstudio12.1/prod/lib/ld: unrecognized option '-Wl,--export-dynamic' /home/john/SunStudio/sunstudio12.1/prod/lib/ld: use the --help option for usage information But maybe this gives us a way forward for *this* release? Perhaps with the proviso that Boost.Serialization is allowed to move forward and make breaking changes to it's implementation for the next release? Just my 2c worth... John.