I don't believe in "implied" assumptions. A comment in the pseudo code says:
Ok, I think it is then best to just accept Piotr's patch and forget about the other (marginal) optimisation that would not work alongside that patch.
OK, so here we disagree. I think that this is precisely the reason for the no_init version. Why would we need it otherwise?
I have used the no_init version of the BFS to supply the algorithm with a *consistent* set of precomputed values; i.e. a consistent priority queue, color map and distance map. This allowed me to interrupt and resume shortest path calculations and hence interweave several shortest path calculation. Allowing arbitrary and inconsistent input does not feel right to me. But it is just a feeling and based on "implied" assumption. So you can safely ignore it.