Function overloading means that there are several methods with the same name.
Now, to allow the correct overloaded method, the compiler looks for the method name and arguments, but NO when the value is returned. That means if you have
int round(float something) { ... } float round(float something) { ... }
Then the compiler will not be able to distinguish them and find out which one you want to call at the dial-peer. So in your case, this means that there is another round method that accepts a float .
source share