#include <iostream>
using namespace std;
void foo(float) {cout << "float";}
void foo(double) {cout << "double";}
void foo(long double) {cout << "long double";}
int main() {
foo(5)
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBmb28oZmxvYXQpIHtjb3V0IDw8ICJmbG9hdCI7fQp2b2lkIGZvbyhkb3VibGUpIHtjb3V0IDw8ICJkb3VibGUiO30Kdm9pZCBmb28obG9uZyBkb3VibGUpIHtjb3V0IDw8ICJsb25nIGRvdWJsZSI7fQoKaW50IG1haW4oKSB7Cglmb28oNSkKCXJldHVybiAwOwp9
prog.cpp: In function ‘int main()’:
prog.cpp:9:7: error: call of overloaded ‘foo(int)’ is ambiguous
foo(5)
^
prog.cpp:9:7: note: candidates are:
prog.cpp:4:6: note: void foo(float)
void foo(float) {cout << "float";}
^
prog.cpp:5:6: note: void foo(double)
void foo(double) {cout << "double";}
^
prog.cpp:6:6: note: void foo(long double)
void foo(long double) {cout << "long double";}
^
prog.cpp:10:2: error: expected ‘;’ before ‘return’
return 0;
^