Hello,
I cannot compile the boost/graph library 1.32.0 on a SUN machine using Sun
C++ 5.5.
I get the following error message :
boost_1_32_0/boost/graph/depth_first_search.hpp", line 377: Error: Default
arguments cannot be added in later declarations of the template function in
the same scope.
which does make sense since the compiler cannot decide which routine
depth_first_visit to use
if the second routine (line 371) has an extra template but the the extra
template has a default value.
So in boost/graph/depth_first_search.hpp, I simply deleted the default
argument :
template
void depth_first_visit
(const IncidenceGraph& g,
typename graph_traits<IncidenceGraph>::vertex_descriptor u,
DFSVisitor vis, ColorMap color, TerminatorFunc func = TerminatorFunc())
becomes
template
void depth_first_visit
(const IncidenceGraph& g,
typename graph_traits<IncidenceGraph>::vertex_descriptor u,
DFSVisitor vis, ColorMap color, TerminatorFunc func)
Unfortunately the compilation was afterwards not successful;
this time I got
"boost_1_32_0/boost/graph/named_function_params.hpp", line 500: Error:
Cannot return const
boost::bgl_named_params,
boost::graph_visitor_t, boost::no_property> from a function that should
return boost::detail::error_property_not_found.
"boost_1_32_0/boost/graph/depth_first_search.hpp", line 354: Where:
While instantiating "boost::get_param,
boost::no_property>(const
boost::bgl_named_params,
boost::graph_visitor_t, boost::no_property>&, boost::root_vertex_t)".
"boost_1_32_0/boost/graph/depth_first_search.hpp", line 354: Where:
Instantiated from non-template code.
"boost_1_32_0/boost/graph/depth_first_search.hpp", line 355: Error: Could
not find a match for boost::verticesboost::T(const
boost::adjacency_list).
big thanks for any help,
Laurent