$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r69502 - in branches/release: . boost boost/algorithm/string boost/archive boost/bimap boost/config boost/detail boost/filesystem boost/functional/hash boost/fusion boost/fusion/container/list/detail boost/gil boost/graph boost/icl boost/integer boost/interprocess boost/intrusive boost/io boost/iostreams boost/iterator boost/math boost/msm boost/numeric/ublas boost/pool boost/program_options boost/program_options/detail boost/property_tree boost/python boost/range boost/regex boost/serialization boost/signals boost/spirit boost/spirit/home boost/spirit/home/karma boost/spirit/home/support boost/statechart boost/system boost/thread boost/tr1 boost/type_traits boost/typeof boost/utility boost/uuid boost/variant boost/wave doc libs libs/algorithm/string libs/array libs/array/doc libs/array/test libs/bimap libs/config libs/config/doc libs/date_time libs/filesystem libs/functional/hash libs/fusion libs/graph/doc libs/graph_parallel libs/icl libs/icl/doc libs/icl/doc/html libs/icl/doc/html/header/boost/icl libs/icl/test libs/icl/test/test_doc_code_ libs/integer libs/interprocess libs/intrusive libs/io libs/io/doc libs/iostreams libs/math libs/math/build libs/math/config libs/math/doc libs/math/doc/complex libs/math/doc/distexplorer libs/math/doc/gcd libs/math/doc/html libs/math/doc/octonion libs/math/doc/quaternion libs/math/doc/sf_and_dist libs/math/doc/sf_and_dist/html libs/math/doc/sf_and_dist/html/math_toolkit/main_overview libs/math/dot_net_example libs/math/example libs/math/minimax libs/math/performance libs/math/src libs/math/test libs/math/tools libs/mpi/build libs/mpl/doc/refmanual libs/mpl/doc/src/refmanual libs/msm libs/numeric/ublas libs/numeric/ublas/doc libs/parameter/doc/html libs/pool libs/program_options libs/program_options/test libs/property_tree libs/python libs/range libs/regex libs/regex/build libs/serialization libs/serialization/doc libs/serialization/example libs/serialization/src libs/serialization/test libs/serialization/vc7ide libs/signals libs/signals2 libs/spirit libs/spirit/classic/example libs/spirit/doc libs/spirit/example libs/spirit/phoenix libs/spirit/test libs/spirit/test/qi libs/statechart libs/static_assert libs/system libs/thread libs/timer libs/tr1 libs/type_traits libs/type_traits/doc libs/typeof/doc libs/units/test libs/unordered libs/utility libs/utility/swap/test libs/uuid libs/wave status tools tools/bcp tools/boostbook tools/build/v2 tools/inspect tools/quickbook tools/quickbook/doc tools/quickbook/src tools/quickbook/test tools/regression tools/regression/src tools/release tools/wave
From: jewillco_at_[hidden]
Date: 2011-03-02 19:29:45
Author: jewillco
Date: 2011-03-02 19:29:41 EST (Wed, 02 Mar 2011)
New Revision: 69502
URL: http://svn.boost.org/trac/boost/changeset/69502
Log:
Merged bug fixes from trunk (r68781,r68949,r68972,r68979,r69021,r69404,r69430) for 1.46.1
Properties modified: 
   branches/release/   (props changed)
   branches/release/INSTALL   (props changed)
   branches/release/Jamroot   (props changed)
   branches/release/LICENSE_1_0.txt   (props changed)
   branches/release/boost/   (props changed)
   branches/release/boost-build.jam   (props changed)
   branches/release/boost.css   (props changed)
   branches/release/boost.png   (props changed)
   branches/release/boost/algorithm/string/   (props changed)
   branches/release/boost/archive/   (props changed)
   branches/release/boost/archive/basic_binary_iarchive.hpp   (props changed)
   branches/release/boost/array.hpp   (props changed)
   branches/release/boost/bimap/   (props changed)
   branches/release/boost/concept_check.hpp   (props changed)
   branches/release/boost/config/   (props changed)
   branches/release/boost/config.hpp   (props changed)
   branches/release/boost/detail/   (props changed)
   branches/release/boost/detail/endian.hpp   (props changed)
   branches/release/boost/filesystem/   (props changed)
   branches/release/boost/filesystem.hpp   (props changed)
   branches/release/boost/functional/hash/   (props changed)
   branches/release/boost/fusion/   (props changed)
   branches/release/boost/fusion/container/list/detail/build_cons.hpp   (props changed)
   branches/release/boost/gil/   (props changed)
   branches/release/boost/graph/   (props changed)
   branches/release/boost/icl/   (props changed)
   branches/release/boost/integer/   (props changed)
   branches/release/boost/interprocess/   (props changed)
   branches/release/boost/intrusive/   (props changed)
   branches/release/boost/io/   (props changed)
   branches/release/boost/iostreams/   (props changed)
   branches/release/boost/iterator/iterator_facade.hpp   (props changed)
   branches/release/boost/math/   (props changed)
   branches/release/boost/math_fwd.hpp   (props changed)
   branches/release/boost/msm/   (props changed)
   branches/release/boost/numeric/ublas/   (props changed)
   branches/release/boost/numeric/ublas/functional.hpp   (props changed)
   branches/release/boost/pool/   (props changed)
   branches/release/boost/program_options/   (props changed)
   branches/release/boost/program_options/detail/parsers.hpp   (props changed)
   branches/release/boost/program_options/parsers.hpp   (props changed)
   branches/release/boost/property_tree/   (props changed)
   branches/release/boost/python/   (props changed)
   branches/release/boost/range/   (props changed)
   branches/release/boost/regex/   (props changed)
   branches/release/boost/serialization/   (props changed)
   branches/release/boost/signals/   (props changed)
   branches/release/boost/signals2.hpp   (props changed)
   branches/release/boost/spirit/   (props changed)
   branches/release/boost/spirit/home/   (props changed)
   branches/release/boost/spirit/home/karma/   (props changed)
   branches/release/boost/spirit/home/support/attributes.hpp   (props changed)
   branches/release/boost/statechart/   (props changed)
   branches/release/boost/static_assert.hpp   (props changed)
   branches/release/boost/system/   (props changed)
   branches/release/boost/thread/   (props changed)
   branches/release/boost/thread.hpp   (props changed)
   branches/release/boost/token_functions.hpp   (props changed)
   branches/release/boost/tr1/   (props changed)
   branches/release/boost/type_traits/   (props changed)
   branches/release/boost/typeof/message.hpp   (props changed)
   branches/release/boost/typeof/register_functions.hpp   (props changed)
   branches/release/boost/typeof/register_functions_iterate.hpp   (props changed)
   branches/release/boost/typeof/typeof.hpp   (props changed)
   branches/release/boost/typeof/unsupported.hpp   (props changed)
   branches/release/boost/utility/   (props changed)
   branches/release/boost/utility/value_init.hpp   (props changed)
   branches/release/boost/uuid/   (props changed)
   branches/release/boost/variant/   (props changed)
   branches/release/boost/version.hpp   (props changed)
   branches/release/boost/wave/   (props changed)
   branches/release/bootstrap.bat   (props changed)
   branches/release/bootstrap.sh   (props changed)
   branches/release/doc/   (props changed)
   branches/release/index.htm   (props changed)
   branches/release/index.html   (props changed)
   branches/release/libs/   (props changed)
   branches/release/libs/algorithm/string/   (props changed)
   branches/release/libs/array/   (props changed)
   branches/release/libs/array/doc/array.xml   (props changed)
   branches/release/libs/array/test/Jamfile.v2   (props changed)
   branches/release/libs/array/test/array0.cpp   (props changed)
   branches/release/libs/array/test/array2.cpp   (props changed)
   branches/release/libs/array/test/array6.cpp   (props changed)
   branches/release/libs/bimap/   (props changed)
   branches/release/libs/config/   (props changed)
   branches/release/libs/config/doc/   (props changed)
   branches/release/libs/date_time/   (props changed)
   branches/release/libs/filesystem/   (props changed)
   branches/release/libs/functional/hash/   (props changed)
   branches/release/libs/fusion/   (props changed)
   branches/release/libs/graph_parallel/   (props changed)
   branches/release/libs/icl/   (props changed)
   branches/release/libs/icl/doc/   (props changed)
   branches/release/libs/icl/doc/html/   (props changed)
   branches/release/libs/icl/doc/html/header/boost/icl/   (props changed)
   branches/release/libs/icl/test/   (props changed)
   branches/release/libs/icl/test/test_doc_code_/   (props changed)
   branches/release/libs/integer/   (props changed)
   branches/release/libs/interprocess/   (props changed)
   branches/release/libs/intrusive/   (props changed)
   branches/release/libs/io/   (props changed)
   branches/release/libs/io/doc/   (props changed)
   branches/release/libs/iostreams/   (props changed)
   branches/release/libs/libraries.htm   (props changed)
   branches/release/libs/maintainers.txt   (props changed)
   branches/release/libs/math/   (props changed)
   branches/release/libs/math/build/   (props changed)
   branches/release/libs/math/config/   (props changed)
   branches/release/libs/math/doc/   (props changed)
   branches/release/libs/math/doc/complex/   (props changed)
   branches/release/libs/math/doc/distexplorer/   (props changed)
   branches/release/libs/math/doc/gcd/   (props changed)
   branches/release/libs/math/doc/html/   (props changed)
   branches/release/libs/math/doc/octonion/   (props changed)
   branches/release/libs/math/doc/quaternion/   (props changed)
   branches/release/libs/math/doc/sf_and_dist/   (props changed)
   branches/release/libs/math/doc/sf_and_dist/html/   (props changed)
   branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/faq.html   (props changed)
   branches/release/libs/math/dot_net_example/   (props changed)
   branches/release/libs/math/example/   (props changed)
   branches/release/libs/math/minimax/   (props changed)
   branches/release/libs/math/performance/   (props changed)
   branches/release/libs/math/src/   (props changed)
   branches/release/libs/math/test/   (props changed)
   branches/release/libs/math/tools/   (props changed)
   branches/release/libs/mpi/build/   (props changed)
   branches/release/libs/mpl/doc/refmanual/broken-compiler-workarounds.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/categorized-index-concepts.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/cfg-no-preprocessed-headers.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/composition-and-argument-binding.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/data-types-concepts.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/data-types-miscellaneous.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/extensible-associative-sequence.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/inserter-class.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/tag-dispatched-metafunction.html   (props changed)
   branches/release/libs/mpl/doc/refmanual/trivial-metafunctions-summary.html   (props changed)
   branches/release/libs/mpl/doc/src/refmanual/Iterators-Iterator.rst   (props changed)
   branches/release/libs/msm/   (props changed)
   branches/release/libs/numeric/ublas/   (props changed)
   branches/release/libs/numeric/ublas/doc/   (props changed)
   branches/release/libs/parameter/doc/html/index.html   (props changed)
   branches/release/libs/pool/   (props changed)
   branches/release/libs/program_options/   (props changed)
   branches/release/libs/program_options/test/parsers_test.cpp   (props changed)
   branches/release/libs/property_tree/   (props changed)
   branches/release/libs/python/   (props changed)
   branches/release/libs/range/   (props changed)
   branches/release/libs/regex/   (props changed)
   branches/release/libs/regex/build/   (props changed)
   branches/release/libs/serialization/   (props changed)
   branches/release/libs/serialization/doc/   (props changed)
   branches/release/libs/serialization/example/   (props changed)
   branches/release/libs/serialization/src/   (props changed)
   branches/release/libs/serialization/test/test_diamond_complex.cpp   (props changed)
   branches/release/libs/serialization/vc7ide/   (props changed)
   branches/release/libs/signals/   (props changed)
   branches/release/libs/signals2/   (props changed)
   branches/release/libs/spirit/   (props changed)
   branches/release/libs/spirit/classic/example/   (props changed)
   branches/release/libs/spirit/doc/   (props changed)
   branches/release/libs/spirit/example/   (props changed)
   branches/release/libs/spirit/phoenix/   (props changed)
   branches/release/libs/spirit/test/   (props changed)
   branches/release/libs/spirit/test/qi/optional.cpp   (props changed)
   branches/release/libs/statechart/   (props changed)
   branches/release/libs/static_assert/   (props changed)
   branches/release/libs/system/   (props changed)
   branches/release/libs/thread/   (props changed)
   branches/release/libs/timer/   (props changed)
   branches/release/libs/tr1/   (props changed)
   branches/release/libs/type_traits/   (props changed)
   branches/release/libs/type_traits/doc/   (props changed)
   branches/release/libs/typeof/doc/typeof.qbk   (props changed)
   branches/release/libs/units/test/   (props changed)
   branches/release/libs/unordered/   (props changed)
   branches/release/libs/utility/   (props changed)
   branches/release/libs/utility/assert.html   (props changed)
   branches/release/libs/utility/assert_test.cpp   (props changed)
   branches/release/libs/utility/swap.html   (props changed)
   branches/release/libs/utility/swap/test/std_bitset.cpp   (props changed)
   branches/release/libs/utility/value_init.htm   (props changed)
   branches/release/libs/utility/value_init_test.cpp   (props changed)
   branches/release/libs/uuid/   (props changed)
   branches/release/libs/wave/   (props changed)
   branches/release/rst.css   (props changed)
   branches/release/status/   (props changed)
   branches/release/status/Jamfile.v2   (props changed)
   branches/release/status/explicit-failures-markup.xml   (props changed)
   branches/release/tools/   (props changed)
   branches/release/tools/bcp/   (props changed)
   branches/release/tools/boostbook/   (props changed)
   branches/release/tools/build/v2/   (props changed)
   branches/release/tools/inspect/   (props changed)
   branches/release/tools/quickbook/   (props changed)
   branches/release/tools/quickbook/doc/   (props changed)
   branches/release/tools/quickbook/src/   (props changed)
   branches/release/tools/quickbook/test/   (props changed)
   branches/release/tools/regression/   (props changed)
   branches/release/tools/regression/src/library_status.cpp   (props changed)
   branches/release/tools/release/   (props changed)
   branches/release/tools/wave/   (props changed)
