 
                            ...
DCL02-C implicitly assumes 'Global Scope' which can be confused with 'Scope within the same file'. Though it may not generate any errors, but there may be a possible violation of the rule as in the example below. Note the example below does not violate DCL32-C.
| Code Block | ||
|---|---|---|
| 
 | ||
| In file foo.h :: int id_O; // (captial letter O) In file bar.h :: int id_0; // (numeric letter zero) | 
If a file foobar.h includes both foo.h and bar. h and another file foobar.c that includes foobar.h uses both id0 and idO, it is a violation of DCL02-C.
...
In a compliant solution, use of visully similar identifiers should be avoided in the same project scope.
| Code Block | ||
|---|---|---|
| 
 | ||
| In file foo.h :: int id_a; | 
...
| In file bar.h :: | 
...
| Code Block | ||
|---|---|---|
| 
 | ||
| extern int *a_global_symbol_definition_lookup_table; extern int *b_global_symbol_definition_lookup_tableid_b; | 
Risk Assessment
Failing to use visually distinct identifiers can result in referencing the wrong object or function, causing unintended program behavior.
...