1
// Copyright David Abrahams 2006. Distributed under the Boost
2
// Software License, Version 1.0. (See accompanying
3
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
4
#ifndef BOOST_CONCEPT_DETAIL_BORLAND_DWA2006429_HPP
5
# define BOOST_CONCEPT_DETAIL_BORLAND_DWA2006429_HPP
7
# include <boost/preprocessor/cat.hpp>
8
# include <boost/concept/detail/backward_compatibility.hpp>
10
namespace boost { namespace concepts {
12
template <class ModelFnPtr>
15
template <class Model>
16
struct require<void(*)(Model)>
18
enum { instantiate = sizeof((((Model*)0)->~Model()), 3) };
21
# define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr ) \
24
BOOST_PP_CAT(boost_concept_check,__LINE__) = \
25
boost::concepts::require<ModelFnPtr>::instantiate \
28
}} // namespace boost::concept
30
#endif // BOOST_CONCEPT_DETAIL_BORLAND_DWA2006429_HPP