fixing stuff
[dyninst.git] / dynutil / h / dyn_detail / boost / type_traits / detail / template_arity_spec.hpp
1
2 // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION
3
4 // Copyright Aleksey Gurtovoy 2002-2004
5 //
6 // Distributed under the Boost Software License, Version 1.0. 
7 // (See accompanying file LICENSE_1_0.txt or copy at 
8 // http://www.boost.org/LICENSE_1_0.txt)
9
10 #include <dyn_detail/boost/mpl/int.hpp>
11 #include <dyn_detail/boost/mpl/aux_/template_arity_fwd.hpp>
12 #include <dyn_detail/boost/mpl/aux_/preprocessor/params.hpp>
13 #include <dyn_detail/boost/mpl/aux_/config/lambda.hpp>
14 #include <dyn_detail/boost/mpl/aux_/config/overload_resolution.hpp>
15
16 #if defined(DYN_DETAIL_BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT) \
17     && defined(DYN_DETAIL_BOOST_MPL_CFG_BROKEN_OVERLOAD_RESOLUTION)
18 #   define DYN_DETAIL_BOOST_TT_AUX_TEMPLATE_ARITY_SPEC(i, name) \
19 namespace mpl { namespace aux { \
20 template< DYN_DETAIL_BOOST_MPL_PP_PARAMS(i, typename T) > \
21 struct template_arity< \
22           name< DYN_DETAIL_BOOST_MPL_PP_PARAMS(i, T) > \
23         > \
24     : int_<i> \
25 { \
26 }; \
27 }} \
28 /**/
29 #else
30 #   define DYN_DETAIL_BOOST_TT_AUX_TEMPLATE_ARITY_SPEC(i, name) /**/
31 #endif