
Eric Niebler wrote:
Dmitry Goncharov wrote:
I ported mpl::string to sun c++ 5.9 (sunos_sparc) and made sure all tests in libs/mpl/test/string.cpp pass. Also verified that gcc-4.3.3 passes all tests on linux with the patch applied. Please, find the patch in the attachment.
Terrific, thanks. A few observations ... your change to libs/mpl/test/string.cpp looks spurious. Can you comment? Also, your change to string.hpp causes extra template instantiations for all platforms, instead of just for sun where it's needed. Can you put your change under a #ifdef BOOST_WORKAROUND? That would be ideal. (Also, using BOOST_WORKAROUND helps compiler devs find their bugs, but an even better way is to file them directly if you know how.)
This version uses BOOST_WORKAROUND. Please, have a look. Tested on sun c++ 5.9 and gcc4.3.3. The same modifications of libs/mpl/test/string.cpp. The patch adds #include <boost/mpl/empty.hpp> and #include <boost/mpl/if.hpp> to boost/mpl/string.hpp on all platforms. This can also be made only for sun. Do you think it's needed? BR, Dmitry