On 10/28/16 6:19 AM, alainm wrote:
Hi Robert,
My build is currently failing on master due to the following friend declaration in array.hpp: [...] public: // note: I would like to make the copy constructor private but this breaks // make_array. So I try to make make_array a friend - but that doesn't // build. Need a C++ guru to explain this! template<class S> friend const boost::serialization::array_wrapper<T> make_array( T* t, S s); [...] actual definition:
template
inline const array_wrapper< T > make_array( T* t, S s){ const array_wrapper< T > a(t, s); return a; } the problem is that the actual template definition takes two template parameters. Has a result, the friend declaration introduces a new template that will be missing at link time.
I'd like to have it fixed for the upcomming release so that we could merge in a long overdue update of the MPI lib. The fix seems kind of trivial: https://github.com/boostorg/serialization/pull/46
I also have an issue with the selection criteria for emplace_hint which fails (at least) on intel C++/CentOS 6.5: https://github.com/boostorg/serialization/pull/47
These are both fixed in develop and master. I update the code on my machine and checked it in sometime ago rather than doing the pr merge.
Regards
Alain