id summary reporter owner description type status milestone component version severity resolution keywords cc 6647 BGL strong_components do not compile on MSVC 8 bbias@… Jeremiah Willcock "Since boost 1.49.0 the following code does not compile anymore on MSVC 8. {{{ #include #include #include #include int main(int, char*[]) { using namespace boost; adjacency_list<> G; std::vector component(num_vertices(G)); int num = strong_components(G, &component[0]); return 0; } }}} I get the following error: {{{ c:\boost_1_49_0\boost\graph\strong_components.hpp(60) : error C2784: 'E boost::detail::get(boost::detail::underlying_edge_desc_map_type,const boost::detail::reverse_graph_edge_descriptor &)' : could not deduce template argument for 'boost::detail::underlying_edge_desc_map_type' from 'int *' 1> c:\boost_1_49_0\boost\graph\reverse_graph.hpp(437) : see declaration of 'boost::detail::get' 1> c:\boost_1_49_0\boost\graph\depth_first_search.hpp(43) : see reference to function template instantiation 'void boost::detail::tarjan_scc_visitor::finish_vertex(unsigned int,const Graph &)' being compiled 1> with 1> [ 1> ComponentMap=int *, 1> RootMap=boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>, 1> DiscoverTime=boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>, 1> Stack=std::stack, 1> Graph=boost::adjacency_list<> 1> ] 1> c:\boost_1_49_0\boost\graph\depth_first_search.hpp(34) : while compiling class template member function 'void boost::DFSVisitorConcept::constraints(void)' 1> with 1> [ 1> Visitor=boost::detail::tarjan_scc_visitor>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,std::stack>, 1> Graph=boost::adjacency_list<> 1> ] 1> c:\boost_1_49_0\boost\concept\detail\has_constraints.hpp(42) : see reference to class template instantiation 'boost::DFSVisitorConcept' being compiled 1> with 1> [ 1> Visitor=boost::detail::tarjan_scc_visitor>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,std::stack>, 1> Graph=boost::adjacency_list<> 1> ] 1> c:\boost_1_49_0\boost\concept\detail\msvc.hpp(53) : see reference to class template instantiation 'boost::concepts::not_satisfied' being compiled 1> with 1> [ 1> Model=boost::DFSVisitorConcept>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,std::stack>,boost::adjacency_list<>> 1> ] 1> c:\boost_1_49_0\boost\graph\depth_first_search.hpp(191) : see reference to class template instantiation 'boost::concepts::require' being compiled 1> with 1> [ 1> Model=boost::DFSVisitorConcept>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,std::stack>,boost::adjacency_list<>> 1> ] 1> c:\boost_1_49_0\boost\graph\depth_first_search.hpp(303) : see reference to function template instantiation 'void boost::depth_first_search>(const VertexListGraph &,DFSVisitor,ColorMap,unsigned int)' being compiled 1> with 1> [ 1> VertexListGraph=boost::adjacency_list<>, 1> Arg=const boost::detail::tarjan_scc_visitor>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,std::stack>, 1> T=boost::default_color_type, 1> IndexMap=boost::vec_adj_list_vertex_id_map, 1> DFSVisitor=const boost::detail::tarjan_scc_visitor>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>,std::stack>, 1> ColorMap=boost::shared_array_property_map> 1> ] 1> c:\boost_1_49_0\boost\graph\strong_components.hpp(109) : see reference to function template instantiation 'void boost::depth_first_search,boost::graph_visitor_t,boost::bgl_named_params>(const VertexListGraph &,const boost::bgl_named_params,boost::graph_visitor_t,Base> &)' being compiled 1> with 1> [ 1> Graph=boost::adjacency_list<>, 1> ComponentMap=int *, 1> RootMap=boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>, 1> DiscoverTime=boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>, 1> Stack=std::stack, 1> T=int, 1> Tag=int, 1> VertexListGraph=boost::adjacency_list<>, 1> Base=boost::bgl_named_params 1> ] 1> c:\boost_1_49_0\boost\graph\strong_components.hpp(152) : see reference to function template instantiation 'int boost::detail::strong_components_impl,int,int,boost::no_property>(const Graph &,ComponentMap,RootMap,DiscoverTime,const boost::bgl_named_params &)' being compiled 1> with 1> [ 1> Graph=boost::adjacency_list<>, 1> ComponentMap=int *, 1> RootMap=boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>, 1> RandomAccessIterator=std::_Vector_iterator>, 1> IndexMap=boost::vec_adj_list_vertex_id_map, 1> T=unsigned int, 1> R=unsigned int &, 1> DiscoverTime=boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>, 1> Tag=int 1> ] 1> c:\boost_1_49_0\boost\graph\strong_components.hpp(165) : see reference to function template instantiation 'int boost::detail::strong_comp_dispatch2::apply(const Graph &,ComponentMap,RootMap,const boost::bgl_named_params &,boost::detail::error_property_not_found)' being compiled 1> with 1> [ 1> Graph=boost::adjacency_list<>, 1> ComponentMap=int *, 1> RootMap=boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>, 1> T=int, 1> Tag=int 1> ] 1> c:\boost_1_49_0\boost\graph\strong_components.hpp(202) : see reference to function template instantiation 'int boost::detail::scc_helper2,int,int,boost::no_property,boost::detail::error_property_not_found>(const Graph &,ComponentMap,RootMap,const boost::bgl_named_params &,DiscoverTimeMap)' being compiled 1> with 1> [ 1> Graph=boost::adjacency_list<>, 1> ComponentMap=int *, 1> RandomAccessIterator=std::_Vector_iterator>, 1> IndexMap=boost::vec_adj_list_vertex_id_map, 1> T=unsigned int, 1> R=unsigned int &, 1> RootMap=boost::iterator_property_map>,boost::vec_adj_list_vertex_id_map,unsigned int,unsigned int &>, 1> Tag=int, 1> DiscoverTimeMap=boost::detail::error_property_not_found 1> ] 1> c:\boost_1_49_0\boost\graph\strong_components.hpp(215) : see reference to function template instantiation 'int boost::detail::strong_comp_dispatch1::apply(const Graph &,ComponentMap,const boost::bgl_named_params &,boost::detail::error_property_not_found)' being compiled 1> with 1> [ 1> Graph=boost::adjacency_list<>, 1> ComponentMap=int *, 1> T=int, 1> Tag=int 1> ] 1> c:\boost_1_49_0\boost\graph\strong_components.hpp(230) : see reference to function template instantiation 'int boost::detail::scc_helper1(const Graph &,ComponentMap,const boost::bgl_named_params &,RootMap)' being compiled 1> with 1> [ 1> Graph=boost::adjacency_list<>, 1> ComponentMap=int *, 1> T=int, 1> Tag=int, 1> RootMap=boost::detail::error_property_not_found 1> ] 1> c:\boost_1_49_0\boost\graph\strong_components.hpp(241) : see reference to function template instantiation 'int boost::strong_components(const Graph &,ComponentMap,const boost::bgl_named_params &,boost::graph::detail::no_parameter)' being compiled 1> with 1> [ 1> Graph=boost::adjacency_list<>, 1> ComponentMap=int *, 1> T=int, 1> Tag=int 1> ] 1> c:\boost_graph_test\test\test.cpp(13) : see reference to function template instantiation 'int boost::strong_components,int*>(const Graph &,ComponentMap,boost::graph::detail::no_parameter)' being compiled 1> with 1> [ 1> Graph=boost::adjacency_list<>, 1> ComponentMap=int * 1> ] }}} " Bugs closed To Be Determined graph Boost 1.49.0 Problem fixed