Closed andrew-hill closed 9 years ago
Apparently there's an API change from Boost 1.56 (compared to 1.55) for boost::property_tree
In comma, this affects name-value-convert.cpp line 95 where the xml_writer_settings are templated on char type.
Here's the changes from another project, which now supports both pre-1.56 and post-1.56 APIs. I'm not sure if there is a simpler way... https://github.com/PointCloudLibrary/pcl/pull/867/files
As a simple test for Boost 1.56+, the following change to line 95 resolves the compilation error replace this line:
static boost::property_tree::xml_parser::xml_writer_settings< char > xml_writer_settings;
with this line:
static boost::property_tree::xml_parser::xml_writer_settings< std::string> xml_writer_settings = boost::property_tree::xml_writer_make_settings< std::string >();
A portable solution, assuming you want pre-1.56 and post-1.56 compatibility would be more along the lines of the changes linked above, i.e. wrapped in #if (BOOST_VERSION >= 105600)
#if (BOOST_VERSION >= 105600)
@andrew-hill : thank you for spotting it, Andrew; your solution looks good, could you please implement it and push? thanks a lot!
Apparently there's an API change from Boost 1.56 (compared to 1.55) for boost::property_tree
In comma, this affects name-value-convert.cpp line 95 where the xml_writer_settings are templated on char type.
Here's the changes from another project, which now supports both pre-1.56 and post-1.56 APIs. I'm not sure if there is a simpler way... https://github.com/PointCloudLibrary/pcl/pull/867/files
As a simple test for Boost 1.56+, the following change to line 95 resolves the compilation error replace this line:
with this line:
A portable solution, assuming you want pre-1.56 and post-1.56 compatibility would be more along the lines of the changes linked above, i.e. wrapped in
#if (BOOST_VERSION >= 105600)