If a re-declaration has compatible types but not types which are token-for-token identical, it may not be clear to which declaration that re-declaration refers.
== Noncompliant Code Example
----
typedef int32_t INT;
INT i;
extern int32_t i; // Noncompliant
extern void f ( INT );
void f ( int32_t ); // Noncompliant
== Compliant Solution
extern INT i; // Compliant
void f ( INT ); // Compliant
== See
* MISRA {cpp}:2008, 3-9-1