I would change the prototype and the definition to be:
Code:
void fnMenu(void)
The item in the declaration list:
Code:
void fnMenu();
just defines the return type but not the parameters. This was used in K&R C. I am not sure what the standard says about whether this is a "prototype" or not.