id summary reporter owner description type status milestone component version severity resolution keywords cc 9730 copy_graph doesn't use graph_traits Masahiro Nawata Jeremiah Willcock "copy_graph doesn't use graph_traits internally. Therefore, classes which don't have traversal_category and directed_category, such as std::vector or SGB, are not used as the source graph. follow code is compile error: {{{ #include #include #include #include #include int main() { using VectorGraph = std::vector>; auto vgraph = VectorGraph{{1, 2, 3}, {3, 5}, {5}, {4}, {0, 2}, {0}}; using Graph = boost::adjacency_list<>; auto graph = Graph{}; boost::copy_graph(vgraph, graph , boost::vertex_copy([]( boost::graph_traits::vertex_descriptor , boost::graph_traits::vertex_descriptor) {}) . edge_copy([]( boost::graph_traits::edge_descriptor , boost::graph_traits::edge_descriptor) {}) ); } }}} patch is here {{{ --- /usr/local/include/boost/graph/copy.hpp 2014-03-02 21:44:55.000000000 +0900 +++ copy.hpp 2014-03-02 21:45:05.000000000 +0900 @@ -248,8 +248,8 @@ template struct choose_graph_copy { - typedef typename Graph::traversal_category Trv; - typedef typename Graph::directed_category Dr; + typedef typename graph_traits::traversal_category Trv; + typedef typename graph_traits::directed_category Dr; enum { algo = (is_convertible::value && is_convertible::value) }}}" Bugs new To Be Determined graph Boost 1.55.0 Problem