|
Boost-Commit : |
From: igaztanaga_at_[hidden]
Date: 2008-06-26 12:00:22
Author: igaztanaga
Date: 2008-06-26 12:00:21 EDT (Thu, 26 Jun 2008)
New Revision: 46720
URL: http://svn.boost.org/trac/boost/changeset/46720
Log:
Fix detection of improper use of any nodes for EDG.
Text files modified:
branches/release/boost/intrusive/detail/any_node_and_algorithms.hpp | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
Modified: branches/release/boost/intrusive/detail/any_node_and_algorithms.hpp
==============================================================================
--- branches/release/boost/intrusive/detail/any_node_and_algorithms.hpp (original)
+++ branches/release/boost/intrusive/detail/any_node_and_algorithms.hpp 2008-06-26 12:00:21 EDT (Thu, 26 Jun 2008)
@@ -269,6 +269,14 @@
static bool unique(const_node_ptr node)
{ return 0 == node->node_ptr_1; }
+
+#if defined(__EDG__) && defined(__STD_STRICT_ANSI)
+ // For compilers checking the full source code at compile time, regardless
+ // of whether the code is instantiated or not, we turn the compile error
+ // below into a link error.
+ static void unlink(node_ptr);
+ static void swap_nodes(node_ptr l, node_ptr r);
+#else
static void unlink(node_ptr)
{
//Auto-unlink hooks and unlink() call for safe hooks are not
@@ -282,6 +290,7 @@
//what algorithm they must use from unlink them from the container
any_algorithms<VoidPointer>::swap_nodes_not_available_for_any_hooks();
}
+#endif
};
} //namespace intrusive
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