Alain Miniussi wrote
I guess I need to remove some int arguments from the (save|load)_override methods of boost::mpi::packed_(i|o)archive classes ?
You are correct. It's easy to see the changes. If you do a diff on some other archive like binary or text in the serialization library you'll see that the dummy parameter used to emulate partial function template overload has been eliminated. And of course eliminate the #include boost/serialization/ptfo.hpp . That's all that is necessary. This simplifies code at the cost of eliminating support of borland 5x and mdvc 7.0 and below which is no longer considered necessary. Since these headers are considered implementation features of the serialization library it didn't occur to me that making these changes would break anything else. Sorry about that.
I am relatively new to that part of Boost.MPI so I cannot tell if these features should have been used in boost mpi in the first place.
These features were copied from the archive implementations included in the serialization library. Their function was to support compilers which are obsolete. For this reason they were eliminated from the serialization library and should be eliminated from MPI version as well. These changes did not cause any test failures in the serialization library nor require any changes in any tests to pass. One experiment would be to "resurrect" the ptfo.hpp file from github and re-run the tests. If the tests pass then we know that it's because ptfo.hpp was removed. Otherwise it would be due to some other change.
If you're interested in enhancing, or improving the MPI implementation as it regards serialization, you should let me know so I could acquaint myself with the MPI version and offer some suggestions. I've had some ideas in my head for years would simplify and expedite usage of the serialization library for object transmission over a stream but I've never spend any time on them as it didn't seem anyone had any interest.
I started doing some modifications that I will put on a branch on github. Right now, with those modifications the develop version of Boost.MPI compiles again with the develop version of serialization. But I still have some runtime failures so I'd like to fix those before going to github develop. The failure have to do with serialization of "complex" stl data structure (stl collections of non PODs). I suspect it has something to do with binary serialization optimisation (where non POD are considered POD). Removal of pfto support entails changing signatures of some save/load functions which could easily manifest itself in the problems you're having. Double check for save/load functions with "extra" arguments. Robert Ramey -- View this message in context: http://boost.2283326.n4.nabble.com/serialization-failing-MPI-build-tp4674375... Sent from the Boost - Dev mailing list archive at Nabble.com.