Text files modified: 
   branches/release/boost/graph/graph_traits.hpp         |    13 ++++++                                  
   branches/release/boost/graph/isomorphism.hpp          |    18 ++++++++-                               
   branches/release/boost/graph/properties.hpp           |     3 +                                       
   branches/release/boost/graph/reverse_graph.hpp        |     6 ---                                     
   branches/release/boost/graph/subgraph.hpp             |    75 ++++++++++++++++++--------------------- 
   branches/release/boost/graph/transitive_reduction.hpp |     2                                         
   branches/release/libs/graph/doc/subgraph.html         |     6 +-                                      
   7 files changed, 68 insertions(+), 55 deletions(-)
Modified: branches/release/boost/graph/graph_traits.hpp
==============================================================================
--- branches/release/boost/graph/graph_traits.hpp	(original)
+++ branches/release/boost/graph/graph_traits.hpp	2011-03-02 19:29:41 EST (Wed, 02 Mar 2011)
@@ -217,6 +217,11 @@
     //?? not the right place ?? Lee
     typedef boost::forward_traversal_tag multi_pass_input_iterator_tag;
 
+    // Forward declare graph_bundle_t property name (from
+    // boost/graph/properties.hpp, which includes this file) for
+    // bundled_result.
+    enum graph_bundle_t {graph_bundle};
+
     template <typename G>
     struct graph_property_type {
       typedef typename G::graph_property_type type;
@@ -261,6 +266,14 @@
             typedef typename bundler::type type;
         };
 
+        template<typename Graph>
+        class bundled_result<Graph, graph_bundle_t> {
+            typedef typename graph_traits<Graph>::vertex_descriptor Vertex;
+            typedef graph_bundle_type<Graph> bundler;
+        public:
+            typedef typename bundler::type type;
+        };
+
     } } // namespace graph::detail
 
     namespace graph_detail {
Modified: branches/release/boost/graph/isomorphism.hpp
==============================================================================
--- branches/release/boost/graph/isomorphism.hpp	(original)
+++ branches/release/boost/graph/isomorphism.hpp	2011-03-02 19:29:41 EST (Wed, 02 Mar 2011)
@@ -284,18 +284,30 @@
     typedef size_type result_type;
 
     degree_vertex_invariant(const InDegreeMap& in_degree_map, const Graph& g)
-      : m_in_degree_map(in_degree_map), m_g(g) { }
+      : m_in_degree_map(in_degree_map),
+        m_max_vertex_in_degree(0),
+        m_max_vertex_out_degree(0),
+        m_g(g) {
+      BGL_FORALL_VERTICES_T(v, g, Graph) {
+        m_max_vertex_in_degree =
+          (std::max)(m_max_vertex_in_degree, get(m_in_degree_map, v));
+        m_max_vertex_out_degree =
+          (std::max)(m_max_vertex_out_degree, out_degree(v, g));
+      }
+    }
 
     size_type operator()(vertex_t v) const {
-      return (num_vertices(m_g) + 1) * out_degree(v, m_g)
+      return (m_max_vertex_in_degree + 1) * out_degree(v, m_g)
         + get(m_in_degree_map, v);
     }
     // The largest possible vertex invariant number
     size_type max BOOST_PREVENT_MACRO_SUBSTITUTION () const { 
-      return num_vertices(m_g) * num_vertices(m_g) + num_vertices(m_g);
+      return (m_max_vertex_in_degree + 2) * m_max_vertex_out_degree + 1;
     }
   private:
     InDegreeMap m_in_degree_map;
+    size_type m_max_vertex_in_degree;
+    size_type m_max_vertex_out_degree;
     const Graph& m_g;
   };
 
Modified: branches/release/boost/graph/properties.hpp
==============================================================================
--- branches/release/boost/graph/properties.hpp	(original)
+++ branches/release/boost/graph/properties.hpp	2011-03-02 19:29:41 EST (Wed, 02 Mar 2011)
@@ -126,7 +126,8 @@
   BOOST_DEF_PROPERTY(graph, visitor);
 
   // These tags are used for property bundles
-  BOOST_DEF_PROPERTY(graph, bundle);
+  // BOOST_DEF_PROPERTY(graph, bundle); -- needed in graph_traits.hpp, so enum is defined there
+  BOOST_INSTALL_PROPERTY(graph, bundle);
   BOOST_DEF_PROPERTY(vertex, bundle);
   BOOST_DEF_PROPERTY(edge, bundle);
 
Modified: branches/release/boost/graph/reverse_graph.hpp
==============================================================================
--- branches/release/boost/graph/reverse_graph.hpp	(original)
+++ branches/release/boost/graph/reverse_graph.hpp	2011-03-02 19:29:41 EST (Wed, 02 Mar 2011)
@@ -90,12 +90,6 @@
     typename graph::detail::bundled_result<BidirectionalGraph, Descriptor>::type const&
     operator[](Descriptor x) const
     { return m_g[x]; }
-
-    typename boost::graph_property_type<base_type>::type& operator[](graph_bundle_t)
-    { return get_property(*this); }
-
-    typename boost::graph_property_type<base_type>::type const& operator[](graph_bundle_t) const
-    { return get_property(*this); }
 #endif // BOOST_GRAPH_NO_BUNDLED_PROPERTIES
 
     static vertex_descriptor null_vertex()
Modified: branches/release/boost/graph/subgraph.hpp
==============================================================================
--- branches/release/boost/graph/subgraph.hpp	(original)
+++ branches/release/boost/graph/subgraph.hpp	2011-03-02 19:29:41 EST (Wed, 02 Mar 2011)
@@ -78,12 +78,12 @@
     typedef graph_traits<Graph> Traits;
     typedef std::list<subgraph<Graph>*> ChildrenList;
 public:
-// Graph requirements
-typedef typename Traits::vertex_descriptor         vertex_descriptor;
-typedef typename Traits::edge_descriptor           edge_descriptor;
-typedef typename Traits::directed_category         directed_category;
-typedef typename Traits::edge_parallel_category    edge_parallel_category;
-typedef typename Traits::traversal_category        traversal_category;
+    // Graph requirements
+    typedef typename Traits::vertex_descriptor         vertex_descriptor;
+    typedef typename Traits::edge_descriptor           edge_descriptor;
+    typedef typename Traits::directed_category         directed_category;
+    typedef typename Traits::edge_parallel_category    edge_parallel_category;
+    typedef typename Traits::traversal_category        traversal_category;
 
     // IncidenceGraph requirements
     typedef typename Traits::out_edge_iterator         out_edge_iterator;
@@ -196,12 +196,22 @@
     std::pair<vertex_descriptor, bool>
     find_vertex(vertex_descriptor u_global) const {
         if (is_root()) return std::make_pair(u_global, true);
-        typename std::map<vertex_descriptor, vertex_descriptor>::const_iterator
-            i = m_local_vertex.find(u_global);
+        typename LocalVertexMap::const_iterator i = m_local_vertex.find(u_global);
         bool valid = i != m_local_vertex.end();
         return std::make_pair((valid ? (*i).second : null_vertex()), valid);
     }
 
+    // Is edge e (of the root graph) contained in this subgraph?
+    // If so, return the matching local edge.
+    std::pair<edge_descriptor, bool>
+    find_edge(edge_descriptor e_global) const {
+        if (is_root()) return std::make_pair(e_global, true);
+        typename LocalEdgeMap::const_iterator i =
+          m_local_edge.find(get(get(edge_index, root().m_graph), e_global));
+        bool valid = i != m_local_edge.end();
+        return std::make_pair((valid ? (*i).second : edge_descriptor()), valid);
+    }
+
     // Return the parent graph.
     subgraph& parent() { return *m_parent; }
     const subgraph& parent() const { return *m_parent; }
