
According to <http://www.boost.org/libs/graph/doc/BidirectionalGraph.html>, adjacency_list with Directed=undirectedS is a model of the Bidirectional Graph Concept. However, the following code fails to compile: #include <boost/concept_check.hpp> #include <boost/graph/graph_concepts.hpp> #include <boost/graph/graph_selectors.hpp> #include <boost/graph/adjacency_list.hpp> int main() { boost::function_requires< boost::BidirectionalGraphConcept< boost::adjacency_list< boost::listS , boost::vecS , boost::bidirectionalS > > >(); boost::function_requires< boost::BidirectionalGraphConcept< boost::adjacency_list< boost::listS , boost::vecS , boost::undirectedS > > >(); return 0; } The error is: boost/graph/detail/adjacency_list.hpp:1984: `struct boost::detail::adj_list_gen<boost::adjacency_list<boost::listS, boost::vecS, boost::undirectedS, boost::no_property, boost::no_property, boost::no_property, boost::listS>, boost::vecS, boost::listS, boost::undirectedS, boost::no_property, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex' has no member named `m_in_edges' Perhaps in_degree() should be specialized for undirected graphs so that it returns the same result as out_degree(). Cromwell D. Enage __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com