
"David Abrahams" <dave@boost-consulting.com> wrote:
I don't buy the ideas that involve using function types as in
select_overload<int(int)>
because it requires specifying the return type, which is irrelevant.
Current pratice is to speficy the entire signature, including the (irrelevant) return type and the (redundant) class name. Arturo's suggestion gets rid of the return type and class name, but introduces the (irrelevant) arity. Using function types eliminates the class name but keeps the return type. So neither is quite right, althought I tend to prefer using function types. The essential information that needs to be supplied is just a typelist. So one could use whatever_cast< mpl::list<char> >(&P::f) but this would not make the significance of the typelist clear. So it might be natural to replace this with whatever_cast< arg_types<char> >(&P::f) or whatever_cast< arg_types(char) >(&P::f) Jonathan