prog.cpp: In function ‘int main()’:
prog.cpp:19:38: error: ‘double(double)’ is not a valid type for a template non-type parameter
test_type<decltype(add_one), add_one> test;
^
prog.cpp:19:44: error: invalid type in declaration before ‘;’ token
test_type<decltype(add_one), add_one> test;
^
prog.cpp:21:24: error: ‘test’ cannot be used as a function
std::cout << test(10.0) << "\n";
^