Ticket #8398 (closed Bugs: fixed)
dijkstra_shortest_paths implicitly requires DistanceMap and WeightMap to be the same
|Reported by:||Luis G. Torres <lgtorres42@…>||Owned by:||jewillco|
|Milestone:||To Be Determined||Component:||graph|
The documentation for dijkstra_shortest_paths states that the given distance_compare functor needs to be a BinaryPredicate? where both arguments are of the value type of DistanceMap?. The distance_combine functor needs to be a BinaryFunction? where the first argument is of the DistanceMap? value type and the second argument is of the WeightMap? value type.
However, in line 162 of dijkstra_shortest_paths.hpp, a comparison is made between a value from WeightMap? and a value from DistanceMap? using the distance_compare functor; this violates where the documentation specifies that the distance_compare functor would only need to handle types from DistanceMap?. Effectively, this requires either:
I imagine that fixing this issue would require either changing the documentation or changing line 162 to not require this comparison to be made (it seems to only be a way of verifying that there are no negative edges in the graph).