fork download
  1. #include <iostream>
  2.  
  3. //function1
  4. template<typename T1, typename T2>
  5. T1 call(T2 value)
  6. {
  7. //function with return type
  8. std::cout << "function1\n";
  9. return T1();
  10. }
  11.  
  12. //function2
  13. template<typename T1, typename T2>
  14. void call<void,T2>()
  15. {
  16. //function without return type
  17. std::cout << "function2\n";
  18. }
  19.  
  20. int main() {
  21. call<int>(19); //call function1
  22. call<void>(20); //call function2
  23. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp:14:20: error: function template partial specialization ‘call<void, T2>’ is not allowed
 void call<void,T2>()
                    ^
stdout
Standard output is empty