Incidentally, I believe there was a problem with placing edge_index_t edge_index in the bundled properties----it only worked when I used the (far uglier) joint internal/bundled property approach. Something else to put on the list.
I think I've run into this before. There was a problem with the property-deducing metafunctions that was failing if you gave a formally constructed bundle (of the form property<???_bundle_t, Bundle>). It should be fixed in trunk. Relevant changes are in boost/graph/properties.hpp. As far as options, I was think something like: typedef property_map<G, local<int P::*> >::type LocalPropMap; typedef property_map<G, global<int P::*> >::type GlobalPropMap; So specializations on local/global will automatically select lookup logic. I don't think I have to change anything else. Andrew Sutton andrew.n.sutton@gmail.com