From 08b525b49b80c72a6e178f82dd00c4f00f016a61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20Sch=C3=B6pflin?= Date: Thu, 26 Jun 2008 06:54:42 +0000 Subject: [PATCH] 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. [SVN r46707] --- .../boost/intrusive/detail/any_node_and_algorithms.hpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/include/boost/intrusive/detail/any_node_and_algorithms.hpp b/include/boost/intrusive/detail/any_node_and_algorithms.hpp index 6b75f57..9662138 100644 --- a/include/boost/intrusive/detail/any_node_and_algorithms.hpp +++ b/include/boost/intrusive/detail/any_node_and_algorithms.hpp @@ -269,6 +269,14 @@ class any_algorithms 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 @@ class any_algorithms //what algorithm they must use from unlink them from the container any_algorithms::swap_nodes_not_available_for_any_hooks(); } +#endif }; } //namespace intrusive