
When I create a reverse_graph from a graph, is it possible to get the property map as well? I have reduced the code to the following snippet: typedef adjacency_list<vecS, vecS, bidirectionalS, property<vertex_name_t,string> > GraphType; typedef boost::property_map<GraphType,vertex_name_t>::type VertexNameMapType; typedef reverse_graph<GraphType> ReverseGraphType; typedef boost::property_map<ReverseGraphType,vertex_name_t>::type ReverseVertexNameMapType; GraphType g; VertexNameMapType nameMap=get(vertex_name,g); // get nameMap from graph g reverse_graph<GraphType> rg(g); // create the reverse_graph ReverseVertexNameMapType rnameMap=boost::get(vertex_name,rg); // get rnameMap frmo rg, but this line fails to compile The VC6 compile error message, with long substrings substituted for string ( STR ) and adjacency list ( ADJL ) looks like: graph\reverse_graph.hpp(241) : error C2664: '__thiscall boost::vec_adj_list_vertex_property_map<A,A*,S,S&,vertex_name_t>::boost::vec_adj_list_vertex_property_map<A,A*,S,S&,vertex_name_t><class boost::ADJL *>' : cannot convert parameter 1 from 'struct boost::vec_adj_list_vertex_property_map<class boost::ADJL,class boost::ADJL const *,class STR,class STR const &,enum boost::vertex_name_t>' to 'class boost::ADJL *' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called example\testreverse.cpp(97) : see reference to function template instantiation 'struct boost::vec_adj_list_vertex_property_map<A,A*,S,S&,vertex_name_t> __cdecl boost::get<enum boost::vertex_name_t,class boost::reverse_graph<class boost::ADJL,class boost::ADJL const &> &>' being compiled graph\reverse_graph.hpp(241) : error C2553: no legal conversion of return value to return type 'struct boost::vec_adj_list_vertex_property_map<A,A*,S,S&,vertex_name_t> *' example\testreverse.cpp(97) : see reference to function template instantiation 'struct boost::vec_adj_list_vertex_property_map<A,A*,S,S&,vertex_name_t> __cdecl boost::get<enum boost::vertex_name_t,class boost::reverse_graph<class boost::ADJL,class boost::ADJL const &> &>' being compiled I am trying to determine whether I have made the call incorrectly or is this a limitation of the reverse_graph?