
Robert Ramey wrote:
Damn !!! - I made this change to address a problem whereby including just one header - version.hpp - failed for lack of basic traits. After making the changes, I restest the whole serialization libray - carpet bombing mode with no new problems - then I checked it in.
VC6 has problems with integer template arguments, but MPL has a nice workaround. A while back, Aleksey Gurtovoy wrote:
non-type integer template parameters are generally "unsafe" on MSVC 6.x:
namespace std { template< typename Char > struct string; }
void foo(std::string<char>);
template< int C > struct arg; // ICE here
MPL avoids the problem internally by using the following workaround:
#include <boost/mpl/aux_/nttp_decl.hpp>
...
template< BOOST_MPL_AUX_NTTP_DECL(int, C) > struct arg; // OK