3 // Copyright (c) 2006-2007 Matias Capeletto
5 // Distributed under the Boost Software License, Version 1.0.
6 // (See accompanying file LICENSE_1_0.txt or copy at
7 // http://www.boost.org/LICENSE_1_0.txt)
9 /// \file detail/debug/static_error.hpp
10 /// \brief Formatted compile time error
12 #ifndef BOOST_BIMAP_DETAIL_DEBUG_STATIC_ERROR_HPP
13 #define BOOST_BIMAP_DETAIL_DEBUG_STATIC_ERROR_HPP
15 #if defined(_MSC_VER) && (_MSC_VER>=1200)
19 #include <boost/config.hpp>
21 #include <boost/mpl/assert.hpp>
22 #include <boost/preprocessor/cat.hpp>
24 // Easier way to call BOOST_MPL_ASSERT_MSG in class scope to generate
26 /*===========================================================================*/
27 #define BOOST_BIMAP_STATIC_ERROR(MESSAGE,VARIABLES) \
28 struct BOOST_PP_CAT(BIMAP_STATIC_ERROR__,MESSAGE) {}; \
29 BOOST_MPL_ASSERT_MSG(false, \
30 BOOST_PP_CAT(BIMAP_STATIC_ERROR__,MESSAGE), \
32 /*===========================================================================*/
36 #endif // BOOST_BIMAP_DETAIL_DEBUG_STATIC_ERROR_HPP