[BGL] Patch for detail/adjacency_list.hpp

Hi ! The last commit from Doug Gregor (Revision 1.130) broke compilation with gcc-3.4.1 for me. The attached patch fixes this by moving the implementation of remove_directed_edge_dispatch to a place _before_ it is used. Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! Institut für Verkehrswesen, Eisenbahnbau * voice: ++49 511 762-2529 ! und -betrieb, Universität Hannover * fax : ++49 511 762-3001 ! Appelstrasse 9a, D-30167 Hannover * hunold@ive.uni-hannover.de ! www.ive.uni-hannover.de

On Dec 16, 2004, at 8:20 AM, Jürgen Hunold wrote:
Hi !
The last commit from Doug Gregor (Revision 1.130) broke compilation with gcc-3.4.1 for me.
The attached patch fixes this by moving the implementation of remove_directed_edge_dispatch to a place _before_ it is used.
Oops, sorry. Fixed now and thanks for the patch! Doug

Hello, I am experiencing a problem with "boost/graph/adjacency_list.hpp". Compiling boost_python with gcc 3.4.1 on Solaris 10 X86 fails with the error message below. Would you have any idea what may be causing this? With friendly regards, Johan Carlstedt bash-2.05b# bjam ...found 8303 targets... ...updating 16 targets... gcc-C++-action bin/boost/libs/python/build/libboost_python.so/gcc/debug/shared-linkable- true/inheritance.o In file included from /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:297, from /export/home/johan/boost_1_32_0/libs/python/build/../src/object/inherit ance.cpp:11: /export/home/johan/boost_1_32_0/boost/graph/detail/adjacency_list.hpp: In function `void boost::detail::undirected_remove_out_edge_if_dispatch (Graph&, incidence_iterator, incidence_iterator, EdgeList&, Predicate, boost::allow_parallel_edge_tag)': /export/home/johan/boost_1_32_0/boost/graph/detail/adjacency_list.hpp:437: error: `remove_directed_edge_dispatch' is not a member of `boost::detail' /export/home/johan/boost_1_32_0/boost/graph/detail/adjacency_list.hpp: In function `void boost::detail::undirected_remove_out_edge_if_dispatch (Graph&, incidence_iterator, incidence_iterator, EdgeList&, Predicate, boost::disallow_parallel_edge_tag)': /export/home/johan/boost_1_32_0/boost/graph/detail/adjacency_list.hpp:465: error: `remove_directed_edge_dispatch' is not a member of `boost::detail' In file included from /export/home/johan/boost_1_32_0/libs/python/build/../src/object/inherit ance.cpp:11: /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp: At global scope: /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:441: error: expected identifier before numeric constant /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:441: error: ISO C++ forbids declaration of `parameter' with no type /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:441: error: expected `>' before numeric constant /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: `VP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: `EP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: `GP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: `EL' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: type/value mismatch at argument 3 in template parameter list for `template<class OutEdgeListS, class VertexListS, class DirectedS, class VertexProperty, class EdgeProperty, class GraphProperty, class EdgeListS> class boost::adjacency_list' /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: expected a type, got `3' /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: template argument 4 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: template argument 5 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: template argument 6 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: template argument 7 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:444: error: `Tag' has not been declared /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:445: error: expected `,' or `...' before '&' token /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:445: error: ISO C++ forbids declaration of `g' with no type /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:445: error: ISO C++ forbids declaration of `parameter' with no type /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:445: error: ISO C++ forbids declaration of `Value' with no type /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp: In function `void boost::set_property(int&, int, int)': /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:446: error: `m_property' has not been declared /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:446: error: request for member of non-aggregate type before ',' token /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:446: error: there are no arguments to `Tag' that depend on a template parameter, so a declaration of `Tag' must be available /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:446: error: (if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated) /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:446: error: `value' undeclared (first use this function) /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:446: error: (Each undeclared identifier is reported only once for each function it appears in.) /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp: At global scope: /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:449: error: expected identifier before numeric constant /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:449: error: ISO C++ forbids declaration of `parameter' with no type /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:449: error: expected `>' before numeric constant /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: `VP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: `EP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: `GP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: `EL' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: type/value mismatch at argument 3 in template parameter list for `template<class OutEdgeListS, class VertexListS, class DirectedS, class VertexProperty, class EdgeProperty, class GraphProperty, class EdgeListS> class boost::adjacency_list' /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: expected a type, got `3' /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: template argument 4 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: template argument 5 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: template argument 6 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: template argument 7 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: `Tag' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: template argument 1 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: template argument 2 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: expected init-declarator before '&' token /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:452: error: expected `;' before '&' token /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:457: error: expected identifier before numeric constant /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:457: error: ISO C++ forbids declaration of `parameter' with no type /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:457: error: expected `>' before numeric constant /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: `VP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: `EP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: `GP' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: `EL' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: type/value mismatch at argument 3 in template parameter list for `template<class OutEdgeListS, class VertexListS, class DirectedS, class VertexProperty, class EdgeProperty, class GraphProperty, class EdgeListS> class boost::adjacency_list' /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: expected a type, got `3' /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: template argument 4 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: template argument 5 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: template argument 6 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: template argument 7 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: `Tag' was not declared in this scope /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: template argument 1 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: template argument 2 is invalid /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: expected init-declarator before '&' token /export/home/johan/boost_1_32_0/boost/graph/adjacency_list.hpp:461: error: expected `;' before '&' token
On Dec 16, 2004, at 8:20 AM, Jürgen Hunold wrote:
Hi !
The last commit from Doug Gregor (Revision 1.130) broke compilation with gcc-3.4.1 for me.
The attached patch fixes this by moving the implementation of remove_directed_edge_dispatch to a place _before_ it is used.
Oops, sorry. Fixed now and thanks for the patch!
Doug
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Hi Johan ! On Thursday 16 December 2004 16:55, Johan Carlstedt wrote:
Hello,
I am experiencing a problem with "boost/graph/adjacency_list.hpp". Compiling boost_python with gcc 3.4.1 on Solaris 10 X86 fails with the error message below.
Would you have any idea what may be causing this?
Yes, that's what's my patch corrects. Just apply the patch from my original mail or checkout the current CVS, where Doug has fixed this issue. Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! Institut für Verkehrswesen, Eisenbahnbau * voice: ++49 511 762-2529 ! und -betrieb, Universität Hannover * fax : ++49 511 762-3001 ! Appelstrasse 9a, D-30167 Hannover * hunold@ive.uni-hannover.de ! www.ive.uni-hannover.de

Jürgen This problem is not with "boost/graph/detail/adjacency_list.hpp" but with "boost/graph/adjacency_list.hpp". I've tried your patch but it does not seem to solve this problem.
I am experiencing a problem with "boost/graph/adjacency_list.hpp". Compiling boost_python with gcc 3.4.1 on Solaris 10 X86 fails with the error message below.
Would you have any idea what may be causing this?
Yes, that's what's my patch corrects. Just apply the patch from my original mail or checkout the current CVS, where Doug has fixed this issue.
With friendly regards, Johan Carlstedt
participants (3)
-
Doug Gregor
-
Johan Carlstedt
-
Jürgen Hunold