Subject: [Boost-bugs] [Boost C++ Libraries] #1431: edmunds_karp_max_flow fails to compile with bundled residual capacity
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2007-11-10 22:05:25
#1431: edmunds_karp_max_flow fails to compile with bundled residual capacity
---------------------------------+------------------------------------------
Reporter: kukkerman_at_[hidden] | Type: Bugs
Status: new | Milestone: To Be Determined
Component: None | Version: Boost 1.34.1
Severity: Problem | Keywords:
---------------------------------+------------------------------------------
If edmunds_karp_max_flow is called with a map created with
{{{get(&edge_bundle::residual_capacity, graph)}}} from the bundled
residual capacity property then the source fails to compile.
The problem is as follows:[[BR]]
In filtered_graph.hpp the {{{is_residual_edge}}} predicate has a default
constructor:[[BR]]
{{{is_residual_edge() { }}}}[[BR]]
[[BR]]
But it also has a member:[[BR]]
{{{ResidualCapacityEdgeMap m_rcap;}}}[[BR]]
[[BR]]
Bundle property maps have the following constructor only:[[BR]]
{{{bundle_property_map(Graph* g_, T Bundle::* pm_)}}}[[BR]]
[[BR]]
So in the case of a {{{bundle_property_map}}} the {{{is_residual_edge}}}
predicate declaration is invalid because it's default constructor
implicitly calls the default constructor of {{{m_rcap}}} which doesn't
exist.
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1431>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:56 UTC