Static verification detects inconsistent object declarations in different program units, for example:
The following examples illustrate interprocedural analysis.
Example 1: Wrong type
File config1.c contains the following line:
31 int extraSpace , pad , height , width , rows , bot , top , trow ;
File dimbox.c contains the following line:
13 char **rows ;
Static verification issues the following message:
dimbox.c(13): error #12090: variable "rows" declared inconsistently (wrong type). See (file:config1.c line:31)
Example 2: Wrong number of arguments
File controlf.c contains function declaration in the following line:
controlf()
File uloop2.c contains the following line:
65 fds = controlf( 1 ) ;
Static verification issues the following message:
uloop2.c(65): error #12020: wrong number of arguments