21-09-2017, 09:36 AM
The aim of the rule is to prevent any user confusion that might arise.
The user calling "foo" in tunit2.c might have forgotten that there is a function with that name defined in tunit2.c and assume that they are calling the function declared in tunit1.c, even though the other function is defined as "static".
The user calling "foo" in tunit2.c might have forgotten that there is a function with that name defined in tunit2.c and assume that they are calling the function declared in tunit1.c, even though the other function is defined as "static".
Posted by and on behalf of the MISRA C Working Group