If you declare both char f() and float f(), the compiler gives you an error message, since calling simply f() would be ambiguous.