bug in either relaxed heap or dijkstra algorithm (or am I doing something wrong?)

I was getting an strange assertion failed using the dijkstra algorithm from the graph library. The line that fails with the assertion is line 175: assert(smallest_value->value != 0); I don't know how a relaxed heap works, but using assert(smallest_value!=0) would make more sense to me. My problem is that I am using the graph library with an adapted graph class, and I use the indices to some vector as vertex_descriptors, so there is one node with vertex_descriptor 0. The dijkstra algorithm uses the vertex descriptor as indices for the relaxes heap, and the assertion fails. Commenting out the assertion or changing it to what I wrote before (or, I guess, just defining NDEBUG), everything works just fine. Is there anyone who knows why this assertion is there and whether it can be safely removed? Thanks in advance, Xavi

Is there any bug-tracking system for boost? How can I get this to be included for consideration as a bug? Thanks, Xavi On 6/30/07, Buola Buola <buola69@gmail.com> wrote:
I was getting an strange assertion failed using the dijkstra algorithm from the graph library. The line that fails with the assertion is line 175:
assert(smallest_value->value != 0);
I don't know how a relaxed heap works, but using assert(smallest_value!=0) would make more sense to me. My problem is that I am using the graph library with an adapted graph class, and I use the indices to some vector as vertex_descriptors, so there is one node with vertex_descriptor 0. The dijkstra algorithm uses the vertex descriptor as indices for the relaxes heap, and the assertion fails. Commenting out the assertion or changing it to what I wrote before (or, I guess, just defining NDEBUG), everything works just fine. Is there anyone who knows why this assertion is there and whether it can be safely removed?
Thanks in advance,
Xavi

Click the "New Ticket" button here: http://svn.boost.org/trac/boost Chris On 7/2/07, Buola Buola <buola69@gmail.com> wrote:
Is there any bug-tracking system for boost?
How can I get this to be included for consideration as a bug?
Thanks,
Xavi
On 6/30/07, Buola Buola <buola69@gmail.com> wrote:
I was getting an strange assertion failed using the dijkstra algorithm from the graph library. The line that fails with the assertion is line 175:
assert(smallest_value->value != 0);
I don't know how a relaxed heap works, but using assert(smallest_value!=0) would make more sense to me. My problem is that I am using the graph library with an adapted graph class, and I use the indices to some vector as vertex_descriptors, so there is one node with vertex_descriptor 0. The dijkstra algorithm uses the vertex descriptor as indices for the relaxes heap, and the assertion fails. Commenting out the assertion or changing it to what I wrote before (or, I guess, just defining NDEBUG), everything works just fine. Is there anyone who knows why this assertion is there and whether it can be safely removed?
Thanks in advance,
Xavi
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
participants (2)
-
Buola Buola
-
Chris Weed