История изменений
Исправление dimgel, (текущая версия) :
По твоей первой ссылке это есть, со static_assert(), и если мне от функтора нужно проверять только тип возвращаемого значения, наверное можно найти какие-нибудь type-traits чтобы избежать <class F, class...PP>
. Потому что эта дрянь даже такое не хочет: void f(std::function<R(auto...)>) {}
.
Но я по-прежнему не втыкаю, почему второй вариант в ТС с явным указанием f<P>
не работает, да ещё какую-то дикую сигнатуру function<R(P, PP)>
выводит.
Исходная версия dimgel, :
По твоей первой ссылке это есть, со static_assert(), и если мне от функтора нужно проверять только тип возвращаемого значения, наверное можно найти какие-нибудь type-traits чтобы избежать <class F, class...PP>
. Потому что эта дрянь даже такое не хочет: void f(std::function<R(auto...)>) {}
.
Но я по-прежнему не втыкаю, почему второй вариант в ТС с явным указанием f<P>
не работает, да ещё какую-то дикую сигнатуру function<P, PP>
выводит.