its a function declaration, not a definition, so it is fine.
and its also not a function call as you assumed.
Using it inside the function restricts its visibility to that scope.
It is similar to using a 'using' declaration inside a function. It avoids cluttering up the global namespace.
The function referenced is in the global scope, however it may not be visible ( through a missing header inclusion or other ). But multiple declarations are fine as long as they match.
Thanks for your reply, I didn't realized that is possible to define a function inside another function., in this case it was a mistake, I forgot to delete the word "void" in order to call the function not to define it.