Jd. Choi et J. Ferrante, STATIC SLICING IN THE PRESENCE OF GOTO STATEMENTS, ACM transactions on programming languages and systems, 16(4), 1994, pp. 1097-1113
A static program slice is an extract of a program which can help our u
nderstanding of the behavior of the program; it has been proposed for
use in debugging, optimization, parallelization, and integration of pr
ograms. This article considers two types of static slices: executable
and nonexecutable. Efficient and well-founded methods have been develo
ped to construct executable slices for programs without goto statement
s; it would be tempting to assume these methods would apply as well in
programs with arbitrary goto statements. We show why previous methods
do not work in this more general setting, and describe our solutions
that correctly and efficiently compute executable slices for programs
even with arbitrary goto statements. Our conclusion is that goto state
ments can be accommodated in generating executable static slices.