|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r50189 - in trunk: boost/graph libs/graph/doc
From: asutton_at_[hidden]
Date: 2008-12-08 10:06:55
Author: asutton
Date: 2008-12-08 10:06:55 EST (Mon, 08 Dec 2008)
New Revision: 50189
URL: http://svn.boost.org/trac/boost/changeset/50189
Log:
Removing GCC check for hash_set/hash_map so we don't automatically break any
code. Added a section of workarounds to the documentation.
Text files modified:
trunk/boost/graph/adjacency_list.hpp | 9 +++------
trunk/libs/graph/doc/known_problems.html | 26 ++++++++++++++++++--------
2 files changed, 21 insertions(+), 14 deletions(-)
Modified: trunk/boost/graph/adjacency_list.hpp
==============================================================================
--- trunk/boost/graph/adjacency_list.hpp (original)
+++ trunk/boost/graph/adjacency_list.hpp 2008-12-08 10:06:55 EST (Mon, 08 Dec 2008)
@@ -17,12 +17,9 @@
#include <list>
#include <set>
-// Thef 4.3 series deprecates hash_set and hash_map.
-// TODO: Migrate this to Boost.Config.
-#if __GNUC__ >= 4 && __GNUC_MINOR__ >= 3
-# define BOOST_NO_HASH
-#endif
-
+// TODO: Deprecating this requires some cooperation from Boost.Config. It's not
+// a good idea to just refuse the inclusion because it could break otherwise
+// functioning code.
#if !defined BOOST_NO_HASH
# ifdef BOOST_HASH_SET_HEADER
# include BOOST_HASH_SET_HEADER
Modified: trunk/libs/graph/doc/known_problems.html
==============================================================================
--- trunk/libs/graph/doc/known_problems.html (original)
+++ trunk/libs/graph/doc/known_problems.html 2008-12-08 10:06:55 EST (Mon, 08 Dec 2008)
@@ -8,14 +8,17 @@
-->
<Head>
<Title>Known Problems</Title>
-<BODY BGCOLOR="#ffffff" LINK="#0000ee" TEXT="#000000" VLINK="#551a8b"
- ALINK="#ff0000">
-<IMG SRC="../../../boost.png"
- ALT="C++ Boost" width="277" height="86">
+<BODY BGCOLOR="#ffffff" LINK="#0000ee" TEXT="#000000" VLINK="#551a8b"
+ ALINK="#ff0000">
+<IMG SRC="../../../boost.png"
+ ALT="C++ Boost" width="277" height="86">
<BR Clear>
- <h1>Known Problems</h1>
+ <h1>Known Problems and Workarounds</h1>
+
+This is a list of known problems compiling the BGL for different compilers and
+versions.
<ol>
<li>The <code>subgraph</code> adaptor has several known problems:
@@ -23,7 +26,7 @@
<li>Each instance of subgraph has its own copy of internal
vertex and edge properties. Only at the root subgraph are the
properties valid. </li>
-
+
<li>Edge and vertex removal functions are unimplemented.</li>
<li>The graph is required to have vertex descriptors of integral
@@ -38,9 +41,16 @@
<li>Using a GraphProperty with adjacency_list may cause a VC++ internal compiler error.</li>
<li>Using get(property, graph, edge) may cause a VC++ internal compiler error.</li>
- <li>"using boost::tie;" may cause VC++ internal compiler error.
+ <li>"using boost::tie;" may cause VC++ internal compiler error.
</ol>
+<h2>Workarounds</h2>
+<p>
+<b>Compiler Warnings on <code>hash_set</code> and <code>hash_map</code></b>. Versions of
+GCC >= 4.3 deprecate these headers and data structures and will emit warnings when
+compiling the BGL. To suppress these warnings <em>and the hash-based storage selectors</em>
+define the <code>BOOST_NO_HASH</code> prior to including any Boost.Graph headers.
+</p>
<br>
<HR>
@@ -57,4 +67,4 @@
</TD></TR></TABLE>
</BODY>
-</HTML>
+</HTML>
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