Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2001-04-09 09:25:36


> and Intel C++ 5.0 (stranger still)
>
> C:\PROJECTS\INCLUDE\boost/any_function.hpp(309) : error: non-integral
> operation not allowed in nontype template argument
> (count_used_args<T1, T2, T3, T4, T5, T6>::value
+

Update:

Changing this to

static const int args = count_used_args<T1, T2, T3, T4, T5, T6>::value;
BOOST_STATIC_CONSTANT(int, oneh = one_hundred_if_void_fake<R>::value);
typedef typename _get_function_obj_invoker<args + oneh>::

fixes the problem. (Likewise in get_function_invoker.)

This shows an annoying problem with BOOST_STATIC_CONSTANT:

BOOST_STATIC_CONSTANT(int, args = count_used_args<T1, T2, T3, T4, T5,
T6>::value)

doesn't work.

--
Peter Dimov
Multi Media Ltd.

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk