Analyzes the whole program, including global data and control flow. Reports unconditional errors that occur on some program execution paths.