An unfortunate characteristic of current static analysis algorithms is their apparent inability to distinguish between executable and unexecutable program paths. The definitive determination of executability of a given path has long been known to be unachievable. This paper presents some heuristics for detecting certain classes of unexecutabl paths and preliminary findings tending to indicate that the heuristics can be expected to be rather effective. The heuristics are based upon the application of existing static data flow analysis algorithms and hence offer hope of coexisting with and guiding diagnostic and optimization scans which also use data flow analysis.
Osterweil, Leon J., "Data Flow Analysis ; CU-CS-110-77" (1977). Computer Science Technical Reports. 108.