Boost logo

Boost :

From: Buola Buola (buola69_at_[hidden])
Date: 2007-06-30 03:24:45


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


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk