|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r55265 - trunk/boost/graph
From: jewillco_at_[hidden]
Date: 2009-07-30 14:44:46
Author: jewillco
Date: 2009-07-29 12:33:59 EDT (Wed, 29 Jul 2009)
New Revision: 55265
URL: http://svn.boost.org/trac/boost/changeset/55265
Log:
Changing to explicit property specializations for vertex_index_t and edge_index_t to try to work around VC++ bugs
Text files modified:
trunk/boost/graph/compressed_sparse_row_graph.hpp | 22 ++++++++++++++++++++++
1 files changed, 22 insertions(+), 0 deletions(-)
Modified: trunk/boost/graph/compressed_sparse_row_graph.hpp
==============================================================================
--- trunk/boost/graph/compressed_sparse_row_graph.hpp (original)
+++ trunk/boost/graph/compressed_sparse_row_graph.hpp 2009-07-29 12:33:59 EDT (Wed, 29 Jul 2009)
@@ -1731,6 +1731,27 @@
return key.idx;
}
+template<BOOST_CSR_GRAPH_TEMPLATE_PARMS>
+struct property_map<BOOST_CSR_GRAPH_TYPE, vertex_index_t>
+{
+ typedef identity_property_map type;
+ typedef type const_type;
+};
+
+template<BOOST_CSR_GRAPH_TEMPLATE_PARMS>
+struct property_map<BOOST_CSR_GRAPH_TYPE, edge_index_t>
+{
+private:
+ typedef typename graph_traits<BOOST_CSR_GRAPH_TYPE>::edge_descriptor
+ edge_descriptor;
+ typedef csr_edge_index_map<EdgeIndex, edge_descriptor> edge_index_type;
+
+public:
+ typedef edge_index_type type;
+ typedef type const_type;
+};
+
+#if 0
// Doing the right thing here (by unifying with vertex_index_t and
// edge_index_t) breaks GCC.
template<BOOST_CSR_GRAPH_TEMPLATE_PARMS, typename Tag>
@@ -1754,6 +1775,7 @@
typedef type const_type;
};
+#endif
template<BOOST_CSR_GRAPH_TEMPLATE_PARMS>
inline identity_property_map
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk