MISRA Discussion Forums

Full Version: Is 16.4 violated if 16.3 is?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Given the following code:
void f(int);
void f(int x){}
Does this code violate rule #16.4, identifiers used in the declaration and definition of a function shall be identical? While the lack of a parameter name in the prototype violates #16.3, I am not sure if violating #16.4 is possible in that case.
No is doesn't really make sense to flag a violation of both rules in this case. Therefore, to violate Rule 16.4, both identifiers need to be present, but different.