
Am 19.12.2011 01:54, schrieb Jeremiah Willcock:
I switched the order of the imports in leda_graph_cc.cpp:
#include <boost/graph/leda_graph.hpp> #include <boost/graph/graph_concepts.hpp>
and indeed, this bug is gone (there is another one in the same concept check, but I will deal with it later).
It is supposed to work in the other order; please try turning off BOOST_VECTOR_AS_GRAPH_GRAPH_ADL_HACK
Done: #if !defined(BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP) \ && !BOOST_WORKAROUND(__GNUC__, <= 2) \ && !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) // # define BOOST_VECTOR_AS_GRAPH_GRAPH_ADL_HACK #endif
and flip the header order back and see what happens.
It works: http://nopaste.us/5915.html With the ADL hack vertices is not found: http://nopaste.linux-dev.org/?24564
It probably won't work, but I think that's what the standard says is supposed to happen. It would be nicer (and probably work) if the LEDA wrappers were in the leda namespace (same as the graph types), although that isn't elegant because of modifying a third-party library's namespace.
No I wonder for what BOOST_VECTOR_AS_GRAPH_GRAPH_ADL_HACK is actually needed ... All the other Graph tests also run fine without it! Maybe Dave can enlighten us ... -- Jens