Global program checking (GPC), invoked by the -Xlistx option, does the following:
Enforces type-checking rules of Fortran more stringently than usual, especially between separately compiled routines
Enforces some portability restrictions needed to move programs between different machines or operating systems
Detects legal constructions that nevertheless might be suboptimal or error-prone
Reveals other potential bugs and obscurities
In particular, global checking reports problems such as:
Interface problems
Conflicts in number and type of dummy and actual arguments
Wrong types of function values
Possible conflicts due to data type mismatches in common blocks between different subprograms
Usage problems
Function used as a subroutine or subroutine used as a function
Declared but unused functions, subroutines, variables, and labels
Referenced but not declared functions, subroutines, variables, and labels
Usage of unset variables
Unreachable statements
Implicit type variables
Inconsistency of the named common block lengths, names, and layouts