Defining more than one function having the same name is function overloading. In order to be able to differentiate these functions, their parameters must be different.
The following code has multiple overloads of the info() function, each taking a different type of parameter: