Well-formedness addresses the following issues:
-
No void array types
-
No two global variable declarations have the same name
-
No two functions declarations have the same name
-
All parameter and variable declarations have non-void types
-
No two labels in the same compound statement have the same name
-
Every label used in a compound statement is declared in the same compound statement