Consider the following function:
void f(...);
And the following structure:
template <class T>
struct s;
template <class R, class...A>
struct s<R(A...)>
{
//...
};
How exactly does s<decltype(f)> get treated, considering its variadic argument type?