fork download
  1. template <typename I>
  2. class A {
  3. public:
  4. void f (I* i) {}
  5. };
  6.  
  7. class B {};
  8.  
  9. class C {};
  10.  
  11. class D : public A<B>, public A<C> {};
  12.  
  13. int main() {
  14. D d;
  15. B* p = 0;
  16. d.f (p);
  17. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp: In function ‘int main()’:
prog.cpp:16: error: request for member ‘f’ is ambiguous
prog.cpp:4: error: candidates are: void A<I>::f(I*) [with I = C]
prog.cpp:4: error:                 void A<I>::f(I*) [with I = B]
stdout
Standard output is empty