Boost logo

Boost Users :

Subject: [Boost-users] [BGL] A bug in the edge_range() function.
From: Michael Olea (oleaj_at_[hidden])
Date: 2009-04-02 18:36:34


In boost 1.37.0 there is a "metaprogramming bug" in the edge_range()
function: it fails to compile when the Directed Selector template
argument to adjacency_list is set to directedS, but does work if the
argument is either undirectedS, or bidirectionalS. Attached below is
a short program illustrating the problem. The problem is that
edge_range() instantiates a StoredEdge via a constructor taking 3
arguments, but when the Directed Selector is directedS StoredEdge is
typedef'ed to stored_edge_property<vertex_descriptor, EdgeProperty>,
which has no such constructor. One solution might be to create
overloaded edge_range_dispatch() functions, and dispatch on
Config::on_edge_storage.

-- Michael




Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net