Boost logo

Boost-Commit :

From: markus.schoepflin_at_[hidden]
Date: 2008-06-26 02:54:42


Author: schoepflin
Date: 2008-06-26 02:54:42 EDT (Thu, 26 Jun 2008)
New Revision: 46707
URL: http://svn.boost.org/trac/boost/changeset/46707

Log:
For compilers checking the full source code at compile time, regardless of whether the code is instantiated or not, turn the expected compile time error into a link time error.
Text files modified:
   trunk/boost/intrusive/detail/any_node_and_algorithms.hpp | 9 +++++++++
   1 files changed, 9 insertions(+), 0 deletions(-)

Modified: trunk/boost/intrusive/detail/any_node_and_algorithms.hpp
==============================================================================
--- trunk/boost/intrusive/detail/any_node_and_algorithms.hpp (original)
+++ trunk/boost/intrusive/detail/any_node_and_algorithms.hpp 2008-06-26 02:54:42 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