fork download
  1. class Foo
  2. {
  3. public:
  4. template<typename R, typename T, typename S>
  5. static R add(T x, S y) { return x + y; }
  6. };
  7.  
  8. template<typename Foo, typename T>
  9. inline T add(T x, double y)
  10. {
  11. return Foo::add<T, T, double>(x, y);
  12. }
  13.  
  14. int main()
  15. {
  16. Foo::add<double>(3.0, 4.0);
  17. return 0;
  18. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp: In function ‘T add(T, double)’:
prog.cpp:11:19: error: expected primary-expression before ‘,’ token
  return Foo::add<T, T, double>(x, y);
                   ^
prog.cpp:11:22: error: expected primary-expression before ‘,’ token
  return Foo::add<T, T, double>(x, y);
                      ^
prog.cpp:11:24: error: expected primary-expression before ‘double’
  return Foo::add<T, T, double>(x, y);
                        ^~~~~~
prog.cpp:11:23: error: expected ‘;’ before ‘double’
  return Foo::add<T, T, double>(x, y);
                       ^~~~~~~
                       ;
prog.cpp:11:30: error: expected unqualified-id before ‘>’ token
  return Foo::add<T, T, double>(x, y);
                              ^
stdout
Standard output is empty