]> AND Private Git Repository - canny.git/blob - stc/exp/ml_stc_linux_make_v1.0/include/boost/preprocessor/debug/assert.hpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
66e333e2a8b5e1038fd3be17737df9d85dc52a2f
[canny.git] / stc / exp / ml_stc_linux_make_v1.0 / include / boost / preprocessor / debug / assert.hpp
1 # /* Copyright (C) 2001\r
2 #  * Housemarque Oy\r
3 #  * http://www.housemarque.com\r
4 #  *\r
5 #  * Distributed under the Boost Software License, Version 1.0. (See\r
6 #  * accompanying file LICENSE_1_0.txt or copy at\r
7 #  * http://www.boost.org/LICENSE_1_0.txt)\r
8 #  */\r
9 #\r
10 # /* Revised by Paul Mensonides (2002) */\r
11 #\r
12 # /* See http://www.boost.org for most recent version. */\r
13 #\r
14 # ifndef BOOST_PREPROCESSOR_DEBUG_ASSERT_HPP\r
15 # define BOOST_PREPROCESSOR_DEBUG_ASSERT_HPP\r
16 #\r
17 # include <boost/preprocessor/config/config.hpp>\r
18 # include <boost/preprocessor/control/expr_iif.hpp>\r
19 # include <boost/preprocessor/control/iif.hpp>\r
20 # include <boost/preprocessor/logical/not.hpp>\r
21 # include <boost/preprocessor/tuple/eat.hpp>\r
22 #\r
23 # /* BOOST_PP_ASSERT */\r
24 #\r
25 # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()\r
26 #    define BOOST_PP_ASSERT BOOST_PP_ASSERT_D\r
27 # else\r
28 #    define BOOST_PP_ASSERT(cond) BOOST_PP_ASSERT_D(cond)\r
29 # endif\r
30 #\r
31 # define BOOST_PP_ASSERT_D(cond) BOOST_PP_IIF(BOOST_PP_NOT(cond), BOOST_PP_ASSERT_ERROR, BOOST_PP_TUPLE_EAT_1)(...)\r
32 # define BOOST_PP_ASSERT_ERROR(x, y, z)\r
33 #\r
34 # /* BOOST_PP_ASSERT_MSG */\r
35 #\r
36 # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()\r
37 #    define BOOST_PP_ASSERT_MSG BOOST_PP_ASSERT_MSG_D\r
38 # else\r
39 #    define BOOST_PP_ASSERT_MSG(cond, msg) BOOST_PP_ASSERT_MSG_D(cond, msg)\r
40 # endif\r
41 #\r
42 # define BOOST_PP_ASSERT_MSG_D(cond, msg) BOOST_PP_EXPR_IIF(BOOST_PP_NOT(cond), msg)\r
43 #\r
44 # endif\r