@@ -617,38 +627,18 @@
 
     //-------------------------------------------------------------------------
     // implementation of remove_edge(e,g)
-    template <typename Edge, typename Graph>
-    void remove_edge_recur_down(Edge e_global, subgraph<Graph>& g);
 
-    template <typename Edge, typename Children>
+    template <typename G, typename Edge, typename Children>
     void children_remove_edge(Edge e_global, Children& c)
     {
         for(typename Children::iterator i = c.begin(); i != c.end(); ++i) {
-            if((*i)->find_vertex(source(e_global, **i)).second &&
-               (*i)->find_vertex(target(e_global, **i)).second)
-            {
-                remove_edge_recur_down(source(e_global, **i),
-                                       target(e_global, **i),
-                                       **i);
+            std::pair<typename subgraph<G>::edge_descriptor, bool> found =
+              (*i)->find_edge(e_global);
+            if (!found.second) {
+              continue;
             }
-        }
-    }
-
-    template <typename Edge, typename Graph>
-    void remove_edge_recur_down(Edge e_global, subgraph<Graph>& g)
-    {
-        remove_edge(g.global_to_local(e_global), g.m_graph);
-        children_remove_edge(e_global, g.m_children);
-    }
-
-    template <typename Edge, typename Graph>
-    void remove_edge_recur_up(Edge e_global, subgraph<Graph>& g)
-    {
-        if (g.is_root()) {
-            remove_edge(e_global, g.m_graph);
-            children_remove_edge(e_global, g.m_children);
-        } else {
-            remove_edge_recur_up(e_global, *g.m_parent);
+            children_remove_edge<G>(e_global, (*i)->m_children);
+            remove_edge(found.first, (*i)->m_graph);
         }
     }
 
@@ -672,11 +662,14 @@
 void
 remove_edge(typename subgraph<G>::edge_descriptor e, subgraph<G>& g)
 {
-    if(g.is_root()) {
-        detail::remove_edge_recur_up(e, g);
-    } else {
-        detail::remove_edge_recur_up(g.local_to_global(e), g);
-    }
+    typename subgraph<G>::edge_descriptor e_global = g.local_to_global(e);
+#ifndef NDEBUG
+    std::pair<typename subgraph<G>::edge_descriptor, bool> fe = g.find_edge(e_global);
+    assert(fe.second && fe.first == e);
+#endif //NDEBUG
+    subgraph<G> &root = g.root(); // chase to root
+    detail::children_remove_edge<G>(e_global, root.m_children);
+    remove_edge(e_global, root.m_graph); // kick edge from root
 }
 
 // This is slow, but there may not be a good way to do it safely otherwise
@@ -691,7 +684,7 @@
       if (p(*ep.first)) {
         any_removed = true;
         remove_edge(*ep.first, g);
-        continue; /* Since iterators may be invalidated */
+        break; /* Since iterators may be invalidated */
       }
     }
     if (!any_removed) break;
Modified: branches/release/boost/graph/transitive_reduction.hpp
==============================================================================
--- branches/release/boost/graph/transitive_reduction.hpp	(original)
+++ branches/release/boost/graph/transitive_reduction.hpp	2011-03-02 19:29:41 EST (Wed, 02 Mar 2011)
@@ -99,7 +99,7 @@
         {
             //and run through all vertices in topological order
             typename std::vector<Vertex>::reverse_iterator
-                rit = topo_order.rbegin();
+                rit = topo_order.rbegin(),
                 rend = topo_order.rend();
             for(; rit != rend; ++rit ) {
                 //looking if they are successors of *it
Modified: branches/release/libs/graph/doc/subgraph.html
==============================================================================
--- branches/release/libs/graph/doc/subgraph.html	(original)
+++ branches/release/libs/graph/doc/subgraph.html	2011-03-02 19:29:41 EST (Wed, 02 Mar 2011)
@@ -76,9 +76,9 @@
 and subgraphs in Figure 1, so we will need a total of six vertices.
 
 <pre>
-typedef adjacency_list_traits<vecS, vecS, directedS> Traits;
-typedef subgraph< adjacency_list<vecS, vecS, directedS,
-  no_property, property<edge_index_t, int> > > Graph;
+typedef adjacency_list_traits< vecS, vecS, directedS > Traits;
+typedef subgraph< adjacency_list< vecS, vecS, directedS,
+  no_property, property< edge_index_t, int > > > Graph;
 
 const int N = 6;
 Graph G0(N);