Document Type

Technical Report

Publication Date

Fall 9-1-1974


Data flow analysis has already been applied to problems in code optimization and hardware design. It now appears that data flow analysis can also be a useful tool in validation and verification of software. By examining the data flow in a program much can be learned about its quality and correctness, for the patterns of data accesses and data assignments within a program is often diagnostic of sloppy or incorrect code. In an earlier paper by the authors, an algorithm for analyzing data flows in programs was presented. The problem of applying that algorithm to ANSI Fortran programs are described here. It is shown that Fortran programming errors and abuses such as the use of uninitialized variables, the generation of unneeded values, improper subprogram invocations and the creation of illegal side effects are all examples of data flow anomalies and can all be detected through the use of a system based upon this algorithm. The implementation of such a system, called DAVE, has been carried out and is described here. Results of applying this analytic system are presented.