Код
struct MyClass
{
int f();
};
template<int (MyClass::*func)()>
int g()
{
MyClass t;
return (t.*func)();
}
int main()
{
return g<&MyClass::f>();
}
{
int f();
};
template<int (MyClass::*func)()>
int g()
{
MyClass t;
return (t.*func)();
}
int main()
{
return g<&MyClass::f>();
}
вылезает ошибка
Tool internal Error
Internal error: [coreUtil/general]: unexpected non-type template arg kind
Никто не сталкивался? Вроде в референсе на компилятор не сказано, что он этого не поддерживает...
Причем указатели на обычные функции в качестве аргументов шаблона вполне проходят.