function_type expects mpl sequense.
As far as I understand it, you need to apply result_type to your F and parameter_types to F. From there you can model your function. Or am I wrong?
template<class F>
some_return_type make_function(F f)
{
typedef typename result_type<F>::type result_type;
typedef typename parameter_types<F>::type mpl_seq_params;
//insert the result type to the mpl_seq_params => fct_sig;
...
}
But I am not sure if it works, this is my assumption only.
Regards,
Ovanes