According to Section section 6.2.7 of C11the C Standard [ISO/IEC 9899:2011],
All declarations that refer to the same object or function shall have compatible type; otherwise, the behavior is undefined.
(See also undefined behavior 15 of Annex J.)
Further, according to 6section 6.4.2.1,
Any identifiers that differ in a significant character are different identifiers. If two identifiers differ only in nonsignificant characters, the behavior is undefined.
...
ISO/IEC TR 24772 "AJN Choice of filenames and other external identifiers" and "YOW Identifier name reuse"
MISRA Rules 5.1 and 8.9
...
...