
3 Feb
2009
3 Feb
'09
10:02 a.m.
2009/2/2 Naik, Roshan <roshan.naik@hp.com>
Seems like the following specialization of impl<> works:
template <typename r>
struct impl<true, r(void)>
{
static const bool value =
sizeof(
return_value_check<type, r>::deduce( (
(((derived_type*)0)->operator()(), details::void_exp_result<type>())
) )
) == sizeof(yes);
};
I don't think it does. Try this test: struct foo { void operator()() const {} }; int main() { is_call_possible<foo, void()>::value; } Roman Perepelitsa.